Problème de session
Résolu
killermano66
Messages postés
233
Date d'inscription
Statut
Membre
Dernière intervention
-
Mikey_UFC Messages postés 312 Date d'inscription Statut Membre Dernière intervention -
Mikey_UFC Messages postés 312 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai apparement un soucis avec les session. Celles-ci me transmette les données sur une page mais non sur plusieur:
Je vous met les trois parties de mon script en sachant que la page posant problème est la dernière (deconnection.php), la page recup donnees.php m'affiche bien le contenue de ma session.
1) connection.php :
<?php
session_start();
//Si les variables existent
if (isset($_POST['login']) AND (isset($_POST['psw']))) {
//On stocke les valeurs entrées dans le formulaire à l'interieur de variable $login et $pwd
$login = $_POST['login'];
$psw = $_POST['psw'];
$_SESSION['login']=$_POST['login'];
}
?>
<html>
<head>
<title>STID.PERP-UNIV Carcassonne</title>
</head>
<body>
<form action="recup_donnees.php" method="post">
<h3>Login</h3>
<input type="text autocomplete='off'" name="login" /><br />
<h3>Mot de passe</h3>
<input type="password autocomplete='off'" name="psw" /><br />
<input type="submit" value="Validez" />
</form></body>
</html>
2) recup_donnees.php :
<?php
session_start();
$login = $_POST['login'];
$psw = $_POST['psw'];
$_SESSION['login']=$_POST['login'];
@mkdir("stid/",0777);
@mkdir("stid/$login" ,0777);
@mkdir("stid/$login/P/" ,0777);
@mkdir("stid/$login/K/" ,0777);
echo "<b>Vous êtes identifié sous :</b> ";
echo $_SESSION['login'];
?>
<br>
<a href="./stid/<?php echo $login; ?>">Gestionnaire de fichiers</a>
<p><a href="deconection.php">Se déconnecter</a></p>
3) Page deconection.php (qui pose problème ) :
<?php
session_start();
$_SESSION['login']=$_POST['login'];
$login=$_SESSION['login'];
echo $login;
@rmdir("stid/$login/P/");
@rmdir("stid/$login/K/");
@rmdir("stid/$login");
@rmdir('stid/');
?>
A noter qu'il n'ya volontairement pas de session_destroy() et de redirection, le echo est là pour tester si la variable $login qui contiens les infos de ma session fonctionne ou pas, pour le moment de n'est pas le cas ce qui pose donc aussi un problème au niveau de rmdir, logique.
Voilà, je ne trouve pas de solution à ce problème qui bloque pour le moment totalement mon projet. Je vous remercis d'avance pour votre aide future.
@+
J'ai apparement un soucis avec les session. Celles-ci me transmette les données sur une page mais non sur plusieur:
Je vous met les trois parties de mon script en sachant que la page posant problème est la dernière (deconnection.php), la page recup donnees.php m'affiche bien le contenue de ma session.
1) connection.php :
<?php
session_start();
//Si les variables existent
if (isset($_POST['login']) AND (isset($_POST['psw']))) {
//On stocke les valeurs entrées dans le formulaire à l'interieur de variable $login et $pwd
$login = $_POST['login'];
$psw = $_POST['psw'];
$_SESSION['login']=$_POST['login'];
}
?>
<html>
<head>
<title>STID.PERP-UNIV Carcassonne</title>
</head>
<body>
<form action="recup_donnees.php" method="post">
<h3>Login</h3>
<input type="text autocomplete='off'" name="login" /><br />
<h3>Mot de passe</h3>
<input type="password autocomplete='off'" name="psw" /><br />
<input type="submit" value="Validez" />
</form></body>
</html>
2) recup_donnees.php :
<?php
session_start();
$login = $_POST['login'];
$psw = $_POST['psw'];
$_SESSION['login']=$_POST['login'];
@mkdir("stid/",0777);
@mkdir("stid/$login" ,0777);
@mkdir("stid/$login/P/" ,0777);
@mkdir("stid/$login/K/" ,0777);
echo "<b>Vous êtes identifié sous :</b> ";
echo $_SESSION['login'];
?>
<br>
<a href="./stid/<?php echo $login; ?>">Gestionnaire de fichiers</a>
<p><a href="deconection.php">Se déconnecter</a></p>
3) Page deconection.php (qui pose problème ) :
<?php
session_start();
$_SESSION['login']=$_POST['login'];
$login=$_SESSION['login'];
echo $login;
@rmdir("stid/$login/P/");
@rmdir("stid/$login/K/");
@rmdir("stid/$login");
@rmdir('stid/');
?>
A noter qu'il n'ya volontairement pas de session_destroy() et de redirection, le echo est là pour tester si la variable $login qui contiens les infos de ma session fonctionne ou pas, pour le moment de n'est pas le cas ce qui pose donc aussi un problème au niveau de rmdir, logique.
Voilà, je ne trouve pas de solution à ce problème qui bloque pour le moment totalement mon projet. Je vous remercis d'avance pour votre aide future.
@+
A voir également:
- Vac n'est pas en mesure de vérifier votre session de jeu
- Mesure en ligne - Guide
- Verifier compatibilite windows 11 - Guide
- 94 jeu - Télécharger - Puzzle & Réflexion
- Vérifier si mot de passe piraté - Guide
- Jeux de moto: jeu de course 3d - Télécharger - Course
11 réponses
Comme ça plutôt pour deconnection.php
<?php session_start(); $login=$_SESSION['login']; echo $login; @rmdir("stid/$login/P/"); @rmdir("stid/$login/K/"); @rmdir("stid/$login"); @rmdir('stid/'); ?>
Salut,
Pourquoi tu fais
Pourquoi tu fais
$_SESSION['login']=$_POST['login'];dans deconnection.php ta valeur est déjà dans $_SESSION['login'] donc tu l'écrases avec $_POST qui est vide.
<?php
session_start();
$_SESSION['login']=$_POST['login'];
$login=$_SESSION['login'];
echo $login;
@rmdir("stid/$login/P/");
@rmdir("stid/$login/K/");
@rmdir("stid/$login");
@rmdir('stid/');
?>
si ta session est ouverte pourquoi es ce que tu reécris "$_SESSION['login']=$_POST['login']; "
la session a déjà stocké l'information donc elle peut la ressortir a tous moment juste avec echo $login.
avec $_SESSION['login']=$_POST['login']; tu reecris dans ta variable du moins il ne semble
session_start();
$_SESSION['login']=$_POST['login'];
$login=$_SESSION['login'];
echo $login;
@rmdir("stid/$login/P/");
@rmdir("stid/$login/K/");
@rmdir("stid/$login");
@rmdir('stid/');
?>
si ta session est ouverte pourquoi es ce que tu reécris "$_SESSION['login']=$_POST['login']; "
la session a déjà stocké l'information donc elle peut la ressortir a tous moment juste avec echo $login.
avec $_SESSION['login']=$_POST['login']; tu reecris dans ta variable du moins il ne semble
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Salut,
Donc oui exactement l'erreur au niveau de la transmition des variables venait de ça, merci beaucoup.
En revanche, la partie :
@rmdir("stid/$login/P/");
@rmdir("stid/$login/K/");
@rmdir("stid/$login");
@rmdir('stid/');
Ne m'efface rien du tout alors que :
@rmdir("stid/$login/P/");
@rmdir("stid/$login/K/");
@rmdir("stid/$login");
@rmdir('stid/');
Me créé bien les dossiers. Si tu as une idée, merci encore.
Donc oui exactement l'erreur au niveau de la transmition des variables venait de ça, merci beaucoup.
En revanche, la partie :
@rmdir("stid/$login/P/");
@rmdir("stid/$login/K/");
@rmdir("stid/$login");
@rmdir('stid/');
Ne m'efface rien du tout alors que :
@rmdir("stid/$login/P/");
@rmdir("stid/$login/K/");
@rmdir("stid/$login");
@rmdir('stid/');
Me créé bien les dossiers. Si tu as une idée, merci encore.
Salut platypus69,
Disons que si j'enlève le
$login=$_SESSION['login'];
et que je met simplement sur ma page
echo $login;
rien ne s'affiche.
Si tu as une explication, merci ;)
Disons que si j'enlève le
$login=$_SESSION['login'];
et que je met simplement sur ma page
echo $login;
rien ne s'affiche.
Si tu as une explication, merci ;)
Ouep, c'est exactement ce que je fais, le echo fontionne maintenant. Mais les rmdir censé supprimer les répertoires ne fonctionnent pas.
Merci
Merci
Normale car il ne sait pas dans quoi il doit chercher $login donc a ne surtout pas enlever. je te parlais juste de suppriner la ligne $POST
C'est ce que j'ai fait, voilà mon code :
<?php
session_start();
$login=$_SESSION['login'];
echo $login;
@rmdir("stid/$login/K/" ,0777);
@rmdir("stid/$login/P/" ,0777);
@rmdir("stid/$login/" ,0777);
@rmdir('stid/');
?>
Mais j'ai l'impression que rmdir ne lis pas la variable $login qui contient le nom d'utilisateur et donc les répertoires à supprimer. Et ce qui me semble bizzare c'est que mkdir qui créé les répertoires arrive à lire $login.
Merci encore.
<?php
session_start();
$login=$_SESSION['login'];
echo $login;
@rmdir("stid/$login/K/" ,0777);
@rmdir("stid/$login/P/" ,0777);
@rmdir("stid/$login/" ,0777);
@rmdir('stid/');
?>
Mais j'ai l'impression que rmdir ne lis pas la variable $login qui contient le nom d'utilisateur et donc les répertoires à supprimer. Et ce qui me semble bizzare c'est que mkdir qui créé les répertoires arrive à lire $login.
Merci encore.
Les dossier sont pour l'instant vide oui, le but étant de monter les données situé sur un serveur distant grâce a exec(smbmount ....).
En revanche la commande exec(rm -r "stid"); me renvoie une parse error :
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /var/www/deconection.php on line 6
Merci.
En revanche la commande exec(rm -r "stid"); me renvoie une parse error :
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /var/www/deconection.php on line 6
Merci.