Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2631 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Debutant sur session [Résolu]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] Debutant sur session [Résolu]

n°414788
hpman
Posté le 03-06-2003 à 17:29:27  profilanswer
 

Je fais deja du php depuis un moment, et j'ai voulu apprendre a me servir des sessions. Avant de poster, j'ai lu pas mal de docs sur le net mais la je comprends vraiment pas pourquoi ca veut pas marcher :(
 
Je me suis basé sur un exemple simple : une page d'identification et la page de membre (+ une page de verification du login)
 
La page de login tout bete (index.php) :

Code :
  1. <form method="post" action="verif.php">
  2. <table border="0" width="372" align="center"><tr><td width="192"><b>Votre login :</b></td>
  3. <td width="170"><input type="text" name="login"></td></tr><tr><td width="192"><b>Votre mot de passe :</b></td>
  4. <td width="170"><input type="password" name="password"></td></tr><tr><td colspan="2" width="366">
  5. <input type="submit" name="submit" value="Entrer !!">
  6. </td></tr></table></form>


 
La page de vérification (verif.php) :

Code :
  1. <?
  2. $login_sql ="ton";
  3. $password_sql ="mon";
  4. if ($login=="$login_sql" && $password=="$password_sql" ){ session_start();
  5. $_SESSION['login']=$_POST['login'];
  6. $_SESSION['password']=$_POST['password'];
  7. header('location : index_membre.php');
  8. }
  9. else{echo "Erreur d'identification, veuillez entrez un login et un mot de passe valide !";}
  10. ?>


 
La page membre (index_membre.php) :

Code :
  1. <?
  2. session_start();
  3. if (!session_is_registered("password" )){
  4. echo "Erreur : vous devez vous identifiez pour avoir accès à cette espace !";
  5. exit();
  6. }
  7. // Contenu de votre espace membre : -----------------------------
  8. echo "Bienvenue <b>$login</b> sur l'espace membre !";
  9. ?>


 
Apres la lecture de quelques posts sur ce forum, je vais anticiper quelque questions :
Je fais ces tests sous easyphp 1.6
auto_start : Off
use_cookies : On
use_trans_sid : 1
register_globals : Off (J'ai passé le paramètre à off car la ou j'heberge mes pages, il y est ainsi)
 
Merci d'avance à tous pour votre aide  :jap:


Message édité par hpman le 04-06-2003 à 11:26:30
mood
Publicité
Posté le 03-06-2003 à 17:29:27  profilanswer
 

n°414809
belgique
Posté le 03-06-2003 à 17:48:20  profilanswer
 

Faut pas faire un session°register('login'); et diem que password pour créer les varialbe de session avant de les utiliser?

n°414817
hpman
Posté le 03-06-2003 à 17:54:18  profilanswer
 

Belgique a écrit :

Faut pas faire un session°register('login'); et diem que password pour créer les varialbe de session avant de les utiliser?


 
sur cette page :
http://fr2.php.net/manual/fr/ref.session.php
 
Il est marqué :

Citation :

Si vous utilisez $HTTP_SESSION_VARS et $_SESSION et désactivez register_globals, n'utilisez pas session_register(), session_is_registered() et session_unregister().  
 
Si vous activez register_globals, session_unregister() doit être utilisé, car les variables de session sont enregistrés comme variables globales lorsque les données de sessions sont relues. Inactiver register_globals est recommandé pour des raisons de sécurité et de performances.


 
Donc, voila pourquoi je m'en sers pas (J'ai tout de meme essayé, et ca ne me change rien :()

n°414819
belgique
Posté le 03-06-2003 à 17:57:22  profilanswer
 

Merci de l'info :). Bon ben je vois pas alors ;)

n°414821
belgique
Posté le 03-06-2003 à 18:00:33  profilanswer
 

sur la page index_membre.php, tu acitves bien ta session avant d'envoyer du code html? Enfin normalement ça devrait t'envoyer une erreur.

n°414824
belgique
Posté le 03-06-2003 à 18:02:45  profilanswer
 

Et essaie en testant avec if(isset($SESSION['password]));
 
Enfin je sais pas trop .. comme je vais arrêter de donner des conseils là.. je suis vraiment pas sûr de mon coup  :D

n°414917
simogeo
j'ai jamais tué de chats, ...
Posté le 03-06-2003 à 19:49:12  profilanswer
 

Hpman a écrit :


 
Apres la lecture de quelques posts sur ce forum, je vais anticiper quelque questions :
Je fais ces tests sous easyphp 1.6
auto_start : Off
use_cookies : On
use_trans_sid : 1
register_globals : Off (J'ai passé le paramètre à off car la ou j'heberge mes pages, il y est ainsi)
 
Merci d'avance à tous pour votre aide  :jap:  


 
 

Code :
  1. <?
  2. $login_sql ="ton";
  3. $password_sql ="mon";
  4. if ($_POST['login']=="$login_sql" && $_POST['password']=="$password_sql" ){ session_start();
  5. $_SESSION['login']=$_POST['login'];
  6. $_SESSION['password']=$_POST['password'];
  7. header('location : index_membre.php');
  8. }
  9. else{echo "Erreur d'identification, veuillez entrez un login et un mot de passe valide !";}
  10. ?>


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
n°415128
hpman
Posté le 03-06-2003 à 21:48:00  profilanswer
 

MERCI a toi simogeo :  :jap:  :jap:  [:yuck]  
 
Effectivement, j'avais oublié les $_POST et le $_SESSION dans index_membre.php
 
Par contre,  
 

Code :
  1. header('location: index_membre.php');


 
Il ne fallait pas d'espace avant : apparemment  :??:  
En tout cas merci a toi  :)


Message édité par hpman le 03-06-2003 à 21:48:36

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Debutant sur session [Résolu]

 

Sujets relatifs
[PHP] Récupérer le nom d un fichier à uploader...problème de variables dans fonction PHP
[PHP / JAVASCRIPT] Récupérer des variables d'environnement.[PHP] probleme louche
Exercice PHP - Création de tableauTester si un recordset est vide [RESOLU, merci]
[PHP] Editeur PHP comme Ultra-Edit[PHP] Comment inserer une image en php ?
[PHP/mySQL] Consulter un site PHP en localCommande avec 2 parametres : ERREUR ----------- RESOLU
Plus de sujets relatifs à : [PHP] Debutant sur session [Résolu]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR