[PHP-MYSQL]Manipuler une ressource MySQL

Résolu
xbb Messages postés 49 Date d'inscription   Statut Membre Dernière intervention   -  
pularkio Messages postés 9 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous.
Je suis administrateur d'un très gros site + grosse base de données en intranet.

De ce fait, les requêtes sql engendrent des temps de chargement très longs.
C'est pourquoi j'aimerais trouver un moyen de ne faire qu'une seule grosse requête, et ensuite manipuler plusieurs fois la ressource mysql obtenue (ce qu'on appelle par convention $result ou bien $recordset).

J'aimerais pouvoir parcourir plusieurs fois mon $result, pour traiter différents champs à chaque passage. Mais une fois la premiere série de fetch_assoc() terminée, je ne sais pas comment revenir à la premiere ligne!!

S'il s'agissait d'un array, je pourrais faire un reset($mon Array)...

Quelqu'un connait-il une fonction similaire pour les résultats de requête mysql?


Merci d'avance !

Edit : la ressource dont je parle est de type "mysql result"
A voir également:

2 réponses

xbb Messages postés 49 Date d'inscription   Statut Membre Dernière intervention   1
 
J'ai trouvé la réponse tout seul !!!

c'est la fonction mysql_data_seek($result, indice)

En l'occurence je dois faire mysql_data_seek($result, 0)


https://www.php.net/manual/fr/function.mysql-data-seek.php
1
pularkio Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
 
C'est pas très propre comme solution, le mieux c'est de stocker le résultat du fetch dans un array, et ensuite de parcourir le tableau autant de fois que nécessaire.

A part si il y a vraiment beaucoup de résultats et que le tableau occupe trop de place en mémoire.

http://www.finalclap.com/faq/mysql/
0