sauf que tu ne comprends pas ce que tu fais...
Tu compares... le MEME mot de passe... en clair / crypté !
Code : Sélectionner tout - Visualiser dans une fenêtre à part password_verify($pass, $pass_crypte)
sauf que tu ne comprends pas ce que tu fais...
Tu compares... le MEME mot de passe... en clair / crypté !
Code : Sélectionner tout - Visualiser dans une fenêtre à part password_verify($pass, $pass_crypte)
<?php
// Voir l'exemple fourni sur la page de la fonction password_hash()
// pour savoir d'où cela provient.
$hash = '$2y$07$BCryptRequires22Chrcte/VlQH0piJtjXl.0t1XkA8pw9dMXTpOq';
if (password_verify('rasmuslerdorf', $hash)) {
echo 'Le mot de passe est valide !';
} else {
echo 'Le mot de passe est invalide.';
}
?>
ben justement c'est ce qui est indiquer sur le tuto ....$options = [
'cost' => 12,
];
echo password_hash("rasmuslerdorf", PASSWORD_BCRYPT, $options)."\n";
?>
Il faut l'utiliser pour COMPARER AVEC les mots de pass ENREGISTRES dans le fichier !
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 $pass_crypte = password_hash( $pass_entré_dans_le_formulaire_de_connexion ); // 1/ on parcourt le fichier ligne par ligne foreach(ligne_dans_le_fichier) { // 2/ on cherche si le login matche une ligne if( $login_de_la_ligne_du_fichier == $login_entré_dans_le_formulaire_de_connexion ) { echo 'On a un gagnant !'; // 3/ sur cette ligne, le mot de passe (hashé) if ( password_verify($pass_hashé_de_cette_ligne_du_fichier, $pass_crypte) ) { echo 'OK ! Sesame ouvre-toi !'; } } }
et cela fonctionne meme si le hashage ne donne pas la meme série de caractère ? car quand on regarde le résultats du var-dum que j'ai tester,
le mots de passe crypter de l inscription$2y$12$4YN.gMXeyjZTQ4DQBkOwLu7HPUmngHi5Ejql3JBQ/S6msAzco/Woy
ne ressemble pas au mots de passe crypter de la tentative de connexiondonc"$2y$12$YPTg03nhNPJqvDz/qX0jFeLBMMCVsrLg17mkzIBOSL/fOQj3z2eVG"
ne fonctionnera pas si ?if( $login_de_la_ligne_du_fichier == $login_entré_dans_le_formulaire_de_connexion )
{
Voilà maintenant que tu confonds "login" et "pass"...
Vas dormir...
lol oui je croit qu'il faut que je pose un peu le pc quelque temps la ^^" trop bouffer de html, php, css, js ^^"
j'ai vu la bêtise que j ai dit :p le if de comparaison est pour le login :p ^^" mea-culpa
ca donnerais donc cela ?
par contre je ne suis pas sur de la phrase avec foreach
et également (je l'est laisser) mais comment je peut récupérer
qui était en réponse a mon if login != pseudoelse
{
// Le visiteur n'a pas été reconnu comme étant membre de notre site. On utilise alors un petit javascript lui signalant ce fait
echo '<body onLoad="alert(\'Membre non reconnu...\')">';
// puis on le redirige vers la page d'accueil
echo '<meta http-equiv="refresh" content="0;URL=../acceuil.php">';
}
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 <?php $options = [ 'cost' => 12, ]; // on teste si nos variables sont définies if (isset($_POST['login'] ,$_POST['pass'])) { $login= $_POST['login']; $pass=$_POST['pass']; // on crypte le mot de passe $pass_crypte = password_hash($pass, PASSWORD_BCRYPT, $options); // Récupération des informations du fichier blocnote (fichier txt). $data = array(); // Tableau qui contiendra les données de façon structurée. $fileHandle = fopen("../../../txt/Fichier_user.txt", "r+"); // Ouverture du fichier "blocnote.txt" if ($fileHandle) { while (($buffer = fgets($fileHandle, 4096)) !== false) { // Lecture des lignes du fichier, une par une. list($nom, $prenom, $adresse, $bday, $mail, $mot_de_passe_crypte, $liste, $sexe) = explode('|', $buffer); // Séparation des données de la ligne en cours en fonction du caractère "|". $data = array('nom'=>$nom, 'prenom' => $prenom,'bday' => $bday, 'mail' => $mail,'mot_de_passe_crypte' => $mot_de_passe_crypte, 'liste' =>$liste, 'sexe' =>$sexe); // Ajout d'un tableau dans notre tableau de données contenant le joueur et les prenom. // On définit un login et un mot de passe de base pour tester notre exemple. Cependant, vous pouvez très bien interroger votre base de données afin de savoir si le visiteur qui se connecte est bien membre de votre site $data['nom']; $data['mot_de_passe_crypte']; // on vérifie les informations du formulaire, à savoir si le pseudo saisi est bien un pseudo autorisé, de même pour le mot de passe foreach($data['nom'] as $login) ) { if( $login_de_la_ligne_du_fichier == $login_entré_dans_le_formulaire_de_connexion ) { // dans ce cas, tout est ok, on peut démarrer notre session // on la démarre :) session_start (); // on enregistre les paramètres de notre visiteur comme variables de session ($login et $pass) (notez bien que l'on utilise pas le $ pour enregistrer ces variables) $_SESSION['login'] = $_POST['login']; $_SESSION['pass_crypte'] = $pass_crypte; // on redirige notre visiteur vers une page de notre section membre header ('location: page_membre.php'); exit(); } else { echo 'Le mot de passe est invalide.'; } } else { // Le visiteur n'a pas été reconnu comme étant membre de notre site. On utilise alors un petit javascript lui signalant ce fait echo '<body onLoad="alert(\'Membre non reconnu...\')">'; // puis on le redirige vers la page d'accueil echo '<meta http-equiv="refresh" content="0;URL=../acceuil.php">'; } } fclose($fileHandle); // fermeture du fichier } } else { echo 'Les variables du formulaire ne sont pas déclarées.'; } ?>
bon ... vu que pour mon exam, le hash du mdp n'est pas forcement demandé.
j'ai décidé de le supprimé.
Le soucis est que mon code fonctionne si le membre est pas reconnu comme etant membre, mais si je met des valeurs corect je me retrouve avec :
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 <?php // on teste si nos variables sont définies if (isset($_POST['login'] ,$_POST['pass'])) { $login= $_POST['login']; $pass_crypte = $_POST['pass']; // Récupération des informations du fichier blocnote (fichier txt). $data = array(); // Tableau qui contiendra les données de façon structurée. $fileHandle = fopen("../../../txt/Fichier_user.txt", "r+"); // Ouverture du fichier "blocnote.txt" if ($fileHandle) { while (($buffer = fgets($fileHandle, 4096)) !== false) { // Lecture des lignes du fichier, une par une. list( $prenom, $nom, $adresse, $bday, $mail, $mot_de_passe_crypte, $liste, $sexe) = explode('|', $buffer); // Séparation des données de la ligne en cours en fonction du caractère "|". $data = array( 'prenom' => $prenom, 'nom'=>$nom, 'bday' => $bday, 'mail' => $mail, 'mot_de_passe_crypte' => $mot_de_passe_crypte, 'liste' =>$liste, 'sexe' =>$sexe); // Ajout d'un tableau dans notre tableau de données contenant le joueur et les prenom. // On définit un login et un mot de passe de base pour tester notre comparaison. $data['nom']; $data['mot_de_passe_crypte']; // on vérifie les informations du formulaire, à savoir si le pseudo saisi est bien un pseudo autorisé, de même pour le mot de passe if ( $data['mot_de_passe_crypte'] == $pass_crypte && $data['nom'] == $login) { // dans ce cas, tout est ok, on peut démarrer notre session // on la démarre :) session_start (); // on enregistre les paramètres de notre visiteur comme variables de session ($login et $pass) (notez bien que l'on utilise pas le $ pour enregistrer ces variables) $_SESSION['login'] = $_POST['login']; $_SESSION['pass_crypte'] = $pass_crypte; // on redirige notre visiteur vers une page de notre section membre header ('location:../../site_connection_user/acceuil_membre.php'); exit(); } else { // Le visiteur n'a pas été reconnu comme étant membre de notre site. On utilise alors un petit javascript lui signalant ce fait echo '<body onLoad="alert(\'Membre non reconnu...\')">'; // puis on le redirige vers la page d'accueil echo '<meta http-equiv="refresh" content="0;URL=../acceuil.php">'; } } fclose($fileHandle); // fermeture du fichier } } else { echo '<body onLoad="alert(\'Les variables du formulaire ne sont pas déclarées.\')">'; // puis on le redirige vers la page d'accueil echo '<meta http-equiv="refresh" content="0;URL=../acceuil.php">'; } ?>
Bonjour,
on peut voir quelques lignes du fichier "Fichier_user.txt" ?
Important : peux-tu aussi AMELIORER l'INDENTATION de ton code ???
On y verrait mieux...
mp|lol|mp|2016-04-06|lol@lol.fr|marre|chomeur|homme
doe|john|rue du codage|2016-04-12|adresse@hotmail.fr|motdepasse|chomeur|homme
doe|janne|rue de developpez|2016-04-12|mail@developpez.net|code|chomeur|homme
Ce n'est pas très sérieux...
Or, dans ton fichier, tu écris :
Code : Sélectionner tout - Visualiser dans une fenêtre à part list($nom, $prenom, ....
prenom|nom|...
Il faudrait savoir...
Pourquoi n'écris-tu pas quelques lignes SIGNIFICATIVES (même avec de faux noms..., mais que ça fasse "vrai") ?
reregarde j'ai modifier l indentation.
et oui j'ai modifier nom et prénom sur le poste qui sont pas bon vis a vis du code qui lui est dans le bon sens
j'ai aussi modifier le message avec le fichier txt pour que tu est plus de ligne
bon si je met les info de la 1er ligne j ai tjr la meme erreur
si je met celle d une autre ligne ca me dit nn reconnu
Bon.
Je t'ai réécrit tout le script.
1/ J'ai modifié le fichier text :
- J'ai ajouté le champ "pseudo" sur chaque ligne
- + mis le mot de passe juste après
Chaque ligne est de la forme :
Ex. Fichier_user.txt :
Code : Sélectionner tout - Visualiser dans une fenêtre à part pseudo|mdp|nom|prénom|adresse|.......
Code complet :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 jreaux62|123654|Reaux|Jerome|rue du codage|1967-03-15|jreaux62@dvp.com|devweb|homme aline59|frtg854f6|Durine|Anne-lise|avenue grnade|1986-04-12|mail@aline.net|secretaire|femme jambon|hsdh341dhf|Bon|Jean|rue de chez lui|2016-04-12|mail@cochon.net|charcutier|homme quidam|sdf865|Doe|John|nullepart|2016-04-12|mail@noone.net|sdf|homme
Tu remarqueras l'INDENTATION, propre et lisible...
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
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118 <?php if(session_id()=='') { session_start(); } // TOUJOURS EN HAUT DE FICHIER header('Content-type:text/html; charset=UTF-8'); // encodage UTF-8 // --------------------------------------- // TRAITEMENT du formulaire de connexion if (isset($_POST['login'], $_POST['pass'])) { if ( !empty($_POST['login']) && !empty($_POST['pass'])) { // ------------------------------ // au cas où, on efface les données user stockées unset($_SESSION['user']); $msg_erreur = ''; // --------------- $login = $_POST['login']; $pass_crypte = $_POST['pass']; // ------------------------------ $data = array(); // Tableau qui contiendra les données de façon structurée. // ------------------------------ // Récupération des informations du fichier. $fileHandle = fopen("../../../txt/Fichier_user.txt", "r+"); if ($fileHandle) { $index = 0; // Lecture des lignes du fichier, une par une. while (($buffer = fgets($fileHandle, 4096)) !== false) { // --------------- // Séparation des données de la ligne en cours en fonction du caractère "|". list( $pseudo, $mot_de_passe_crypte, $nom, $prenom, $adresse, $bday, $mail, $liste, $sexe) = explode('|', $buffer); // --------------- // tableau de données contenant les infos de la ligne en cours $data[$index] = array( 'pseudo' => $pseudo, 'mot_de_passe_crypte' => $mot_de_passe_crypte, 'nom' => $nom, 'prenom' => $prenom, 'bday' => $bday, 'mail' => $mail, 'liste' =>$liste, 'sexe' =>$sexe ); // --------------- // on vérifie les informations du formulaire, à savoir si le pseudo saisi est bien un pseudo autorisé, de même pour le mot de passe if ( $data[$index]['pseudo'] == $login && $data[$index]['mot_de_passe_crypte'] == $pass_crypte ) { // on enregistre les paramètres de notre visiteur comme variables de session ($login et $pass) $_SESSION['user']['login'] = $data[$index]['pseudo']; // $_SESSION['user']['pass_crypte'] = $pass_crypte; // NON !!!!! on n'enregistre JAMAIS les mots de passe dans des SESSION (ni ailleurs!!) $_SESSION['user']['mail'] = $data[$index]['mail']; $_SESSION['user']['bday'] = $data[$index]['bday']; $_SESSION['user']['sexe'] = $data[$index]['sexe']; var_dump($_SESSION['user']); // TEST // on redirige notre visiteur vers une page de notre section membre echo 'OK !! on redirige notre visiteur vers une page de notre section membre'; // TEST // header ('location:../../site_connection_user/acceuil_membre.php'); exit(); } // --------------- $index++; // on incrémente l'index } fclose($fileHandle); // fermeture du fichier } // ------------------------------ if ( empty($_SESSION['user']) ) { // Le visiteur n'a pas été reconnu comme étant membre de notre site. On utilise alors un petit javascript lui signalant ce fait $msg_erreur = 'Erreur : Membre non reconnu... Paramètres incorrects.'; // puis on RE-AFFICHE LE FORMULAIRE } // ------------------------------ } else { $msg_erreur = 'Erreur : Indiquer votre login et votre mot de passe.'; } } // --------------------------------------- ?> <!DOCTYPE HTML> <html lang="fr"> <head> </head> <body> <?php // --------------------------------------- // FORMULAIRE de CONNEXION // --------------------------------------- if ( !empty($msg_erreur) ){ echo ' <p style="color:red;">'.$msg_erreur.'</p>'; } ?> <form method="post" action=""> <h4> CONNEXION</h4> <p> <label>Login : <label><input type="text" name="login" /> </p> <p> <label>Mot de passe : <label><input type="pass" name="pass" /> </p> <p> <input type="submit" name="Connexion" /> </p> </form> </body> </html>
N.B. Je n'ai pas traité le cas "mot de passe hashé", un peu plus complexe.
vais aller tester
Parse error: syntax error, unexpected '$_SESSION' (T_VARIABLE) in C:\xampp\htdocs\projet-web-dynamique\PHP\elements_inchangeables\connexion\connexion.php on line 66je peut meme pas entrer une valeur ca m affiche ca des que je lance la page
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
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150 <?php function erreur($err='') { $mess=($err!='')? $err:'Une erreur inconnue s\'est produite'; exit('<p>'.$mess.'</p> <p>Cliquez <a href="./index.php">ici</a> pour revenir à la page d\'accueil</p></div></body></html>'); } ?> <?php if(session_id()=='') { session_start(); } // TOUJOURS EN HAUT DE FICHIER header('Content-type:text/html; charset=UTF-8'); // encodage UTF-8 // --------------------------------------- // TRAITEMENT du formulaire de connexion if (isset($_POST['login'], $_POST['pass'])) { if ( !empty($_POST['login']) && !empty($_POST['pass'])) { // ------------------------------ // au cas où, on efface les données user stockées unset($_SESSION['user']); $msg_erreur = ''; // --------------- $login = $_POST['login']; $pass_crypte = $_POST['pass']; // ------------------------------ $data = array(); // Tableau qui contiendra les données de façon structurée. // Récupération des informations du fichier blocnote (fichier txt). $fileHandle = fopen("../../../txt/Fichier_user.txt", "r+"); // ------------------------------ if ($fileHandle) { $index = 0; // Lecture des lignes du fichier, une par une. while (($buffer = fgets($fileHandle, 4096)) !== false) { // --------------- // Séparation des données de la ligne en cours en fonction du caractère "|". list( $nom, $mot_de_passe_crypte, $prenom, $adresse, $bday, $mail, $liste, $sexe) = explode('|', $buffer); // --------------- // tableau de données contenant les infos de la ligne en cours $data[$index] = array( 'nom' => $nom, 'mot_de_passe_crypte' => $mot_de_passe_crypte, 'prenom' => $prenom, 'bday' => $bday, 'mail' => $mail, 'liste' =>$liste, 'sexe' =>$sexe ); // --------------- // on vérifie les informations du formulaire, à savoir si le pseudo saisi est bien un pseudo autorisé, de même pour le mot de passe if ( $data[$index]['nom'] == $login && $data[$index]['mot_de_passe_crypte'] == $pass_crypte ) { // on enregistre les paramètres de notre visiteur comme variables de session ($login et $pass) $_SESSION['user']['login'] = $data[$index]['nom']; $_SESSION['user']['mail'] = $data[$index]['mail']; $_SESSION['user']['bday'] = $data[$index]['bday']; $_SESSION['user']['sexe'] = $data[$index]['sexe']; var_dump($_SESSION['user']); // TEST // on redirige notre visiteur vers une page de notre section membre header ('location:../../site_connection_user/acceuil_membre.php'); exit(); } // --------------- $index++; // on incrémente l'index } fclose($fileHandle); // fermeture du fichier } // ------------------------------ if ( empty($_SESSION['user']) ) { // Le visiteur n'a pas été reconnu comme étant membre de notre site. On utilise alors un petit javascript lui signalant ce fait $msg_erreur = 'Erreur : Membre non reconnu... Paramètres incorrects.'; // puis on RE-AFFICHE LE FORMULAIRE } // ------------------------------ } else { $msg_erreur = 'Erreur : Indiquer votre login et votre mot de passe.'; } } // --------------------------------------- ?> <!-- Déclaration du type de document --> <!DOCTYPE HTML> <html> <head> <title>Connexion</title> <meta charset="utf-8"> <link rel="stylesheet" type="text/css" href="../../../CSS/style_base.css" /> <script type="text/javascript" src="../../../JS/connexion.js"></script> </head> <body> <div id="fond"> <div id="contenu"> <!-- debut du contenu de la partie sombre --> <TABLE> <tbody> <?php // --------------------------------------- // FORMULAIRE de CONNEXION // --------------------------------------- if ( !empty($msg_erreur) ){ echo ' <p style="color:red;">'.$msg_erreur.'</p>'; } ?> <form method="post" action=""> <h4> CONNEXION</h4> <p> <label>Login : <label><input type="text" name="login" /> </p> <p> <label>Mot de passe : <label><input type="pass" name="pass" /> </p> <p> <input type="submit" name="Connexion" /> </p> </form> </tbody> </table> <!-- fin du contenu de la partie sombre --> </div> </div> </body> </html> <!-- debut du footer --> <?php include('footer.php'); ?> <!-- fin du footer -->
par contre j ai pas garder ton "pseudo" car cela m'oblige a modifier mon formulaire, puis le php qui intègre les info du formulaire
.... il manquer un ';' mdr
par contre je comprend toujours pas , ca me redirige vers acceuil_membre
mais au lieu de m afficher la page
j'ai :
..... c est bon ....Les variables ne sont pas déclarées.
c'est que je ne récupère plus le mdp donc ca ne fonctionner pas mdr
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 session_start (); // On récupère nos variables de session if (isset($_SESSION['login']) && isset($_SESSION['pass'])) {
Le mot de passe n'a rien à faire en session.
N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP
Je dois par la suite crée une page de profil, pour que les membres puissent voir et modifier leurs informations.
donc je voulais avoir également le mot de passe en plus des autres informations.
j'avais donc penser a faire quelque chose de ce style pour les pages accessible au membres:
mais j'ai cette fichu erreur de 'variables ne sont pas declarees '
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 <?php // On démarre la session (ceci est indispensable dans toutes les pages de notre section membre) session_start (); // On récupère nos variables de session if (isset($_SESSION['login']) && isset($_SESSION['pass']) && isset($_SESSION['mail']) && isset($_SESSION['liste']) && isset($_SESSION['sexe']) && isset($_SESSION['adresse']) && isset($_SESSION['bday']) && isset($_SESSION['prenom'])) { include('menu.php'); ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <link rel="stylesheet" type="text/css" href="../../CSS/style_base.css" /> </head> <body> <div id="fond"> <div id="contenu"> <!-- debut du contenu de la partie sombre --> <div class="barre_du_centre"> <table> <tbody> <center> </center> </tbody> </table> </div> <!-- fin du contenu de la partie sombre --> </div> </div> </body> </html> <!-- debut du footer --> <?php include('footer.php'); // fin du footer // } else { echo 'Les variables ne sont pas déclarées.'; } ?>
et meme si je met que
je l'est également =.="
Code : Sélectionner tout - Visualiser dans une fenêtre à part if (isset($_SESSION['login']))
quelqu'un aurait il une corde a me prêter ?
Bonjour,
jamais tu ne relis le code ?
Ca peut aider pour le COMPRENDRE...
Les SESSION s'appellent :
Et la SEULE chose à faire pour vérifier que le user est bien connecté, c'est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 $_SESSION['user']['login'] $_SESSION['user']['email'] ...
1/ créer un fichier "protect-membre.php" :
2/ mettre en début de chaque page membre :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 <?php if(session_id()=='') { session_start(); } // TOUJOURS EN HAUT DE SCRIPT header('Content-type:text/html; charset=UTF-8'); // encodage UTF-8 // -------------------------------------- // protection page membre // -------------------------------------- // si session vide = PAS connecté if( empty($_SESSION['user']['login']) ) // on redirige header('location:../index.php'); // OU redirection vers le formualire de CONNEXION ! exit; } // -------------------------------------- // sinon : membre CONNECTE : on peut continuer... // --------------------------------------
REMARQUE : session_start(); ne doit être déclaré QU'UNE FOIS.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <?php // protection page membre require(__DIR__.'/protect-membre.php'); // suite ................
Donc : puisqu'il est DEJA dans "protect-membre.php", => inutile de le RE-déclarer dans les autres fichiers DANS LESQUELS il est INCLUS.
Dernière modification par Invité ; 13/04/2016 à 15h24.
si j'ai essayer avec
mais je ne savais pas trop comment tourner la suite du code et cela ne donner rien donc je penser pas que c’était cela qui permettrais de faire fonctionner les sessions.
Code : Sélectionner tout - Visualiser dans une fenêtre à part <?php if(session_id()=='') { session_start(); } // TOUJOURS EN HAUT DE FICHIER
et comme je l'est écrit, je m’était inspiré de l'exemple du lien que j'ai fourni dans mon message précédent .
cela donnerais donc
egalement si par exemple je suis sur ma session,
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 <?php // protection page membre require(__DIR__.'/protect-membre.php'); // suite ................ include('menu.php'); ?> <!DOCTYPE html> <html> <head> <title>Acceuil</title> <meta charset="utf-8"> <link rel="stylesheet" type="text/css" href="../../CSS/style_base.css" /> </head> <body> <div id="fond"> <div id="contenu"> <!-- debut du contenu de la partie sombre --> <div class="barre_du_centre"> <table> <tbody> <center> <div "> <a href="http://www.jeuxonline.info/jeu/Revival">Les jeux par types de consoles</a><br> <img src="http://www.zimagez.com/miniature/wquizz-consoles-jeux-video.jpg" alt="Visionner l'image" /></a> </div> <br><br> <div> <a href="http://www.jeuxonline.info/jeu/Sparta_War_of_Empires">les jeux par categorie</a><br> <img src="http://www.zimagez.com/miniature/differentes-personnages-univers-nintendo.jpg" alt="Visionner l'image" /></a> </div> </center> </tbody> </table> </div> <!-- fin du contenu de la partie sombre --> </div> </div> </body> </html> <!-- debut du footer --> <?php include('footer.php'); // fin du footer // } ?>
je vais sur ma page profil, ai-je le droit de faire :
pour afficher les informations de mon profil ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 echo 'Pseudo : ',$_SESSION['user']['nom'],'<br /> Age : ',$_SESSION['user']['bday'],'<br /> Sexe : ',$_SESSION['user']['sexe'],'<br /> Ville : ',$_SESSION['user']['adresse'],'<br /> profession : ',$_SESSION['user']['age'],'<br /> mail : ',$_SESSION['user']['mail'],'<br /> prenom : ',$_SESSION['user']['adresse'],'<br />';
Oui.
ok ^^
je sens qu'a force :p je mettrais une dédicace sur mon dossier qui accompagnera mon code en citant le forum ptdr.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager