identification "auto"

identification "auto" - PHP - Programmation

Marsh Posté le 21-04-2005 à 11:18:01    

Je m'explique. Je fais un site avec un espace membres.
Pour y accéder il faut donner son login et mdp qui sont stockées dans une table.
 
Ce que je voudrais c'est qu'a chaque visite d'un membre sa session reste ouverte et qu'elle se ferme lorsqu'il ferme son navigateur.
Je ne veux pas qu'il doivent se reloguer a chaque fois qu'il clique sur l'espace membres.
 
J'avais pensé a utiliser des cookies mais la session restera ouverte meme en fermant le navigateur!
 
Merci pour vos réponses...

Reply

Marsh Posté le 21-04-2005 à 11:18:01   

Reply

Marsh Posté le 21-04-2005 à 11:21:51    

JustOne72 a écrit :

Je m'explique. Je fais un site avec un espace membres.
Pour y accéder il faut donner son login et mdp qui sont stockées dans une table.
 
Ce que je voudrais c'est qu'a chaque visite d'un membre sa session reste ouverte et qu'elle se ferme lorsqu'il ferme son navigateur.
Je ne veux pas qu'il doivent se reloguer a chaque fois qu'il clique sur l'espace membres.
 
J'avais pensé a utiliser des cookies mais la session restera ouverte meme en fermant le navigateur!
 
Merci pour vos réponses...


 
Comme tu le précises toi-même, utilise les $_SESSION  :bounce:


---------------
http://yoyo.eurotchat.net -> Wednesday 14 September a 02:00:01 up 43 days, 11:47,  2 users,  load average: 0.07, 0.03, 0.00
Reply

Marsh Posté le 21-04-2005 à 11:28:17    

yoyo354 a écrit :

Comme tu le précises toi-même, utilise les $_SESSION  :bounce:


 
J'y avais pensé...
 
Voici mon script :

Code :
  1. <?php
  2. mysql_select_db($database_arnis01, $arnis01);
  3. if(isset($_POST) && !empty($_POST['login']) && !empty($_POST['pass'])) {
  4.   extract($_POST);
  5.   // on recupère le password de la table qui correspond au login du visiteur
  6.   $sql = "select pass from table where login='".$login."'";
  7.   $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
  8.   $data = mysql_fetch_assoc($req);
  9.   if($data['pass'] != $pass) {
  10.     echo '<p>Mauvais login / password.</p>';
  11.     include('login.html'); // On inclus le formulaire d'identification
  12.     exit;
  13.   }
  14.   else {
  15.     $_SESSION['login'] = $login;
  16. header("location: membres.php" );
  17.   }   
  18. }
  19. else {
  20.   echo '<p>Vous avez oublié de remplir un champ.</p>';
  21.    include('identification1.php'); // On inclut le formulaire d'identification
  22.    exit;
  23. }
  24. ?>


 
J'ai utlisé $SESSION (ligne 18) mais ca ne fonctionne pas.
Il faut se reloguer a chaque clic sur la zone membres.
 
D'ou vient mon problème?
Merci...

Reply

Marsh Posté le 21-04-2005 à 11:33:59    

Essaye avec

Code :
  1. session_start()

en DEBUT de page.


---------------
http://yoyo.eurotchat.net -> Wednesday 14 September a 02:00:01 up 43 days, 11:47,  2 users,  load average: 0.07, 0.03, 0.00
Reply

Marsh Posté le 21-04-2005 à 11:38:39    

J'obtiens ca :
 
Notice: A session had already been started - ignoring session_start() in d:\chemin\membres.php on line xx
 

Reply

Marsh Posté le 21-04-2005 à 11:42:41    

...et je dois tjs me reloguer a chaque clic  :(

Reply

Marsh Posté le 21-04-2005 à 11:43:07    

Donc, tu dois avoir sessions auto start...  
Après moi et les sessions... J'en ai encor jamais utilisé...


---------------
http://yoyo.eurotchat.net -> Wednesday 14 September a 02:00:01 up 43 days, 11:47,  2 users,  load average: 0.07, 0.03, 0.00
Reply

Marsh Posté le 21-04-2005 à 11:48:59    

Je pense avoir trouvé la solution ici :  
 
C'est à cause de tes header(), éssaye avec ça :  
 

Code :
  1. // Page du formulaire
  2. header("Location: $my_domain/different_page.php?".Session_Name()."=".Session_ID());


Code :
  1. // les autres pages
  2. session_id(strip_tags($_GET['sid']));
  3. session_start();


 
Après pour de plus ample explications : http://fr2.php.net/function.session-start ou google  :hello:


---------------
http://yoyo.eurotchat.net -> Wednesday 14 September a 02:00:01 up 43 days, 11:47,  2 users,  load average: 0.07, 0.03, 0.00
Reply

Marsh Posté le 21-04-2005 à 13:34:46    

Ca marche tjs pa!!!
Personne ne voit pkoi??

Reply

Marsh Posté le 21-04-2005 à 14:11:48    

faut utiliser les cookies a la place des sessions dans ce cas...


---------------
Nos estans firs di nosse pitite patreye...
Reply

Marsh Posté le 21-04-2005 à 14:11:48   

Reply

Marsh Posté le 23-04-2005 à 10:17:26    

c pas parce que les sessions que tu crée vont s'appeler "login" ?????


---------------
A vendre :|: Prizee: GAGNEZ de l'argent en vous amusant !!!
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed