Petite question sur page sécurisé php
Résolu
kiyomasa
Messages postés
331
Statut
Membre
-
kiyomasa Messages postés 331 Statut Membre -
kiyomasa Messages postés 331 Statut Membre -
Bonjour,
j'ai utilisé un code php pour sécuriser une page web, en fait il faut entrer un mot de passe pour accéder au site.
ca fonctionne très bien mais j'ai constaté qu'en tappant l'URL + /page suivante.html et bien on accède directement à la page, on passe au dessus du code !
Bon, ok, c'est assez balaize parce que dans ce cas, il faut connaître les nom que j'ai mis aux pages. Mais quel est le moins d'empêcher ça ? Comment être obligé de passer par la page sécurisé ?
j'ai utilisé un code php pour sécuriser une page web, en fait il faut entrer un mot de passe pour accéder au site.
ca fonctionne très bien mais j'ai constaté qu'en tappant l'URL + /page suivante.html et bien on accède directement à la page, on passe au dessus du code !
Bon, ok, c'est assez balaize parce que dans ce cas, il faut connaître les nom que j'ai mis aux pages. Mais quel est le moins d'empêcher ça ? Comment être obligé de passer par la page sécurisé ?
Configuration: Mac OS X Firefox 3.5.7
3 réponses
-
avec les sessions, tu peux faire quelque chose comme ça :
<?php session_start(); ?> <form action="#" method="POST"> Mot de passe<input type="password" value="" name="password"> <input type="submit" value="connexion"> </form> <?php if( $_POST['password']=='motdepasse' ){ $_SESSION['pass'] == $_POST['password']; } else{ } ?>
à placer en haut des pages protégés :<?php session_start(); if( isset($_SESSION['pass']) ){ } else{ include('pagedeconnection.php') exit(); } ?>
Le "session_start();" doit être placé avant tout envoi de texte/image à afficher dans le navigateur, donc mieux vaut le mettre tout en haut pour être sûr ...
Les sessions enregistres le mot de passe, et quand on accède à une page protégé, si la session existe, alors la page est affiché, sinon, on inclue le formulaire d'authentification et on arrête l'affichage de la page. -
Utilise des sessions. Tu crée une variable de session style $_SESSION['acces_ok'] tu initialise la variable à 0 et tu fait:
<?
if ($_SESSION['acces_ok'] == 0) {
header("Location:TAPAGE DE CONNECTION");
}else{ le code de ta page normale;}
?>
a mettre sur toutes les pages.
un fichier htaccess serait surement plus efficace.
-