PDO un query() après un exec()

Eléphanteau du PHP | 20 Messages

03 août 2007, 10:00

Bonjour,

je parcours un peu toutes la doc pdo et la communauté php sans grande fructivité sur un problème avec pdo.

La situation est fort simple:
<?php

// Retourne 0 même si il efface bien la ligne
$pdo->exec("DELETE FROM ma_table WHERE id=1");


// Ensuite on fait une query:
$req = $pdo->query("SELECT * FROM autre_table");

// Renvoie une erreur, Call to a member function fetchObject() on a non-object
while($data = $req->fetchObject()){}
?>


Du moment que j'appel un query(); après un exec(); j'ai une erreur
var_dump($pdo); après un $pdo->exec();
renvoie : NULL

Ce qui me laisse à penser que exec() clos la conenxtion ou détruit l'objet :shock:

si je fait mon DELETE via un query, tout marche mais c'est très pas propre :lol:
j'ai tenter les closecursos même si ce n'est pas une query, cela renvoie un undefinded function par contre...

Je précise que je suis sur php 5.2.2 mais j'ai le même problème sur 5.2.3 et 5.2.1. même sur php 5.1...

Si vous avez une idée, sinon tant pis, $pdo->query(); pawa