PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 Forum Général PHP » [resolu] perte de sessions » 21-07-2017 13:41:30

odul
Réponses : 0

bonjour,
j'ai suivi le tuto consacré à l'espace membres tuto sur espace membres mai j'ai un soucis l'orsque je redirige le membre sur l'index par un header je perd la session j'obtiens le message
Notice: A session had already been started - ignoring session_start() in C:\inetpub\wwwroot\pmtl_tma\index.php on line 2
Vous n\'êtes pas autoris´ à acceder à cette zone
si je fais par include j'ai les deux page qui s'affiche l'une par dessus l'autre et j'obtiens un message :
Notice: A session had already been started - ignoring session_start() in C:\inetpub\wwwroot\pmtl_tma\index.php on line 2


ma page de login est :

if(isset($_POST) && !empty($_POST['nom']) && !empty($_POST['prenom']) && !empty($_POST['pass'])) {
  extract($_POST);
  // on recupère le password de la table qui correspond au login du visiteur
  $sql = "select password from membres where nom='".$nom."' prenom='".$prenom."'";
  $sql = "select password from membres where  prenom='".$prenom."'";
  $req = mysqli_query($db,$sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysqli_error());

  $data = mysqli_fetch_assoc($req);

  if($data['password'] != $pass) {
    echo '<p>Mauvais login / password. Merci de recommencer</p>';
 
  }
  else {
    session_start();
   $_SESSION['nom'] = $nom;
   $_SESSION['prenom'] = $prenom;  
   echo '<p>Bonjour' .$prenom, $nom. 'vous allez être redirigé dans 5sc</p>';  
  include 'index.php';
    //header ("Refresh: 5 ; url= index.php");
   
  }  
}
else {
  echo '<p>Vous avez oublié de remplir un champ.</p>';
 
 mysqli_close($db);  // on ferme la connexion
}


?>
<table align="center">
    <tr >
   <td>
<form action = "" method = "post">
   <legend>Veuillez vous identifier.</legend>
<br />
 <label for="nomoperateur"> nom operateur :</label>
<input type = "text" name = "nom" id="nom"  /><br/>
 <label for="prenom"> prènom operateur :</label>
<input type = "text" name = "prenom" id="prenom"  /><br/>
<label for="password"> Mot de passe :</label>
<input type = "password" name = "pass" id="pass" /><br/><br/>
<input type = "submit" value = "Envoyer" />
</form>
</td>
</tr>
</table>
</div><!-- #content -->

en haut de ma page index j'ai ajouter :

<?php
session_start();
if(!isset($_SESSION['nom']))
if(!isset($_SESSION['prenom']))
 {
  echo 'Vous n\'êtes pas autoris´ à acceder à cette zone';
 // include('login_operateur.php');
  exit;
}

}
?>

un peu d'aide ne serait pas de rfus merci a vous wink

Pied de page des forums

Propulsé par FluxBB