Session php qui fonctionne pas
Fermé
drogba7213
Messages postés
1524
Date d'inscription
mardi 14 août 2007
Statut
Membre
Dernière intervention
3 avril 2010
-
12 janv. 2010 à 13:25
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 - 13 janv. 2010 à 17:51
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 - 13 janv. 2010 à 17:51
A voir également:
- Session php qui fonctionne pas
- Easy php - Télécharger - Divers Web & Internet
- Estelle vient de verrouiller sa session d'ordinateur. que peut-on dire ? ✓ - Forum Windows 7
- Veuillez ouvrir une session avec les privilèges du gestionnaire ✓ - Forum Jeux vidéo
- Teamviewer code de session expiré ✓ - Forum Windows XP
- Estelle vient de verrouiller sa session d’ordinateur. que peut-on dire ? ✓ - Forum Windows
17 réponses
rescue
Messages postés
1039
Date d'inscription
vendredi 16 novembre 2007
Statut
Contributeur
Dernière intervention
27 mars 2019
136
12 janv. 2010 à 15:19
12 janv. 2010 à 15:19
Bonjour,
Je n'ai pas testé mais je verrai plus quelque chose comme ça, vérifies si ta variable existe et tu l'affiches. :
if (isset($_SESSION['id'])) {
$id= $_SESSION['id'] ;
echo $id;
}
Une question : Comment fais tu circuler ta session d'une page à l'autre ?
@+
Je n'ai pas testé mais je verrai plus quelque chose comme ça, vérifies si ta variable existe et tu l'affiches. :
if (isset($_SESSION['id'])) {
$id= $_SESSION['id'] ;
echo $id;
}
Une question : Comment fais tu circuler ta session d'une page à l'autre ?
@+
Camuke
Messages postés
224
Date d'inscription
lundi 7 mai 2007
Statut
Membre
Dernière intervention
12 août 2011
88
12 janv. 2010 à 15:32
12 janv. 2010 à 15:32
Je viens de tester ton code en local (sous wamp), personnellement ton code marche.
Je te met le code que j'ai :
index.php :
<?php
session_start();
$Serveur = "localhost";
$Utilisateur = "root";
$Mdp = "";
$Bdd = "User";
/* connection a la base*/
$connect = mysql_connect($Serveur,$Utilisateur,$Mdp);
/* sélection de la base */
mysql_select_db($Bdd, $connect);
$mail= "a.z@e.r";
$cession = "SELECT ID_USERS
FROM USERS
WHERE MAIL = '$mail'";
$req = mysql_query($cession) or die('Erreur SQL !<br>'.$cession.'<br>'.mysql_error());
while($data = mysql_fetch_assoc($req))
{
$_SESSION['id'] = $data['ID_USERS'];
}
?>
<a href="test.php">test</a>
test.php :
<?php
session_start();
$Serveur = "localhost";
$Utilisateur = "root";
$Mdp = "";
$Bdd = "User";
/* connection a la base*/
$connect = mysql_connect($Serveur,$Utilisateur,$Mdp);
/* sélection de la base */
mysql_select_db($Bdd, $connect);
$id = $_SESSION['id'];
$soordonee = " SELECT *
FROM USERS
WHERE ID_USERS = '$id'";
$req = mysql_query($soordonee) or die('Erreur SQL !<br>'.$soordonee.'<br>'.mysql_error());
while($data = mysql_fetch_assoc($req))
{
echo $data['sexe']." ". $data['nom'];
}
?>
Je te met le code que j'ai :
index.php :
<?php
session_start();
$Serveur = "localhost";
$Utilisateur = "root";
$Mdp = "";
$Bdd = "User";
/* connection a la base*/
$connect = mysql_connect($Serveur,$Utilisateur,$Mdp);
/* sélection de la base */
mysql_select_db($Bdd, $connect);
$mail= "a.z@e.r";
$cession = "SELECT ID_USERS
FROM USERS
WHERE MAIL = '$mail'";
$req = mysql_query($cession) or die('Erreur SQL !<br>'.$cession.'<br>'.mysql_error());
while($data = mysql_fetch_assoc($req))
{
$_SESSION['id'] = $data['ID_USERS'];
}
?>
<a href="test.php">test</a>
test.php :
<?php
session_start();
$Serveur = "localhost";
$Utilisateur = "root";
$Mdp = "";
$Bdd = "User";
/* connection a la base*/
$connect = mysql_connect($Serveur,$Utilisateur,$Mdp);
/* sélection de la base */
mysql_select_db($Bdd, $connect);
$id = $_SESSION['id'];
$soordonee = " SELECT *
FROM USERS
WHERE ID_USERS = '$id'";
$req = mysql_query($soordonee) or die('Erreur SQL !<br>'.$soordonee.'<br>'.mysql_error());
while($data = mysql_fetch_assoc($req))
{
echo $data['sexe']." ". $data['nom'];
}
?>
drogba7213
Messages postés
1524
Date d'inscription
mardi 14 août 2007
Statut
Membre
Dernière intervention
3 avril 2010
21
12 janv. 2010 à 15:42
12 janv. 2010 à 15:42
ouais en fait j'avais oublié le session start de la deuxième page par contre j'ai un soucis
dans la deuxième page je veux ressortir les infos préalablement enregistrer
et dans mes trois echo j'en ai un seul qui fonctionne et c'est le $sexe les autres ne s'affiche pas pourquoi svp?
dans la deuxième page je veux ressortir les infos préalablement enregistrer
$id = $_SESSION['id']; $coordonee = " SELECT * FROM USERS WHERE ID_USERS = '$id'"; $req = mysql_query($coordonee) or die('Erreur SQL !<br>'.$coordonee.'<br>'.mysql_error()); $data = mysql_fetch_assoc($req); echo $data['MAIL']; $sexe = $data['SEXE']; if ($sexe == 0) { $sexe = 'Mr'; } elseif ($sexe == 1) { $sexe = 'Mme'; } elseif ($sexe == 2) { $sexe = 'Mlle'; } echo $sexe." ".$data['NOM'];
et dans mes trois echo j'en ai un seul qui fonctionne et c'est le $sexe les autres ne s'affiche pas pourquoi svp?
Camuke
Messages postés
224
Date d'inscription
lundi 7 mai 2007
Statut
Membre
Dernière intervention
12 août 2011
88
12 janv. 2010 à 15:56
12 janv. 2010 à 15:56
Je viens de tester et moi tout marcher sauf $data['NOM'] car dans ma base, la table s'appelle "nom" et pas "NOM". Après modification, tout marche niquel!!!
Vérifie si la casse(majuscule, minuscule) de ta table et des nom de tes variables est bien la même
Vérifie si la casse(majuscule, minuscule) de ta table et des nom de tes variables est bien la même
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
drogba7213
Messages postés
1524
Date d'inscription
mardi 14 août 2007
Statut
Membre
Dernière intervention
3 avril 2010
21
12 janv. 2010 à 16:02
12 janv. 2010 à 16:02
bah oui en fait jai tout mi en Majuscule donc oui c'est bizarre quand meme vous auriez pas une solution?
Camuke
Messages postés
224
Date d'inscription
lundi 7 mai 2007
Statut
Membre
Dernière intervention
12 août 2011
88
12 janv. 2010 à 16:17
12 janv. 2010 à 16:17
sa peut venir que deux chose :
- la requête sql qui ne fonctonne pas
- tu recupere aucun id de session.
Tu arrive a afficher le $sexe car $sexe aura toujours une valeurs.
Essai de faire un echo $id; juste en dessous de $id = $s_session['id']; et dit moi si tu arrive à afficher quelque chose
Si l'id ne s'affiche pas, c'est l'option 2 sinon le problème viens de ta connexion a la base de données
- la requête sql qui ne fonctonne pas
- tu recupere aucun id de session.
Tu arrive a afficher le $sexe car $sexe aura toujours une valeurs.
Essai de faire un echo $id; juste en dessous de $id = $s_session['id']; et dit moi si tu arrive à afficher quelque chose
Si l'id ne s'affiche pas, c'est l'option 2 sinon le problème viens de ta connexion a la base de données
drogba7213
Messages postés
1524
Date d'inscription
mardi 14 août 2007
Statut
Membre
Dernière intervention
3 avril 2010
21
12 janv. 2010 à 18:13
12 janv. 2010 à 18:13
echo $id
fonctionne
ma requete est bonne je l'ai testé.
je comprend pas ce qui bloque
fonctionne
ma requete est bonne je l'ai testé.
je comprend pas ce qui bloque
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
12 janv. 2010 à 18:42
12 janv. 2010 à 18:42
Salut,
si dans ta table ID est de type INT alors il me semble qu'il ne faut pas les ' dans la requette:
si dans ta table ID est de type INT alors il me semble qu'il ne faut pas les ' dans la requette:
$coordonee = " SELECT * FROM USERS WHERE ID_USERS = $id ";
drogba7213
Messages postés
1524
Date d'inscription
mardi 14 août 2007
Statut
Membre
Dernière intervention
3 avril 2010
21
12 janv. 2010 à 18:58
12 janv. 2010 à 18:58
alors mon id est structuré comme ca :
Champ Type Interclassement Attributs Null Défaut Extra
ID_USERS int(11) Non aucune auto_increment
j'ai fait les deux rien ne fonctionne
Champ Type Interclassement Attributs Null Défaut Extra
ID_USERS int(11) Non aucune auto_increment
j'ai fait les deux rien ne fonctionne
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
12 janv. 2010 à 19:16
12 janv. 2010 à 19:16
essayes pour voir ce que tu trouves comme enr:
et dis nous ce qu'il t'affiche
$id = $_SESSION['id']; $coordonee = " SELECT * FROM USERS WHERE ID_USERS = '$id'"; $req = mysql_query($coordonee) or die('Erreur SQL !<br>'.$coordonee.'<br>'.mysql_error()); echo " Nbr enr trouves avec l'id : ".$id." = "."mysql_num_rows($req); ......
et dis nous ce qu'il t'affiche
drogba7213
Messages postés
1524
Date d'inscription
mardi 14 août 2007
Statut
Membre
Dernière intervention
3 avril 2010
21
12 janv. 2010 à 19:21
12 janv. 2010 à 19:21
38 Nbr enr trouves avec l'id : 38 = mysql_num_rows(Resource id #9)
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
12 janv. 2010 à 19:28
12 janv. 2010 à 19:28
je crois que j'ai fait une erruer de frappe essayes
echo " Nbr enr trouves avec l'id : ".$id." = ".mysql_num_rows($req);
drogba7213
Messages postés
1524
Date d'inscription
mardi 14 août 2007
Statut
Membre
Dernière intervention
3 avril 2010
21
12 janv. 2010 à 19:34
12 janv. 2010 à 19:34
Nbr enr trouves avec l'id : 41 = 1
drogba7213
Messages postés
1524
Date d'inscription
mardi 14 août 2007
Statut
Membre
Dernière intervention
3 avril 2010
21
12 janv. 2010 à 20:08
12 janv. 2010 à 20:08
Alors j'essaye de faire des tests en même temps et il s'avère que j'arrive a faire ca :
Quand je dit j'arrive il me retourne $data['MAIL'] et $data['NOM']
par contre si je rouvre une balise PHP plus loin dans mon code la je n'y arrive pas est ce normal?
<table width="100%" border="0" cellspacing="0" cellpadding="0" height="29"> <tr> <td valign="top" width="145"><b>E-mail : </b></td> <td valign="top"> <?php $data = mysql_fetch_assoc($req); echo $data['MAIL'];echo $data['NOM']; ?> <input type="hidden" name="email" id="email" value="" /> </td> </tr> </table>
Quand je dit j'arrive il me retourne $data['MAIL'] et $data['NOM']
par contre si je rouvre une balise PHP plus loin dans mon code la je n'y arrive pas est ce normal?
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
12 janv. 2010 à 20:44
12 janv. 2010 à 20:44
par contre si je rouvre une balise PHP plus loin dans mon code la je n'y arrive pas est ce normal?
quel code mets tu plus loin ?
si tu remets un mysql_fetch_array c'est normal que tu n'ai rien
quel code mets tu plus loin ?
si tu remets un mysql_fetch_array c'est normal que tu n'ai rien
drogba7213
Messages postés
1524
Date d'inscription
mardi 14 août 2007
Statut
Membre
Dernière intervention
3 avril 2010
21
13 janv. 2010 à 10:50
13 janv. 2010 à 10:50
non par exemple je remet un echo $data['NOM']
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
13 janv. 2010 à 17:51
13 janv. 2010 à 17:51
Bizarre, il faudrait que tu nous mettes le code