PDO probleme avec la methode query
| Auteurs | Messages |
|---|---|
| Page : 1 | |
| # Posté le 18/03/2009 à 19h42 | |
Rang: membre |
Salut, j'ai décidé de me mettre a bosser avec ma bdd mysql en utilisant PDO car il faut bien se mettre au gout du jour. Mais y'a un truc que je pige pas si je fais: ($this->dbh et l'instance de la classe PDO) Code: $query="SELECT id_member FROM table_members WHERE login='".$login."'"; $sth=$this->dbh->query($query); $result=$sth->fetchAll(); $num_rows=count($result); if($num_rows==0) { //..... puis plus loin: ....// puis un 2°(plus loin dans le code): Code: ...// $query="SELECT id_member FROM table_members WHERE login='".$login."' AND password='".sha1($password)."'"; $sth=$this->dbh->query($query); $result=$sth->fetchAll(); $num_rows=count($result); if($num_rows==0) { //... Le 2° num rows tombe toujours a zéro même quand il y a un résultat. Par contre si je transforme ma 2° portion de code en: Code: $query="SELECT id_member FROM table_members WHERE login='".$login."' AND password='".sha1($password)."'"; $sth_2=$this->dbh->query($query); $result=$sth_2->fetchAll(); $num_rows=count($result); if($num_rows==0) { La ça fonctionne. D'ailleurs j'avais essayé en désespoir de cause parce que je ne comprenais pas d'où venait le bug ... alors si je change $sth et qu'à la place je prend un nouvel objet $sth_2 ça marche. C'est bien mais j'aimerais avoir une explication rationnelle, faut-il 'libérer' $sth avant de le réutiliser? merci Tchao |
| # Posté le 12/05/2009 à 15h51 | |
Rang: membre |
Je reviens sur ce vieux topic, car en fait depuis, j'ai trouvé la solution. Avant de faire une requête il faut mettre: Code: $sth=null; Tchaio |
| # Posté le 12/05/2009 à 17h08 | |
Rang: administrateur |
Bien joué. ;) Ma page préférée? Le dossier référencement qui présente une multitude d'informations utiles.
Sinon hors internet je suis développeur web PHP. |
| Page : 1 | |
