Erreur d'exécution d'une boucle sur mysql_fetch_row

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Erreur d'exécution d'une boucle sur mysql_fetch_row

Re: Erreur d'exécution d'une boucle sur mysql_fetch_row

par Mazarini » 13 juil. 2012, 11:05

Bonjour,

Ca arrive lorsque la requête rencontre un problème lors de l'exécution (non connecté, base inconnue, erreur sql...). Voir mysql_error() pour savoir quel problème.

Re: Erreur d'exécution d'une boucle sur mysql_fetch_row

par BlueDream » 13 juil. 2012, 10:54

Par contre là il me fait mysql_fetch_row() expects parameter 1 to be resource, boolean given in

Re: Erreur d'exécution d'une boucle sur mysql_fetch_row

par BlueDream » 13 juil. 2012, 10:52

Oui je viens de m'en apercevoir, je l'ai modifié et ça marche merci.

Re: Erreur d'exécution d'une boucle sur mysql_fetch_row

par xTG » 13 juil. 2012, 10:36

Le problème c'est qu'à chaque itération tu révalue la condition du while et donc tu refais un mysql_query().
Donc boucle infinie car tu traites toujours que le premier résultat. ;)

Erreur d'exécution d'une boucle sur mysql_fetch_row

par BlueDream » 13 juil. 2012, 10:22

J'ai implémenté une fonction qui me retourne le résultat d'une requête voici mon code :

Code : Tout sélectionner

function ShowListFields($table) { mysql_select_db($this->database, $this->dbp); $fields = array(); while ($row = mysql_fetch_row(mysql_query("SHOW COLUMNS FROM {$table}", $this->dbp))) { $fields[] = array( 'name' => $row[0], 'type' => $row[1], 'null' => $row[2], 'key' => $row[3], 'default' => $row[4], 'extra' => $row[5] ); } return $fields; }
Alors mon problème c'est cette erreur fatale "Erreur maximum execution time of 30 seconds exceeded" probablement à cause d'une boucle infinie, ce qui est étrange c'est que ça fonctionnait très bien et tout à coup ça ne marchait plus en me générant cette erreur j'ai essayé en ajoutant set_time_limit(0); à chaque itération et pour le coup la page met un temps infini pour se charger. Heeeeeeeelp please !!