PHP:probleme avec mes déclarations de SESSION

Fermé
c_wolf Messages postés 7 Date d'inscription vendredi 12 septembre 2008 Statut Membre Dernière intervention 1 février 2009 - 12 sept. 2008 à 16:35
H3LP Messages postés 56 Date d'inscription jeudi 11 septembre 2008 Statut Membre Dernière intervention 5 novembre 2008 - 14 sept. 2008 à 16:12
Bonjour à toutes et à tous,

Voilà je vous explique mon soucis, je suis entrain de créer la section d'inscription et de connexion de mon site, et jusque là tout va bien: l'inscription se passe nickel chrome, je valide bien l'inscription, et je peux même me connecter sans soucis!

Enfin... sans soucis... pas vraiment car lorsque je suis connecté, ça agit comme si j'avais mis une fonction die(): le fond ne se charge plus du tout, et plus rien ne fonctionne (que ce soit sous firefox ou IE même donne!) je suis obligé d'effacer toutes mes traces et de fermer et rouvrir le navigateur! Alors j'ai regardé et encore regardé, et j'ai fait un test en mettant en commentaire mes lignes de déclarations de session $_SESSION(blabla) = $blabla[pseudo] par exemple. Et là ca fonctionne!

Hors, justement tout tourne autour du fait de mettre en SESSION les variables pseudo, avatar et niveau de connexion!

Donc, si vous avez la moindre idée! Je vous file mon bout de code, espérant que cela pourra aider qui que ce soit!

<?php
// Tout d'abord on va vérifier que l'utilisateur existe bel et bien dans la base
$liendb = mysql_connect ($serveur_sql, $pseudo_sql, $password_sql);
mysql_select_db ($select_bdd_sql);
$verif_cono_sql = "SELECT * FROM degentes_membres WHERE pseudo = '" . $_REQUEST['name'] . "'";
$result_verif_cono = mysql_query ($verif_cono_sql);

if ( ($cono=mysql_fetch_array($result_verif_cono)) == true)
{
if ($cono['password'] == $_REQUEST['mdp'])
{
$_SESSION['profil']['membre'] = $cono['pseudo'];
$_SESSION['profil']['icones'] = $cono['avatar'];
$_SESSION['profil']['niveau'] = $cono['level'];
$birthday = substr($cono['birthday'], -5);

if ($birthday == date ("d/m"))
{
echo 'Hey!! Il semble que ce soit votre anniversaire ! Alors bon anniversaire!!!!! Et c\'est tout bon pour la connexion amusez-vous bien ! Vous pouvez retournez où vous étiez juste avant...';
}
else
{
echo 'C\'est tout bon pour la connexion amusez-vous bien ! Vous pouvez retournez où vous étiez juste avant...';
}
}
else
{
echo 'Une erreure à été comise, merci de ressaisir vos identifiants de connexion sur la gauche.';
}
}
else
{
echo 'Une erreure à été comise, merci de ressaisir vos identifiants de connexion sur la gauche.';
}

mysql_close ($liendb);
?>

A voir également:

10 réponses

H3LP Messages postés 56 Date d'inscription jeudi 11 septembre 2008 Statut Membre Dernière intervention 5 novembre 2008 6
12 sept. 2008 à 16:38
et le "session_start()" ?
0
H3LP Messages postés 56 Date d'inscription jeudi 11 septembre 2008 Statut Membre Dernière intervention 5 novembre 2008 6
12 sept. 2008 à 16:39
et le "session_start()" ??
0
c_wolf Messages postés 7 Date d'inscription vendredi 12 septembre 2008 Statut Membre Dernière intervention 1 février 2009
12 sept. 2008 à 16:42
Oui... arf oublié de le précisé mais il est bien tout en haut de la page à sa place pas de soucis.

Tout fonctionne bien pour toutes mes autres déclarations $_SESSION mais celles là ... non ça veut vraiment pas!!
0
H3LP Messages postés 56 Date d'inscription jeudi 11 septembre 2008 Statut Membre Dernière intervention 5 novembre 2008 6
12 sept. 2008 à 16:54
as-tu regardé dans les logs d'apache (je suppose que tu es sous apache)?
aurais-tu désactivé l'affichage des erreurs PHP par un : error_reporting(); ou ini_set('display_errors', 'off');
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mouf13 Messages postés 142 Date d'inscription mardi 20 juin 2006 Statut Membre Dernière intervention 22 février 2011 17
12 sept. 2008 à 16:54
print_r($_SESSION); te renvoie ce que tu veux ?
0
c_wolf Messages postés 7 Date d'inscription vendredi 12 septembre 2008 Statut Membre Dernière intervention 1 février 2009
12 sept. 2008 à 17:00
Alors je vais tacher de répondre dans l'ordre:
1) pour H3LP : je suis sur un serveur free.fr donc pas moyen de changer leur fichier apache ni de regarder dedans...
2) pour mouf13 : oui le print_r me renvoit bien ce que je veux....
0
c_wolf Messages postés 7 Date d'inscription vendredi 12 septembre 2008 Statut Membre Dernière intervention 1 février 2009
12 sept. 2008 à 19:55
Alors est ce quelqu'un aurait une idée parce que là je craaaaquee.....
0
Bonsoir

Je pense que le problème n'est pas dans le morceau que tu montres. Dans cette partie, les variables de session sont seulement affectées, mais pas exploitées, elles ne peuvent pas avoir d'influence sur ke déroulement du script.
Peux-tu montrer le script complet de la page qui a ce problème ?
0
c_wolf Messages postés 7 Date d'inscription vendredi 12 septembre 2008 Statut Membre Dernière intervention 1 février 2009
13 sept. 2008 à 01:02
Merci pour ta réponse, et voilà le seul endroit où je fais référence aux variables SESSION concernant le membre :

<?php
if ($_SESSION['profil']['icone'] != "")
{
print ('<a href="modif_membre.php"><img src="images/avatar/'. $_SESSION['profil']['icone'] .'" style="max-width:'. $avatar_max_width.'; max-height:'. $avatar_max_width.';" /></a>');
}

print ('<a href="modif_membre.php">'. $_SESSION['profil']['membre'] .'</a>');
print ('<br />');
print ('<a href="modif_membre.php">'. $_SESSION['profil']['niveau'] .'</a>');
print ('<br />');
print ('<a href="deco.php">Se déconnecter</a>');

?>

mais j'ai beau relire et relire .... je ne vois pas le soucis... J'espère qu tu le ou les verras...

encore merci
0
H3LP Messages postés 56 Date d'inscription jeudi 11 septembre 2008 Statut Membre Dernière intervention 5 novembre 2008 6
14 sept. 2008 à 16:12
Tu dis que c'est lors de l'affectation des variables $_SESSION['profil']['membre'] (...) que ça se produit. Es-tu sûr que la variable $_SESSION['profil'] existe ? je ne vois pas de contrôle dessus. En fait je pense que tu essai d'accéder à une case d'un tableau qui n'existe pas.
un : echo $_SESSION['profil'] ne te renverrais pas un undefined par hasard ?
0