PHP: MySQL server has gone away

Je sais que cette question a été posée de nombreuses fois, mais j'ai tout essayé.

J'ai un script PHP qui parcourt des milliers d'images, effectue le redimensionnement si nécessaire, puis insère dans la base de données.

Je reçois ce message d'erreur:

Warning: mysql_query() [function.mysql-query]: MySQL server has gone
loin dans C:\Utilities\server\htdocs\newGen\index.php sur la ligne 105

Warning: mysql_query() [function.mysql-query]: Erreur de lecture du résultat
de l'ensemble de la tête dans la C:\Utilities\server\htdocs\newGen\index.php sur la ligne
105

Je suis en utilisant Xampplite et si certaines parties de la php.ini est manquant que d'autres ont utilisé pour résoudre le problème parce qu'ils ne sont pas à l'aide de la version lite.

Je suis certain que le problème n'est pas de délais d'attente. Alors que le script sera exécuté pendant plusieurs minutes, il saute au-dessus des images qui ont déjà été traitées et donc rapidement, je reçois le message d'erreur dans un délai d'environ 10 secondes. Peut-être que cela a quelque chose à voir avec max la taille de la table? Je ne peux pas trouver quelque chose dans mon php.ini qui contrôle ce.

Toute aide est grandement appréciée, j'ai été en passant à cela pendant des heures maintenant.

EDIT:

Voici le code à l'105 marque, c'est la requête:

        //Add tNail and image to db
        mysql_query("INSERT INTO gallery values('','$hash','$thumbBlob','$imageBlob','$type','','0','0.0')");
    // $q->execute();
        print "Successfully processed $fileName<br>";

Comme vous pouvez le voir par les commentaires que j'ai essayé de PDO avec cela et j'ai obtenu le même message d'erreur, bêtement, je pensais revenir à mysql_ commandes en aide.

Si elle est d'aucun secours, le script se plaint à la même image à chaque fois, mais à chaque image n'est jamais que quelques dizaines de kilo-octets et quelques centaines tout au plus.

  • Nous montrer le code autour de la ligne 105?
  • Blob Blob Blob -> données de grande taille, probablement -> peut-être au-dessus de la taille d'un paquet?
  • S'il vous plaît, n'utilisez pas mysql_* fonctions pour le nouveau code. Il n'est plus maintenu et que la communauté a commencé la dépréciation du processus. Voir le boîte rouge? Au lieu de cela, vous devriez en apprendre davantage sur les instructions préparées soit PDO ou MySQLi. Si vous ne pouvez pas décider, cet article l'aider à choisir. Si vous tenez à le savoir, ici est la bonne AOP tutoriel.
  • C'est ça le truc, je ne trouve pas de paquet taille de n'importe où dans mon php.ini :/ je suis en utilisant xampplite
  • La vérité, j'ai déjà essayé de PDO. Je suis retourné à mysql_ dans le cas où il fixe la question, à laquelle il n'a pas. Dès que c'est trié, je vais revenir à l'AOP.
InformationsquelleAutor Lee | 2012-07-20