Bonjour à tous,
J'ai repris une FAQ disponible sur ce site concernant l'utilisation des sessions dans un contexte d'authentification avec mot de passe.
Le fichier principal est login.php, qui comprend une FORM avec deux champs (login et mot de passe) :
J'ai aussi un auth.php3 qui fait des tests, qui appelle le fichier login original si il y a une erreur et qui affiche une page protégée si succès.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 <FORM id='log' ACTION="auth.php3" method="POST" onSubmit='javascript:submit_pass();'> <TABLE CELLSPACING="0" BORDER="0"> <TR> <TD WIDTH=20% ALIGN="LEFT" CLASS=ver012> Adresse e-mail : \n"; </TD> <TD ALIGN="CENTER" CLASS=ver012> <INPUT TYPE="text" CLASS="ver012" NAME='login'> </TD> </TR> <TR> <TD WIDTH=20% ALIGN="LEFT" CLASS=ver012> Code secret associé : \n"; </TD> <TD ALIGN="CENTER" CLASS=ver012> <INPUT TYPE="password" CLASS="ver012" NAME='passwd'> </TD> </TR> </TABLE> <INPUT type="submit" VALUE="Soumettre ces informations"> </FORM>
Le problème, c'est que je voudrais envoyer un code d'erreur au fichier loginphprs.php3 suivant les différents cas. Ce code d'erreur serait affiché dans cette page originale.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48 <?php session_start(); if (($_POST['md5']!='') && ($_POST['login']!='')) { $gd="\""; $sg="'"; $login=$_POST['login']; $md5=$_POST['md5']; $host='localhost'; $link = mysql_connect($host,"toto","toto"); $ret = mysql_select_db("toto",$link); $query = "SELECT PHOTO_NOM, PHOTO_PATH, CODE_RECH FROM PHOTO_PERS WHERE LOGIN_RECH=".$gd.$login.$gd." AND PHOTO_ACTIVE='Y' ORDER BY NUM_ENREG"; $result = mysql_query($query); if (mysql_num_rows($result) > 0) { $data = mysql_fetch_assoc($result); $password=$data['CODE_RECH']; if ($md5==md5($password)) { $_SESSION['last_access']=time(); $_SESSION['ipaddr']=$_SERVER['REMOTE_ADDR']; $_SESSION['user']=$login; header("Location: ./frmphprs_new.php3"); die(); } else { header("Location:./loginphprs.php3"); die(); } } else { //echo "Rien trouve dans la base...<br>\n"; header("Location: ./loginphprs.php3"); die(); } } else { header("Location: ./loginphprs.php3"); die(); } //echo "</BODY>\n"; //echo "</HTML>\n"; ?>
Dois-je ajouter une info de session ? Dois-je créer une forme dans auth.php3 ? Dois-je implémenter un cookie ?
Bref, là, je suis sec...
Merci d'avance de vos conseils.
Cordialement,
Philippe.
Partager