Essaye
après ton $dbh->query("...");
Code : Sélectionner tout - Visualiser dans une fenêtre à part print_r($sth->errorInfo());
normalement il doit te retourner l'erreur qui est produite.
Essaye
après ton $dbh->query("...");
Code : Sélectionner tout - Visualiser dans une fenêtre à part print_r($sth->errorInfo());
normalement il doit te retourner l'erreur qui est produite.








Ca marche pas!!!
Je vais encore chercher
Merci de ton aide
De quoi qui ne marche pas ? il ne t'affiche rien ? il ne trouve pas la fonction ?








si je le met juste apres la requete j obtient:
Fatal error: Call to a member function errerInfo() on a non-object
et si je le met apres j'ai
Fatal error: Call to a member function execute() on a non-object
C'est que la méthode query retourne FALSE et non un objet PDOStatement !
Si $field_name et $relation_fields ne sont pas des variables PHP alors échappez le caractère dollar ou changez votre délimiteur de chaîne pour des single quotes. Faites-vous avant celle-ci une requête qui elle fonctionne et retourne un résultat ?








J'ai enleve le caractere $ puis rdb$.
J'obtient toujours une erreur non object; Cela signifi que la requete est mal formulée pour mon php!!!???
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 $stmt = $dbh->prepare("SELECT field_name AS CHAMP FROM relation_fields WHERE relation_name='LOT'"); $stmt->execute(); $row = $stmt->fetchAll(); print_r($row);
Quelle est la redaction correcte de ma requete???
Merci
Envoyé par pit2121
Envoyé par http://fr.php.net/manual/fr/function.PDO-prepare.php
N'utilisant pas ce SGBD, je suis incapable de vous répondre ... Il vous faudra éventuellement poser cette question dans le forum adéquat.Envoyé par pit2121
Par experience, moi je te conseillerais d'essayer ca :
Ce qui est logique puisque sinon $fieldname sera interpreté comme variable PHP et celle-ci n'existant probablement pas, il executera
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 $sth = $dbh->query("SELECT rdb\$field_name AS CHAMP FROM rdb\$relation_fields WHERE rdb\$relation_name='LOT'"); echo "Champ : "; echo "<select name=champ>"; foreach($sth AS $row) { echo ('<option>'.$row['CHAMP'].'</option>'); } echo "</select>"; echo "<p>";Et evidemment, ca a peu de chances de marcher!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT rdb AS CHAMP FROM rdb WHERE rdb='LOT'
L'autre solution est d'ecrire tes requetes sous cette forme-la (simple quotes ', de maniere a ce que tes variables PHP ne soient pas interpretées) :
Maintenant, je n'ai jamais essayé PDO (je m'y mets, là ^_^) et il y a peut-être une autre erreur lié à cette librairie...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 $sth = $dbh->query('SELECT rdb$field_name AS CHAMP FROM rdb$relation_fields WHERE rdb$relation_name=\"LOT\"'); echo "Champ : "; echo "<select name=champ>"; foreach($sth AS $row) { echo ('<option>'.$row['CHAMP'].'</option>'); } echo "</select>"; echo "<p>";
En esperant avoir apporté un debut de solution
Partager