PHP fetch_array

Sébastien -  
 Sébastien -
Bonjour,

En PHP, je fais un SELECT et je lis le resultats du SELECT à l'aide d'un while...fetch_array()

J'aimerais, suite à ce while, revenir au début de ce array (qui comprend es résultats du SELECT). Existe-t-il une facon de le faire sans avoir à refaire le SELECT encore un fois?

Pour faire une analogie, lorsque je fais le SELECT on peut dire que je suis à BOF. À la fin du while, je suis à EOF. Je voudrais revenir à BOF.

Merci pour votre aide et bonne journée.

2 réponses

  1. ceddec Messages postés 149 Statut Membre 82
     
    Bonjour,

    personnellement je ne pense pas qu'il existe de focntion qui le fasse.

    Une solution serait d'enregistrer le résultat du SELECT dans 2 variables distinctes ainsi tu utilises la première pendant ton while et aprés tu pourrais utiliser la 2eme. Mais je ne sais pas si ca marche.
    0
    1. Sébastien
       
      Bonjour ceddec, impossible car mon select est utilisé dans un while, ce qui veux dire qu'il sera utilisé x fois.

      Je ne connais pas vraiment ces fonctions mais est-ce que ca pourrais fonctionner ? mysql_num_rows() ou mysql_data_seek ()
      0
  2. Sébastien
     
    Pour votre information

    Après vérification, il est en effet possible de faire un genre de BOF, grace à la fonction mysql_data_seek()

    Ex: $sqlClients = mysql_query("SELECT * FROM Clients");
    while ($row = mysql_fetch_array($sqlClients)){
    echo $row[1];
    }

    //C'est ici qu'on retourne à la position 0 du array
    mysql_data_seek($sqlClients,0);

    while ($row = mysql_fetch_array($sqlClients)){
    echo $row[1];
    }
    0