2011-08-25 3 views
1

J'essaie d'utiliser le profileur zend db pour enregistrer les requêtes. J'ai lu la documentation du site Web zend et cela fonctionne bien, sauf que je ne suis pas en mesure d'obtenir les valeurs pour l'insertion et les requêtes de mise à jour. Je vois juste la requête comme ci-dessous avec le? pour les valeurs. J'ai essayé d'utiliser getQueryParams pour au moins voir si je peux obtenir les valeurs dans le tableau et cela fonctionne seulement avec getLastQueryProfile et pas le getQueryProfile pour l'obtenir pour toutes les requêtes. Quelqu'un peut-il s'il vous plaît laissez-moi savoir comment je peux obtenir le "?" avec les valeurs réelles? Je ne suis pas préoccupé par le tableau car de toute façon, il ne fait pas l'objet.php zend db profiler requêtes INSERT et UPDATE

INSERT INTO `myTable` (`id`, `lname`, `fname`) VALUES (?, ?, ?) 

merci.

+0

juste essayé cette print_r (profiler- $> getQueryProfiles (Zend_Db_Profiler :: INSERT | Zend_Db_Profiler :: UPDATE)); encore une fois ce n'est pas mettre les valeurs inisde la requête, mais peut montrer les valeurs à l'intérieur du tableau .. je devine qu'il devrait y avoir un moyen de former la requête complète .. toute aide s'il vous plaît? – geej

Répondre

0

Je ne pense pas que ce soit possible. Selon le manuel PDO de php, il n'existe aucun moyen de récupérer une requête après une instruction prepare(). Dans les exemples, il est facile à comprendre car en utilisant le PDO manuellement, vous connaissez l'ordre des paramètres et avez la déclaration. En regardant les classes Zend (Zend_Db_Table_Abstract), je vois que l'ordre est maintenu et c'est la bonne façon car il utilise des paramètres de point d'interrogation.

lecture Zend_Db_Adapter_Pdo_ * vous devriez obtenir clases plus clairement