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 » Empecher user acceder aux pages par url » 05-06-2015 11:09:09

bapro
Réponses : 1

Salut a tous,
Cela me fait un grand plaisir de m'inscrire sur ce forum, et je profite l'occasion pour feliciter ce travail gigantesque que vous faites dans le monde de l'informatique.
En naviguant sur le net j'ai pu trouver des codes de la page article95.php sur ce site en fonction de mon objectif qui est d'empecher aux users d'acceder aux pages membres par url et en essayant ils doivent automatiqument se diriger vers la page d'identification. Malgre j'ai utilise ces codes comme ils sont, tout fonctionne bien, mais un user peut toujours atteindre la page proteger par les codes appropries a partir de l'url.
Je poste mes codes
1- page d'identification
<code>
<form action="traitement.php" method='post'>
<table align="center" border="0">
  <tr>
    <td>Login :</td>
    <td><input type="text" name="login" maxlength="250"></td>
  </tr>
  <tr>
    <td>Password</td>
    <td><input type="password"name="pass" maxlength="10"></td>
  </tr>
  <tr>
    <td colspan="2" align="center"><input type="submit" value="log in"></td>
  </tr>
</table>
</form></code>
2- page de traitement
<code><?php
$db = ($GLOBALS["___mysqli_ston"] = mysqli_connect('',  '',  '')); 

// on sélectionne la base 
((bool)mysqli_query($db, "USE qbreplace")); 
session_start();
if(isset($_POST) && !empty($_POST['login']) && !empty($_POST['pass'])) {
  extract($_POST);
  // on recupère le password de la table qui correspond au login du visiteur
  $sql = "select pwd from tbl_user where login='".$login."'";
  $req = mysqli_query($GLOBALS["___mysqli_ston"], $sql) or die('Erreur SQL !<br>'.$sql.'<br>'.((is_object($GLOBALS["___mysqli_ston"])) ? mysqli_error($GLOBALS["___mysqli_ston"]) : (($___mysqli_res = mysqli_connect_error()) ? $___mysqli_res : false)));

  $data = mysqli_fetch_assoc($req);

  if($data['pwd'] != $pass) {
    echo '<p>Mauvais login / password. Merci de recommencer</p>';
    include('index.php'); // On inclut le formulaire d'identification
    exit;
  }
  else {
   
    $_SESSION['login'] = $login;
     
   header('location:timesheet.php');
    // ici vous pouvez afficher un lien pour renvoyer
    // vers la page d'accueil de votre espace membres 
  }     
}
else {
  echo '<p>Vous avez oublié de remplir un champ.</p>';
   include('index.php'); // On inclut le formulaire d'identification
   exit;
}


?></code>
3- timesheet.php qui est la page membre securiser qui devrait etre  accede qu'apres le login non par url
<code><?
session_start();


if(!isset($_SESSION['login'])) {
  echo 'Vous n\'êtes pas autoris´ à acceder à cette zone';
  include('index.php');
  exit;
}
?>
la partie html en bas
</code>
Le probleme est que je peux toujours acceder a la page timesheet.php via l'url je ne suis pas redirige vers la page d'identification

Esperant bientot votre reponse je vous remercie d'avance
Bapro

Pied de page des forums

Propulsé par FluxBB