Copier un résultat après query php

WRInaute discret
Bonjour,

J'ai un fichier PHP dans lequel j'effectue une query :
$query = "SELECT .....";
$result = mysql_query($query,$connexion);

donc j'ai besoin deux fois. Je cherche une méthode pour pouvoir l'utiliser deux fois sans avoir à lancer deux fois la query.

Je l'utilise une première fois:
while($row=mysql_fetch_row($result)){
...
}

puis plus loin dans le code j'en ai besoin une deuxième fois.
Si je refais un $row=mysql_fetch_row($result) ça ne marchera pas. Il faudrait que je puisse copier $result dans un $result2 que j'utiliserai plus tard.
Biensûr $result2=$result; ne fonctionne pas. Mais existe-t-il une fonction PHP permettant de "copier" un résultat ?

Merci
 
WRInaute discret
Si je fais ça, je me retrouve avec un:
Warning: reset() [function.reset]: Passed variable is not an array or object in...
 
WRInaute accro
davidtennis a dit:
Si je fais ça, je me retrouve avec un:
Warning: reset() [function.reset]: Passed variable is not an array or object in...
parce que, en fait, c'est
Code:
reset($row);
qu'il faut faire
 
WRInaute discret
Hum ... soit j'ai pas lu la même question que vous, soit je suis mal réveillé.
Pour moi, ce qu'il cherche, c'est à "remettre les compteurs à zéro", et pour ça, il existe mysql_data_seek().
 
WRInaute accro
le reset($row) permet de revenir au tout début des résultats, comme si on avait réeffectué le mysql_fetch_row()
 
WRInaute accro
J'ai recemment pu tester reset() et mysql_data_seek()

mysql_data_seek() est bien fait pour un résultat retourné par une requête.

reset() est seulement utilisé pour les tableaux contenant plusieurs lignes. Donc, a ne pas utiliser avec un mysql_fetch_array puisqu'il ne renvoie qu'un tableau correspondant à une certaine ligne d'un résultat de requête.

Donc dans ce cas, mysql_data_seek() ! ;)
 
WRInaute accro
YoyoS a dit:
reset() est seulement utilisé pour les tableaux contenant plusieurs lignes. Donc, a ne pas utiliser avec un mysql_fetch_array puisqu'il ne renvoie qu'un tableau correspondant à une certaine ligne d'un résultat de requête.
Effectivement, j'avais mal regardé le script :oops:
Il faut l'utiliser avec $row = mysql_fetch_assoc($mysql_result); et là c'est ok
 
Discussions similaires
Haut