Session et récupérations des variables en php

deb -  
planetevoyage Messages postés 7 Statut Membre -
salut,

j'ai un petit pb pour récupérer des variables de sessions...

en fait j'ai fait (avec bcp d'aide) ce sript de connexion :
<?php
// connexion à la base mySQL
mysql_connect("localhost", "root", "") or die("Erreur de connexion : ".mysql_error());
mysql_select_db("courrier") or die ("Erreur de sélection de la bd : ".mysql_error());

// requête qui permet de resortir le niveau de l'utilisateur enregistré
$query = "SELECT * FROM utilisateurs WHERE loginuti = '$login' AND passworduti = '$password'";
$result = mysql_query($query) or die ("Erreur Query : ".mysql_error());
//on compte le nb de lignes de résultat
//si 1 : valide si 0 : aucun login ne correspond

if (mysql_num_rows($result) )
{
$ligne = mysql_fetch_array($result);
session_start();
$_SESSION['compte'] = $ligne['droitsuti'];
$_SESSION['login'] = $ligne['loginuti'];
if ($_SESSION['compte'] == 'admin')
{
header("location:page_adming.php");
}
else
{
header("location:page_clientg.php");
}
}
else
{
echo'<center>Login ou Mot-de-passe incorrects ! </center>';
include ("page_cnx.htm");
}

?>

et j'ai essayé de récupérer ces données dans un autre script :
// on récupere le nom de la personne dans $nom
$query = "SELECT * FROM destinataire, utilisateurs WHERE loginuti = refloginuti AND destinataire.refloginuti= '".$_SESSION['login']."'";
$result = mysql_query($query) or die (mysql_error());
$linedest = mysql_fetch_array($result);
$nom = $linedest[1];
echo $query;
echo '<font face="Geneva, Arial, Helvetica, san-serif">';
echo $nom;
echo '</font>';

mais ça ne marche pas et lorsque j'affiche la requete, j'ai ça :
SELECT * FROM destinataire, utilisateurs WHERE loginuti = refloginuti AND destinataire.refloginuti= ''
en fait, il ne prends pas en compte la variable de session !

9 réponses

  1. wiwimagique Messages postés 481 Statut Membre 108
     
    il faut commencer l'autre script avec ca aussi:
    session_start();

    en fait, faut le mettre sur toutes les debuts de pages ou tu veux recuperer les variables de session.
    0
  2. deb
     
    je vois pas pourquoi les variables de session sont vides !!!
    0
  3. primal Messages postés 495 Date d'inscription   Statut Membre 97
     
    Salut,
    j'ai peut-être rien compris à la vie mais chez moi, une variable de session se présente sous la forme:
    <?
    session_register("masession");
    ?>

    Si c'est autre chose, merci de me le dire
    ;)
    0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. deb
     
    alors tout ce que j'ai fait est faux !!!
    0
  6. primal Messages postés 495 Date d'inscription   Statut Membre 97
     
    Meu non, fo pas dire ca!
    J'ai juste dis que la manière dont tu déclares tes variables me SEMBLE incorrecte.
    J'aurais mis session_register("compte") pour ton $_SESSION['compte'] .
    J'en suis pas sûr.

    En espérant qu'une âme un peu plus éclairée que la mienne puisse t'aider, je te souhaite bon courage.
    0
  7. wiwimagique Messages postés 481 Statut Membre 108
     
    session_register("compte") marche aussi, mais est moins securise que $_SESSION["compte"].

    c'est comme $_POST["nom"] pour recuperer une variable passee par un formulaire en post.

    Deb: Quelle erreur as-tu maintenant ?
    0
  8. planetevoyage Messages postés 7 Statut Membre
     
    Bonjour,

    Pour être sur que ta variable de session est bien prise en compte essaye de metre un
    echo "login = $_SESSION['login']";
    à la place des lignes
    header("xxxxxx");

    Si déjà ici ce n'est pas bon c'est ta requete que ne renvoie rien dans le champ loginuti.

    Jérôme
    0