SQL dans boucle while grâce à une fonction

Bonsoir les gens,

J'ai un problème, ou plutôt une question.
Actuellement, je sais comment afficher une liste de données, avec SQL, en utilisant la boucle While :

<?php
$reponse = mysql_query("SELECT * FROM table WHERE parametre='x'");
while($sql = mysql_fetch_array($reponse)
{
     echo $sql[2];
}
?>

Bon, je pense que ce code est correct.

Maintenant, j'essaie de faire un scrit, qui fait le même travail, mais la requête se trouve dans une fonction.
L'idéal étant :

<?php
while(fonction())
{
       getTitle();
}
?>


Où fonction() renvoie "$sql = mysql_fetch_array", et getTitle "$sql['title']";

Ma question est donc : comment coder fonction() ?

Merci de votre réponse,
IceDeamon.
Configuration: Linux
Firefox 3.0.14

3 réponses

  1. Pourquoi veut tu absolument mettre dans la boucle, tu n'a qu'à le mettre à l'extérieur et l'appeller.
    1. Salut

      Je vois en gros ce que tu voudrais faire mais sa risque de coincer a plusieurs endroits :

      Si tu code fonction de cette maniere

      function fonction() {
      $reponse = mysql_query("SELECT * FROM table WHERE parametre='x'");
      $sql = mysql_fetch_array($reponse);
      return $sql;
      }

      La boucle tournera a l'infini car la requete va se re initialiser a chaque tour de boucle... Il ne faut donc pas executer la requete a l'interieur ce qui donnerai :

      function fonction($reponse) {
      $sql = mysql_fetch_array($reponse);
      return $sql;
      }

      $reponse = mysql_query("SELECT * FROM table WHERE parametre='x'");
      while($sql = fonction($reponse))
      {
      echo $sql[2];
      }

      L'interet du truc est tout de suite plus limité...

      Il y a une raison precise pour que tu veuille faire ça ?
      1. Voici un exemple tiré du site du zéro pour t'aider :
        <?php
        mysql_connect("localhost", "pseudo", "mot_de_passe"); 
        mysql_select_db("coursphp"); 
         
        $reponse = mysql_query("SELECT * FROM jeux_video"); 
         
        while ($donnees = mysql_fetch_array($reponse) )
        {
        ?>
            <p>
            <strong>Jeu</strong> : <?php echo $donnees['nom']; ?><br />
            Le possesseur de ce jeu est : <?php echo $donnees['possesseur']; ?>, et il le vend à <?php echo $donnees['prix']; ?>   euros !<br />
            Ce jeu fonctionne sur <?php echo $donnees['console']; ?> et on peut y jouer à <?php echo $donnees['nbre_joueurs_max']; ?> au maximum<br />
            <?php echo $donnees['possesseur']; ?> a laissé ces commentaires sur <?php echo $donnees['nom']; ?> : <em><?php echo    $donnees['commentaires']; ?></em>
           </p>
        <?php
        }
         
        mysql_close();
        ?>