je te met un bout de code idio qui pourras te montrer commen je fait:
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 <?php header('P3P: CP="CAO PSA OUR"'); //this is for that IE can use $_SESSION var /*************************************************************** * Copyright notice *zedef BLABLA ***************************************************************/ session_start(); if (....) { header('location: main.php'); } } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en'> blabla
ce que je veux te montrer c'est le placement de la premiere instruction html, et l'ordre de mon header et de mon session start par rapport à la page générale
Il n'y a pas de probleme ^^
Donc je te resitue le truc:
J'ai une page clients.php qui est la page ou s'identifie la personne, le formulaire fait appelle a la page customers_session.php qui permet donc l'identification et qui permet d'accédé a la page caché qui est espace_clients.php
voici le code que tu ma demandé qui vien de la page cutstomers_session.php
et voici ce que j'ai mis en debut de ma page caché!
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 <?php require_once("lib/sql_lib.php"); require_once("lib/ui_lib.php"); $login = isset($_POST["customers_login"]) ? $_POST["customers_login"] : ""; $pass = isset($_POST["customers_password"]) ? md5($_POST["customers_password"]) : ""; if($login != "" && $pass != "") { dbConnect("conf/mysql.conf"); $sql = "SELECT * FROM customers WHERE customers_login = '".$login."' AND customers_password = '".$pass."'"; $requete = mysql_query($sql); if($requete) { if(mysql_num_rows($requete) > 0) {
J'ai bien rajouter les header que tu m'as dit au bon endroit mais aucun changement!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 <?php session_start (); if (isset ($_SESSION['customers_login'])==false) { header ("Location: clients.php"); } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
en haut de cette page, avans le premier commentaire, le premier code php/html
met ca:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <?php header('P3P: CP="CAO PSA OUR"'); //this is for that IE can use $_SESSION var session_start(); ?>
Hi,
Je ne suis qu'un débutant mais où tu récupères les infos ??
Essaie ça....si tu crées des variables de sessions, il faut peut être penser à les récupérer (via extract qui les range pour toi).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 // La 1ère ligne de ta page doit être ça !! session_start(); avant tout. session_start(); extract($_SESSION);
Moi j'avais des problèmes liés aux redirections avec le header. J'ai du modifier mon fichier php.ini
out_buffering --> On
Enfin ce ne sont que des propositions mais tiens nous au courant![]()
A ok parce que je sais que chez certains, si tu n'a pas de dossier "sessions" à la racine du site, les sessions ne marche pas.Après avec Easy PHP je sais pas je m'en sert pas.
Mais pourquoi est ce que sa ne fonctionnerai pas si il n'y a pas de dossier sessions ??
Surtout que une session a deja été mise en place pour la zone admin du site il y a juste une fonction stocker dans un dossier lib
c'est free qui merde si y'a pas de fichier session![]()
Sinon au pire essaye un truc pour vérifier si sa vient de ton script, ou bien du fonctionnement des sessions.
Tu fait un truc genre
Comme sa tu seras au moin fixé sur la source du problème
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <?php session_start() $_SESSION['blabla'] = "blabla"; echo $_SESSION['blabla']; ?>
j'ai une erreur assez barbare !!!
Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\Program Files\EasyPHP 2.0b1\www\e-cervo\customers_session.php on line 24
Je commence a être a bou lol
session_start();
$_SESSION["customers_login"] = $login;
(ligne 24) echo "$_SESSION['customers_login']";
Normal la tu affiche une chaine pas la variable de sessions xD
Remplace par sa :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 $login = "toto"; session_start(); $_SESSION['customers_login'] = $login; echo $_SESSION['customers_login'];
ok x)
Bon et bien toujours rien de ne passe quand je clique sur connexion la page se redirige sur elle-même -_- en gros elle s'actualise sa sert vachement
lol t'a essayer de faire ce que j'ai mis juste au dessus ?
C'est à dire créer une nouvelle page avec juste un
Si il affiche page blanche c'est que t'a un problème avec les sessions, si il affiche blabla alors sa voudra dire qu'il y a un problème dans ton script (ne grions pas les étapes sinon on risque pas de s'en sortir
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <?php session_start() $_SESSION['blabla'] = "blabla"; echo $_SESSION['blabla']; ?>)
Désolé je n'avais pas compris ça comme sa donc j'ai fais ce que tu m'as dit et toto s'affiche j'ai donc un problème dans mon scripte youpi!
Jvais être embêtant vu le nombre de fois que tu l'a mis mais autant tout refaire à 0 quand on s'en sort pas donc pourrais tu nous montrer l'enssemble de la page qui inclu le login (donc formulaire html + page php qui traite le formulaire)
Y a pas de problème au contraire merci de vous emebeter pour mes souci!!
donc
la page de formulaire d'identification clients.php:
voici maintenant la page de traitement customers_session.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 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <?php require_once("lib/sql_lib.php"); require_once("lib/ui_lib.php"); dbConnect("conf/mysql.conf"); ?> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> <head> <LINK REL=StyleSheet HREF='style.css' TYPE='text/css'> <!--[if IE]> <link href="styleIE.css" rel="stylesheet" type="text/css" /> <![endif]--> <title>www.e-cervo.com</title> </head> <body class='body'> <div class='en_tete'> </div> <center> <?php include ('include/div_left_include.php') ?> <?php include ('include/div_right_include.php') ?> <div class='corps'> <center> <img align='center' src='images/slogan.gif'></img> </center> <p class="tabletext "> Pour en savoir plus sur nos produits et sur les nouveautés, veuillez vous connectez avec votre login et mot de passe fournie au préalable!! </p> <FORM ACTION='customers_session.php' METHOD='POST'> <table align="center" class="tabletext"> <tr> <td>Pseudo:</td> <td><input type="text" name="customers_login" size=25></td> </tr> <tr> <td>Mot de passe:</td> <td><input type="password" name="customers_password" size=25></td> </tr> <tr> <td colspan="2" align="center"> <br> <input type="submit" value="Connection"></td> </tr> <tr> </table> </form> <p class="tabletext">Vous n'avez ni de login ni de mot de passe? <a href="demande_identifiant.php"><b>Faire une demande!!!</b></a></p> </div> <?php include ('include/pied_page_include.php') ?> </center> </body> </html>
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 <?php session_start(); ?> <?php require_once("lib/sql_lib.php"); require_once("lib/ui_lib.php"); $login = isset($_POST["customers_login"]) ? $_POST["customers_login"] : ""; $pass = isset($_POST["customers_password"]) ? md5($_POST["customers_password"]) : ""; if($login != "" && $pass != "") { dbConnect("conf/mysql.conf"); $sql = "SELECT * FROM customers WHERE customers_login = '".$login."' AND customers_password = '".$pass."'"; $requete = mysql_query($sql); if($requete) { if(mysql_num_rows($requete) > 0) { session_start(); $_SESSION["customers_login"] = $login; header("Location: espace_clients.php"); } else{ header("Location: clients.php"); } } }else{ header("Location: clients.php"); } ?>
Le problème est résolu un collègue m'a aidé et c'était un problème sur un isset qui en faisait que a sa tête merci beaucoup de toute vos réponse a la prochaine (surement demain x) )
Partager