requête préparée persistante ?

Petit nouveau ! | 2 Messages

11 nov. 2011, 00:46

Bonjour
Sur une page web j'ai une <IMG SRC=getimage.php?index=12> (par xemple).
L'index varie selon la sélection de l'utilisateur.
Les images sont dans une base mySql.
Si j'utilise PDO pour préparer ma requête il retournera une variable php que je ne pourrai pas conserver d'un appel à l'autre (je ne peux utiliser ni les variables de session, ni les cookies).
Je voudrais donc préparer une requête (à l'ouverture de ma page) directement par SQL, du style :
PREPARE imgreqprep FROM "SELECT filetitle FROM mytable WHERE id=?;" ;
Puis appeler EXECUTE :
$request= "SET @var=$index ; EXECUTE imgreqprep USING @var ;" ;
$res= $oPdo->query($req);
$row = $res->fetch(PDO::FETCH_NUM);
echo $row[0]; // juste pour vérifier provisoirement que j'ai bien accès au titre du fichier image.

Or le résultat est une chaîne vide.
Qu'est-ce qui cloche ?
Merci d'avance

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

11 nov. 2011, 12:53

Salut,

Les requêtes préparée sont, il me semble liée à la session vu que la session est clôturée en du de script ce comportement est normal.

Essai de le faire sur une console Sql
- connections
- requête preparée
Utilisation
Fermeture de session
Fermeture de console
Ouverture de console + session
Essai utilisation de la requête préparée

Tu sera fixé ;)

@+
Il en faut peu pour être heureux ......

Petit nouveau ! | 2 Messages

11 nov. 2011, 23:24

Bonjour
Merci de me répondre.
Je croyais que les requêtes préparées étaient conservées dans le cache de mysql durant toute la session.
N'est-ce pas le cas ?

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

12 nov. 2011, 21:35

si mais une session mysql pour php c'est depuis le mysql_connect (ou new pdo etc etc) jusqu’à la fin du script qui clos la connexion au serveur !


@+
Il en faut peu pour être heureux ......

ViPHP
ViPHP | 1996 Messages

14 nov. 2011, 00:41

Sauf si tu utilises mysql_pconnect (qui reste de plus en plus rare)
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr