Je fais le "test-class" suivant fait à la volée: http://sumoin.pastebin.com/ff744ea4 Pas de réglage fin ou autre chose, juste un bref essai de classe pdo.PDO et PDOStatement, affectations magiques
Et je le test.php: http://sumoin.pastebin.com/d70dcb4ec
La chose drôle est:
L'objet PDOStatement ne revient jamais directement et je il ne fait jamais attribué à $this->handler->stmt
mais l'exécution $stmt->execute()
fonctionne aussi bien que si tout va bien. Mais si j'utilise $this->handler->stmt->someMethod
je reçois l'erreur suivante:
Fatal error: Call to a member function bindParam() on a non-object
(bindParam est juste un exemple)
je l'ai déjà vérifié la requête, et il n'a pas d'erreurs dans, j'essayé d'utiliser « bindValue()", n'a pas fonctionné. J'ai essayé d'utiliser des entiers au lieu de ': nom' pour assigner des valeurs aux paramètres. J'ai couru la requête pure à travers le $this->handler->query()
et cela a fonctionné.
Où se situe le problème? Je ne veux pas affecter mon objet PDOStatement pendant l'exécution, je veux qu'il fasse partie de la classe, lorsque la méthode "-> prepare()" est appelée.
Des idées? S'il vous plaît ne me frappez pas s'il y a un doublon là-bas, mais je n'ai rien trouvé qui m'a aidé.
Information:
- PHP5.2
- PDO Extensions etc. installed
- Apache2
- MySQL5.1 (matching to the PDO version)
MISE À JOUR: J'ai essayé d'utiliser une référence '$ this-> stmt = & $ this-> Händler-> prepare(). Provoque toujours la même erreur. –