Une requete dont le resultat ne s'affiche pas

toolteur -  
 toolteur -
Bonjour,

Ma requette ne s'affiche pas :/

<?php
 // Démarrage ou restauration de la session
session_start();
  
// Lecture d'une valeur du tableau de session
echo $_SESSION['name'];

$db = mysql_connect("sql.free.fr", "toolteur", "motdepass");

// on seléctionne la base
mysql_select_db('toolteur',$db); 


?> 
<?php
// lancement de la requete  
$sql = 'SELECT surname FROM peoples WHERE name = "$name"';  

// on lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas bien (or die)  
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());  

 // on recupere le resultat sous forme d'un tableau  
 $data = mysql_fetch_array($req);  
 
// on libère l'espace mémoire alloué pour cette interrogation de la base  
 mysql_free_result ($req);  
 mysql_close ();  
 ?>
Votre surname est :<br />
<?php echo $data['surname']; ?>

<a href="/logout.php">Deconnection</a><br><br><br>
<img
 style="width: 200px; height: 300px;" alt=""
 src="http://www.yesitis.com/yes/yes/reyes.jpg"></td>
    </tr>
  </tbody>
</table>
<b><br>
</b>
</body>
</html>


le surname ne veut donc pas s'afficher, le resultat c'est juste :
Votre surname est :


si vous pouvez m'aider...

merci d'avance !

7 réponses

  1. Alain42
     
    Bonjour,

    si tu lis la variable de session il faut la charger dans la variable qui te sert à faire la requette:

    $name= $_SESSION['name'];


    Je ne vois nulle part ailleurs $name.

    @lain
    0
  2. toolteur
     
    echo $_SESSION['name'];
    $name= $_SESSION['name'];

    ne marche pas :/
    0
  3. Alain42
     
    Est ce que echo $_SESSION['name'] écrit qq chose ?

    si tu mets :

    $name= $_SESSION['name'];
    echo "Valeur session lue: ".$name;
    


    Qu'est ce que tu as comme Valeur session lue: ?

    Il faut peut être bien que tu charges dans une de tes pages au moment de session start $_SESSION['name']='le_nom'
    0
  4. toolteur
     
    $name= $_SESSION['name'];
    echo "Valeur session lue: ".$name;

    donne :

    Valeur session lue: test1

    test1 étant le name, tout va bien !

    Parcontre pour ce qui est du surname, il ne s'affiche toujours pas
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. toolteur
     
    Avec ça le surname s'affiche mais impossible de le reutiliser plus bas :/
    <?php
    // lancement de la requete  
    $req = mysql_query("select surname from `peoples` where name='$name'");
    
    while ($val = mysql_fetch_array($req)){
    echo "<tr><td>".$val['surname']."</td></tr>\n";
    $perso= $_SESSION['surname'];
    
    }
    
    echo "Bienvenue <b>$name</b>.<br>
    Votre surname est : $surname<br><br>
    Ceci est une page test <br><br>
    ";
    
     mysql_free_result ($req);  
     mysql_close ();  
     ?>
    


    comment faire pour qu'il s'affiche en dessous de bienvenue $name qui lui s'affiche tres bien ?

    voilà ce que j'ai sur ma page :

    testa Bienvenue test1.
    Votre surname est
    
    Ceci est une page test 
    
    


    testa est le surname ; test1 est le name
    0
  7. naruto-94 Messages postés 904 Statut Membre 188
     
    salut,

    tu peux creer un tableau ,

    <?php

    $ArraySurname = array ();

    // lancement de la requete
    $req = mysql_query("select surname from `peoples` where name='$name'");

    while ($val = mysql_fetch_array($req))
    {
    echo "<tr><td>".$val['surname']."</td></tr>\n";
    $perso= $_SESSION['surname'];
    array_unshift ($ArraySurname, $val['surname'])
    }

    echo "Bienvenue <b>$name</b>.<br>
    Votre surname est : $ArraySurname[0] <br><br>
    Ceci est une page test <br><br>

    ";

    mysql_free_result ($req);
    mysql_close ();
    ?>

    Je n'ai pas tester mais je crois que sa marche .
    0
  8. toolteur
     
    j'ai du modifier (histoire de "{") mais ça marche

    merci !
    0