Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Akades
Lea wrote:
Bonsoir,
Bonjour,
J'ai une erreur dans mon script mais j'arrive pas à voir où :
<? session_start(); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title></title> </head> <body> <? if(!session_is_registered("login") && !session_is_registered("pass")){
Meme si ca marchait, ce test là ne suffirait pas pour déterminer si on le droit d'acceder à la page. Il faut plutot tester si $login et $pass sont vides. Car des variables session vides peuvent être enregistrées en session.
Je suppose que l'evaluation de login/pass pour entrer dans le site est faite avant, sur une autre page. C'est à ce moment là que j'utilise session_is_register().
Ex : // Debut d'evaluation des login/passwd // // Recherche des login/pass correspondant dans la base de donnée // ou un fichier text ... $login_db=$rows["login"]; $pass_db=$rows["pass"];
$login_ok=$login==$login_db; $passwd_ok=$pass==$pass_db; // Fin d'evaluation
Une fois les variables session affectées correctement, on peut simplement tester si elles sont vides pour vérifier qu'on est connecté ou non.
Ex : if($_SESSION["ses_login"]=="" && $_SESSION["ses_pass"]=="") echo "<p><b> Vous n'avez pas le droit d'accéder à cette page! </b></p>"; exit; }
Merci.
Pas de quoi.
Léa
David
Lea wrote:
Bonsoir,
Bonjour,
J'ai une erreur dans mon script mais j'arrive pas à voir où :
<?
session_start();
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title></title>
</head>
<body>
<?
if(!session_is_registered("login") && !session_is_registered("pass")){
Meme si ca marchait, ce test là ne suffirait pas pour déterminer si on le
droit d'acceder à la page. Il faut plutot tester si $login et $pass sont
vides. Car des variables session vides peuvent être enregistrées en
session.
Je suppose que l'evaluation de login/pass pour entrer dans le site est faite
avant, sur une autre page. C'est à ce moment là que j'utilise
session_is_register().
Ex :
// Debut d'evaluation des login/passwd
//
// Recherche des login/pass correspondant dans la base de donnée
// ou un fichier text
...
$login_db=$rows["login"];
$pass_db=$rows["pass"];
$login_ok=$login==$login_db;
$passwd_ok=$pass==$pass_db;
// Fin d'evaluation
J'ai une erreur dans mon script mais j'arrive pas à voir où :
<? session_start(); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title></title> </head> <body> <? if(!session_is_registered("login") && !session_is_registered("pass")){
Meme si ca marchait, ce test là ne suffirait pas pour déterminer si on le droit d'acceder à la page. Il faut plutot tester si $login et $pass sont vides. Car des variables session vides peuvent être enregistrées en session.
Je suppose que l'evaluation de login/pass pour entrer dans le site est faite avant, sur une autre page. C'est à ce moment là que j'utilise session_is_register().
Ex : // Debut d'evaluation des login/passwd // // Recherche des login/pass correspondant dans la base de donnée // ou un fichier text ... $login_db=$rows["login"]; $pass_db=$rows["pass"];
$login_ok=$login==$login_db; $passwd_ok=$pass==$pass_db; // Fin d'evaluation
Une fois les variables session affectées correctement, on peut simplement tester si elles sont vides pour vérifier qu'on est connecté ou non.
Ex : if($_SESSION["ses_login"]=="" && $_SESSION["ses_pass"]=="") echo "<p><b> Vous n'avez pas le droit d'accéder à cette page! </b></p>"; exit; }
Merci.
Pas de quoi.
Léa
David
Lea
Bon, je reposte sous mon post vu que depuis hier ça prend pas...en espérant avoir plus de chance avec le serveur
J'ai une erreur dans mon script mais j'arrive pas à voir où :
<? session_start(); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title></title> </head> <body> <? if(!session_is_registered("login") && !session_is_registered("pass")){
Meme si ca marchait, ce test là ne suffirait pas pour déterminer si on le droit d'acceder à la page. Il faut plutot tester si $login et $pass sont vides. Car des variables session vides peuvent être enregistrées en session.
Je suppose que l'evaluation de login/pass pour entrer dans le site est faite
avant, sur une autre page. C'est à ce moment là que j'utilise session_is_register().
Ex : // Debut d'evaluation des login/passwd // // Recherche des login/pass correspondant dans la base de donnée // ou un fichier text ... $login_db=$rows["login"]; $pass_db=$rows["pass"];
$login_ok=$login==$login_db; $passwd_ok=$pass==$pass_db; // Fin d'evaluation
Une fois les variables session affectées correctement, on peut simplement tester si elles sont vides pour vérifier qu'on est connecté ou non.
Ex : if($_SESSION["ses_login"]=="" && $_SESSION["ses_pass"]=="") echo "<p><b> Vous n'avez pas le droit d'accéder à cette page! </b></p>";
exit; }
page1.php <? session_start(); $login=$_POST["login"]; $pass=$_POST["pass"]; ?> <html> <head> <title>Untitled</title> </head> <body> <? if(empty($login) || empty($pass)){ echo "Vous devez rentrer votre login et votre mot de passe!"; ... exit; } ... if($auth==2){ echo "Login et/ou mot de passe incorrect(s) !"; ... exit; }else{ if($auth==1){ session_register("login"); echo "<p>Bienvenue $login<p>"; ...} } ?> </body> </html>
page2.php <? session_start(); ?> <html> <head> <title></title> </head> <body> <? if(!session_is_registered("login") && !session_is_registered("pass")){ echo "<p><b> Vous n'avez pas le droit d'accéder à cette page! </b></p>"; exit; }else{ echo "<h2> Veuillez entrer les informations suivantes : </h2>"; ... ... echo "</form>"; } ?> </body> </html>
Le login et pass sont bien vérifiés en page1.php Ce que je voudrais c'est juste récupérer en page2.php le login et le pass donc vérifier que la session précédée sur page1.php est valide. Pourquoi l'utilisation de : !session_is_registered en page2.php n'est pas une bonne solution?
Merci.
Bon, je reposte sous mon post vu que depuis hier ça prend pas...en espérant
avoir plus de chance avec le serveur
J'ai une erreur dans mon script mais j'arrive pas à voir où :
<?
session_start();
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title></title>
</head>
<body>
<?
if(!session_is_registered("login") && !session_is_registered("pass")){
Meme si ca marchait, ce test là ne suffirait pas pour déterminer si on le
droit d'acceder à la page. Il faut plutot tester si $login et $pass sont
vides. Car des variables session vides peuvent être enregistrées en
session.
Je suppose que l'evaluation de login/pass pour entrer dans le site est
faite
avant, sur une autre page. C'est à ce moment là que j'utilise
session_is_register().
Ex :
// Debut d'evaluation des login/passwd
//
// Recherche des login/pass correspondant dans la base de donnée
// ou un fichier text
...
$login_db=$rows["login"];
$pass_db=$rows["pass"];
$login_ok=$login==$login_db;
$passwd_ok=$pass==$pass_db;
// Fin d'evaluation
Une fois les variables session affectées correctement, on peut simplement
tester si elles sont vides pour vérifier qu'on est connecté ou non.
Ex :
if($_SESSION["ses_login"]=="" && $_SESSION["ses_pass"]=="")
echo "<p><b> Vous n'avez pas le droit d'accéder à cette
page! </b></p>";
exit;
}
page1.php
<?
session_start();
$login=$_POST["login"];
$pass=$_POST["pass"];
?>
<html>
<head>
<title>Untitled</title>
</head>
<body>
<?
if(empty($login) || empty($pass)){
echo "Vous devez rentrer votre login et votre mot de passe!";
...
exit;
}
...
if($auth==2){
echo "Login et/ou mot de passe incorrect(s) !";
...
exit;
}else{
if($auth==1){
session_register("login");
echo "<p>Bienvenue $login<p>";
...}
}
?>
</body>
</html>
page2.php
<?
session_start();
?>
<html>
<head>
<title></title>
</head>
<body>
<?
if(!session_is_registered("login") && !session_is_registered("pass")){
echo "<p><b> Vous n'avez pas le droit d'accéder à cette page! </b></p>";
exit;
}else{
echo "<h2> Veuillez entrer les informations suivantes : </h2>";
...
...
echo "</form>";
}
?>
</body>
</html>
Le login et pass sont bien vérifiés en page1.php
Ce que je voudrais c'est juste récupérer en page2.php le login et le pass
donc vérifier que la session précédée sur page1.php est valide.
Pourquoi l'utilisation de : !session_is_registered en page2.php n'est pas
une bonne solution?
Bon, je reposte sous mon post vu que depuis hier ça prend pas...en espérant avoir plus de chance avec le serveur
J'ai une erreur dans mon script mais j'arrive pas à voir où :
<? session_start(); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title></title> </head> <body> <? if(!session_is_registered("login") && !session_is_registered("pass")){
Meme si ca marchait, ce test là ne suffirait pas pour déterminer si on le droit d'acceder à la page. Il faut plutot tester si $login et $pass sont vides. Car des variables session vides peuvent être enregistrées en session.
Je suppose que l'evaluation de login/pass pour entrer dans le site est faite
avant, sur une autre page. C'est à ce moment là que j'utilise session_is_register().
Ex : // Debut d'evaluation des login/passwd // // Recherche des login/pass correspondant dans la base de donnée // ou un fichier text ... $login_db=$rows["login"]; $pass_db=$rows["pass"];
$login_ok=$login==$login_db; $passwd_ok=$pass==$pass_db; // Fin d'evaluation
Une fois les variables session affectées correctement, on peut simplement tester si elles sont vides pour vérifier qu'on est connecté ou non.
Ex : if($_SESSION["ses_login"]=="" && $_SESSION["ses_pass"]=="") echo "<p><b> Vous n'avez pas le droit d'accéder à cette page! </b></p>";
exit; }
page1.php <? session_start(); $login=$_POST["login"]; $pass=$_POST["pass"]; ?> <html> <head> <title>Untitled</title> </head> <body> <? if(empty($login) || empty($pass)){ echo "Vous devez rentrer votre login et votre mot de passe!"; ... exit; } ... if($auth==2){ echo "Login et/ou mot de passe incorrect(s) !"; ... exit; }else{ if($auth==1){ session_register("login"); echo "<p>Bienvenue $login<p>"; ...} } ?> </body> </html>
page2.php <? session_start(); ?> <html> <head> <title></title> </head> <body> <? if(!session_is_registered("login") && !session_is_registered("pass")){ echo "<p><b> Vous n'avez pas le droit d'accéder à cette page! </b></p>"; exit; }else{ echo "<h2> Veuillez entrer les informations suivantes : </h2>"; ... ... echo "</form>"; } ?> </body> </html>
Le login et pass sont bien vérifiés en page1.php Ce que je voudrais c'est juste récupérer en page2.php le login et le pass donc vérifier que la session précédée sur page1.php est valide. Pourquoi l'utilisation de : !session_is_registered en page2.php n'est pas une bonne solution?
Merci.
Akades
Lea wrote:
Bon, je reposte sous mon post vu que depuis hier ça prend pas...en espérant avoir plus de chance avec le serveur ...
Le login et pass sont bien vérifiés en page1.php Ce que je voudrais c'est juste récupérer en page2.php le login et le pass donc vérifier que la session précédée sur page1.php est valide. Pourquoi l'utilisation de : !session_is_registered en page2.php n'est pas une bonne solution?
J'ai jamais vraiment compris pourquoi l'enregistrement et la récupération d'une variable session se faisait mal. Donc j'utilise $_SESSION[] à la place. Je pense que session_register() permet d'initialiser une variable session sans vraiment lui attribuer de valeur. D'où la méthode que j'utilise dans ce cas :
Le préfixe 'ses_' permet d'y voir plus clair et accessoirement de conserver et récupérer les valeurs correctement. Avec ça, aucun problème, $ma_variable est toujours initialisée et la session aussi.
Personnellement, je fais toute la séquence de login/pass+vérification en une page avec session. Si le login est mauvais on boucle sur la page, si il est bon on renvoit a la page suivante.
Merci.
David
Lea wrote:
Bon, je reposte sous mon post vu que depuis hier ça prend pas...en
espérant avoir plus de chance avec le serveur
...
Le login et pass sont bien vérifiés en page1.php
Ce que je voudrais c'est juste récupérer en page2.php le login et le pass
donc vérifier que la session précédée sur page1.php est valide.
Pourquoi l'utilisation de : !session_is_registered en page2.php n'est pas
une bonne solution?
J'ai jamais vraiment compris pourquoi l'enregistrement et la récupération
d'une variable session se faisait mal. Donc j'utilise $_SESSION[] à la
place. Je pense que session_register() permet d'initialiser une variable
session sans vraiment lui attribuer de valeur. D'où la méthode que
j'utilise dans ce cas :
Le préfixe 'ses_' permet d'y voir plus clair et accessoirement de conserver
et récupérer les valeurs correctement. Avec ça, aucun problème,
$ma_variable est toujours initialisée et la session aussi.
Personnellement, je fais toute la séquence de login/pass+vérification en une
page avec session. Si le login est mauvais on boucle sur la page, si il est
bon on renvoit a la page suivante.
Bon, je reposte sous mon post vu que depuis hier ça prend pas...en espérant avoir plus de chance avec le serveur ...
Le login et pass sont bien vérifiés en page1.php Ce que je voudrais c'est juste récupérer en page2.php le login et le pass donc vérifier que la session précédée sur page1.php est valide. Pourquoi l'utilisation de : !session_is_registered en page2.php n'est pas une bonne solution?
J'ai jamais vraiment compris pourquoi l'enregistrement et la récupération d'une variable session se faisait mal. Donc j'utilise $_SESSION[] à la place. Je pense que session_register() permet d'initialiser une variable session sans vraiment lui attribuer de valeur. D'où la méthode que j'utilise dans ce cas :
Le préfixe 'ses_' permet d'y voir plus clair et accessoirement de conserver et récupérer les valeurs correctement. Avec ça, aucun problème, $ma_variable est toujours initialisée et la session aussi.
Personnellement, je fais toute la séquence de login/pass+vérification en une page avec session. Si le login est mauvais on boucle sur la page, si il est bon on renvoit a la page suivante.