|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité régulier
![]() Jean Philipe Inscription : avril 2009 Messages : 23 ![]() |
Bonjour,
J'essaie de faire un site web en PHP POO, et j'utilise la PDO pour accéder ma basse de données or j'ai quelques soucis lorsque je tente d'exécuter une requête. Voici mon code Code :
Pouvez m'expliquer ce que je fais de travers, merci par avance. Cordialement P. |
||
|
|
00
|
|
|
#2 | |
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
$this->connection->errorInfo() renvoie un tableau, pas une chaîne (cf doc) d'où le "Array" :
Citation:
(PS : force est un mot-clé réservé, sans backticks, ce sera erreur de syntaxe) |
|
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Jean Philipe Inscription : avril 2009 Messages : 23 ![]() |
Merci pour cette réponse rapide. En effet, le "array" vient bien de là.
Par contre pourquoi la requête échoue t-elle, alors qu'elle est bien exprimée et fonctionne si on l'exécute en dehors de la classe (par exemple dans la console ou en php directement sans passé par la poo). edit : J'ai bien mis le backticks pour l'attribut "force" et pourtant j'ai une erreur |
|
|
00
|
|
|
#4 |
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Vous le saurez quand vous mettrez en place une gestion d'erreur fonctionnelle (or die (print_r($this->connection->errorInfo()), TRUE);) ... Une erreur ? Quelle erreur ?
(Le "or die" sur l'instanciation de l'objet PDO ne sert pas à grand chose puisqu'une exception est levée s'il échoue) |
|
|
00
|
|
|
#5 | ||
|
Invité régulier
![]() Jean Philipe Inscription : avril 2009 Messages : 23 ![]() |
Je viens de mettre en place une gestion d'erreur comme suit :
Code :
Merci par avance et désolé si je ne percute pas assez vite. |
||
|
|
00
|
|
|
#6 |
![]() ![]() Inscription : septembre 2010 Messages : 7 103 ![]() |
si tu gères pas la gestion des erreurs avec PDO, tu ne risques pas d'en avoir, PDO par défaut ne lève aucune erreur/exception sauf a la connexion
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#7 | |||
|
Invité régulier
![]() Jean Philipe Inscription : avril 2009 Messages : 23 ![]() |
Citation:
Code :
|
|||
|
|
00
|
|
|
#8 |
![]() ![]() Inscription : septembre 2010 Messages : 7 103 ![]() |
mais enlève les or die au dela que deja c'etait pas le bonne méthode pour l'extension mysql, c'est complètement inutile pour PDO, et en plus die c'est un alias, donc enlève tout ça
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#9 | ||
|
Invité régulier
![]() Jean Philipe Inscription : avril 2009 Messages : 23 ![]() |
Voilà j'ai retiré le "die".
Je vous remets mon code en entier pour plus de clarté. Code :
|
||
|
|
00
|
|
|
#10 |
![]() ![]() Inscription : septembre 2010 Messages : 7 103 ![]() |
et donc ?
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#11 |
|
Invité régulier
![]() Jean Philipe Inscription : avril 2009 Messages : 23 ![]() |
Autant pour moi ça marche bien, je ne l'avais pas remarqué.
Merci de votre aide Par contre pouvez vous m'expliquer quel a été le problème parce que je n'ai toujours pas compris pour quoi ça remarche. |
|
|
00
|
|
|
#12 |
![]() ![]() Inscription : septembre 2010 Messages : 7 103 ![]() |
errorInfo renvoie un array, seul print_t ou var_dump l'affiche, si tu fait un die dessus ça reviens a faire echo array()
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#13 |
|
Invité régulier
![]() Jean Philipe Inscription : avril 2009 Messages : 23 ![]() |
Oui cela m'explique pour quoi je n'arrivais pas a avoir de message, mais moi ce que j'aimerais comprendre c'est pourquoi ma requête initiale n’aboutissait pas alors maintenant cela marche sans qu'on est eu à modifier la requête.
|
|
|
00
|
|
|
#14 | ||||
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Citation:
|
||||
|
|
00
|
|
|
#15 |
|
Invité régulier
![]() Jean Philipe Inscription : avril 2009 Messages : 23 ![]() |
D'accord je comprend mieux, merci pour cette explication.
Sujet résolu. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com