Warning: mysql_fetch_array(): 4

Bonjour,

Une page PHP censé récupéré les 'email' de la table 'login'
<?php
include ('conf.php');
mysql_connect($server, $login, $pass);
mysql_select_db($db);

$resultaa = mysql_query("SELECT 'email' FROM 'login'");

while ($row = mysql_fetch_array($resultaa, MYSQL_BOTH)) {
printf ("%s", $row[0], $row["name"]);
mysql_free_result($resultaa);
}
mysql_close();
?>

Après ça m'affiche la 1ère e-mail et après j'ai erreur :(
Si je vire le mysql_free_result j'ai toutes les e-mails mais en désordre :(((

Cordialement
laplageaimelesable

14 réponses

  1. explique toi mieux, tu auras de l'aide, tu veux trier de quelle facon ?? un exemple serait plus parlant ...

    alain_42 te fais remarquer que le champ name n'existe pas ... il faut l'ajouter dans la requete ou le supprimer du print
    0
    1. J'ai ça:
      <?php 
      include ('conf.php'); 
      mysql_connect($server, $login, $pass); 
      mysql_select_db($db); 
      
      $resultaa = mysql_query("SELECT 'email' FROM 'login' ORDER BY 'email'"); 
      
      while ($row = mysql_fetch_array($resultaa)){ 
      printf ("%s", $row[0], $row["name"]); 
      } 
      mysql_close(); 
      ?>

      ou
      <?php
      include ('conf.php');
      mysql_connect($server, $login, $pass);
      mysql_select_db($db);
      
      $resultaa = mysql_query("SELECT 'email' FROM 'login'");
      
      while ($row = mysql_fetch_array($resultaa, MYSQL_BOTH)) {
      printf ("%s", $row[0], $row["name"]);
      mysql_free_result($resultaa);
      }
      mysql_close();
      ?>
      0
      1. c'est quoi name, un autre champ de ta table ?
        c'est par rapport à ce champ que tu veux trier
        de plus si tu veux l'afficher, il faut le rajouter après SELECT

        $resultaa = mysql_query("SELECT email,name FROM login ORDER BY name");
        
        while ($row = mysql_fetch_array($resultaa, MYSQL_BOTH)) {
        printf ("%s", $row['email'], $row['name']);
        }
        0
        1. WOOOOOOW Ça y est ça marche mais il y a tout en vrac =O
          0
          1. enleve le MYSQL_BOTH
            while ($row = mysql_fetch_array($resultaa)){
            ....
            }
            0
        2. ah c bon g compris jvais test
          0
          1. Pas très bien compris tu peux réexpliquer STP.
            C'est la table login et le champ email
            0
            1. Dans ta requête, t'as mis "email" en nom de table alors qu'avant c'était "login". Du coup la requête est pas bonne, donc le resultat est vide.
              0
              1. <?php
                include ('conf.php');
                mysql_connect($server, $login, $pass);
                mysql_select_db($db);
                
                $resultaa = mysql_query("SELECT 'email' FROM 'email' ORDER BY 'email'");
                
                while ($row = mysql_fetch_array($resultaa, MYSQL_BOTH)) {
                printf ("%s", $row[0], $row["name"]);
                }
                mysql_close();
                ?>


                Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/administration/email.php on line 8

                Merci de ton aide
                laplageaimelesable
                0
                1. tu vires mysql_free_result($resultaa);

                  et tu met un ORDER BY

                  "SELECT 'email' FROM 'login' ORDER BY email"
                  0