Bonjour.
Je suis entrain faire un site pour une boîte et j'ai des soucis de cession.
Dans mon dossier "ReseauxSante" j'ai ma page index.php dans laquelle j'ai un menu.
les pages sont appelées avec include du genre :
Quand je me logg pas de problème. Le problème il est toujours pas là mais j'y viens.
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 <dt><a href="index.php?page=log"><img src="images/menu/identite.GIF" border="0" onMouseover="this.src='images/menu/identiteh.GIF'"; onMouseout="this.src='images/menu/identite.GIF'"></a></dt> <?php if (!isset($_GET['page'])) $page= 'accueil'; else $page= $_GET['page']; switch($page) { //menu horizontal case 'accueil': include ('accueil.php');break; case 'contacts': include ('contacts.php');break; //menu vertical case 'log': include ('membres/login.php');break; case 'change_passwd': include ('membres/change_passwd.php');break; case 'inscription': include ('membres/membre_nouveau.php');break; case 'enreg_nouveau': include ('membres/enreg_nouveau.php');break; case 'enreg_nouveau1': include ('membres/enreg_nouveau1.php');break; case 'abo': include ('membres/abonnements.php');break; case 'reseaux1': include ('reseaux_1.php');break; case 'reseaux': include ('reseaux.php');break; } ?>
ma page log.php qui est dans un sous dossier "Membres"
Dans mon menu, je clic sur un bouton où il faut saisir un code personnel pour avoir accès à des renseignements payants.
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
49
50
51
52
53
54
55
56 <?php require('connect.php'); require_once('fns_validation_data.php'); ?> <p style="margin-left:10px; margin-top:10px"><br> <!-- S'identifier --> <form name="identite" method="Post"> <table bgcolor='#cccccc' align="center"> <colgroup width=150> <colgroup width=150> <tr> <td colspan=2 class=tdmin align="center"><br>Identifiez-vous ici</td> <tr> <td class=tdmin align="right">Nom utilisateur :</td> <td><input type="text" name="username"></td></tr> <tr> <td class=tdmin align="right">Mot de passe :</td> <td><input type="password" name='password'></td></tr> <tr> <td colspan=2 align="center"> <input type="submit" value="Valider" style="height:20px; font-size:9px"></td></tr> <tr> <td class=tdmin><a href="forgot_form.php">Mot de passe oublié ?</a><br><br></td> <td class=tdmin><a href="index.php?page=change_passwd">Changer le mot de passe</a><br><br></td> </tr> </table> <?php $val=''; if(isset($_POST['username'])) $ident=$_POST['username']; else $ident = ""; if(isset($_POST['password'])) $passwd=$_POST['password']; else $passwd = ""; $passwd = Sha1($passwd); // on vérifie si l'identifiant et le mot de passe sont renseignés if (( !empty($_POST['username']) && !empty($_POST['password']))) { $sql = mysql_query("SELECT * FROM admin WHERE nom_utilisateur='".$ident."' AND password='".$passwd."'",$connexion); if (mysql_num_rows($sql) > 0) { $val="ok"; $res = mysql_fetch_array($sql); $utilisateur = $res['nom_utilisateur']; $acces = $res['acces']; $_SESSION['utilisateur'] = $utilisateur; $_SESSION['acces'] = $acces; echo '<p align="center">Bonjour <b>'. $utilisateur .'</b> vous êtes connecté(e).'; } else { $val="rien"; } } if ($val=='rien'){ echo '<p align="center"><font face="verdana" size="1" color="red"><b>Nom utilisateur ou mot de passe invalide</b></font>'; } ?> </form>
Le problème il est là: Même si le code est correcte j'ai des messages d'erreurs et je ne sais pas comment les traiter.
le code de ma page Reseaux_1.php où le code d'accès est demandé:
Quan l'accès est correct ça doit ouvrir une page reseaux.php
le messages affiché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
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101 <?php // connection à la base de données require ('connect.php'); ?> <style type="text/css"> .hidden { display: none; } .visible { display: inline; } </style> <Script Language="Javascript"> function hide(identifiant) { if (document.getElementById(identifiant).className == "hidden") { document.getElementById(identifiant).className = "visible"; } else { document.getElementById(identifiant).className = "visible"; document.getElementById(identifiant).className = "hidden"; } } </script> <p align="center"> <form name="interro" method="Post" action="index.php?page=reseaux"> <font color="black" size="2" face="Tahoma" > <table border="0" style="margin-left:40px; margin-top:20px;"> <tr> <td align="left"><font face="verdana" size="1"> Pour accéder à la liste des réseaux vous devez avoir souscrit un <a href="index.php?page=abo">abonnement</a> aux réseaux. <br><br> Pour accéder à la liste, entrer le code confidentiel qui vous a été communiqué puis valider.<br><br> </td> <tr> <td align="left"><font face="verdana" size="1">Code confidentiel : <input type="text" name="codeconf" value=""> <input type="submit" name="valid" value="Valider" style="height:20px; font-size:9px"> <br><br> </td> </tr> <tr> <td><font face="verdana" size="1">Code d'accès oublié ? <span class="choix" onclick="hide('mondiv')"><font color="blue">cliquer ici</span></td> </table> <!-- acces aux réseaux //--> <?php $val=''; if(isset($_POST['codeconf'])) $code=$_POST['codeconf']; else $code = ""; // on vérifie si l'identifiant et le mot de passe sont renseignés if (!empty($_POST['codeconf'])) { $sql = mysql_query("SELECT * FROM admin WHERE acces ='".$code."'",$connexion); if (mysql_num_rows($sql) > 0) { $val="ok"; $res = mysql_fetch_array($sql); $acces = $res['acces']; } else { $val="rien"; } } if ($val === "rien"){ ?><font face="verdana" size="1" color="red"><b>Code d'accès invalide</b></font><? } ?> </form> <!-- form pour récupérer le code utilisateur //--> <div id="mondiv" class="hidden"> <form name="oubli" method="POST" action="index.php?page=reseaux"> <table bgcolor="gold" style="margin-left:210px; margin-top:20px;"> <tr> <td><font face="verdana" size="2"> <?php //le nom utilisateur doit être récupéré lors de l'ouverture de session (par cookie?) $username='philippe'; $utilisateur = $username; $result_sql = mysql_query('Select * From admin ',$connexion); $nombreligne = mysql_num_rows($result_sql); for ($i = 0; $i < $nombreligne; $i++) { $code = mysql_result($result_sql,$i,"acces"); $utilisateurbdd = mysql_result($result_sql,$i,"nom_utilisateur"); if ($utilisateurbdd === $username){ echo "Votre code confidentiel :<b> $code"; } } ?> </b></td> </tr> </table> </form> </div>
Je sais que c'est un peu long mais j'essaie de fournir le maximum d'infos.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Warning: session_start(): Cannot send session cookie - headers already sent by (output started at c:\weblocal\sites\reseauxsante\index.php:10) in c:\weblocal\sites\reseauxsante\reseaux.php on line 2 Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\weblocal\sites\reseauxsante\index.php:10) in c:\weblocal\sites\reseauxsante\reseaux.php on line 2 Warning: Cannot modify header information - headers already sent by (output started at c:\weblocal\sites\reseauxsante\index.php:10) in c:\weblocal\sites\reseauxsante\reseaux.php on line 4
Infos supplémentaires :
ma page login.php est dans un sous dossier et les pages reseaux_1.php et reseaux sont dans le dossier principal.
Est ce là le problème?





Répondre avec citation


Partager