Login

Fermé
galaxico8 Messages postés 98 Date d'inscription mercredi 3 décembre 2008 Statut Membre Dernière intervention 30 juin 2011 - 9 oct. 2009 à 16:53
galaxico8 Messages postés 98 Date d'inscription mercredi 3 décembre 2008 Statut Membre Dernière intervention 30 juin 2011 - 15 oct. 2009 à 18:27
Bonjour,
c'est encors moi...mtn je peux bien faire le controle d'accès vers une page inscription.php par exemple, mais si l'utilisateur tape directement dans le lien inscription.php il poura y accéder...comment faire pour empêcher les utilisateurs à faire cette manip...je crois avec les includes...mais.........

4 réponses

Nico_ Messages postés 1219 Date d'inscription vendredi 29 décembre 2006 Statut Membre Dernière intervention 15 mars 2016 189
9 oct. 2009 à 21:37
bonsoir,

tu peux y ajouter un cookies

explication:

si la personne rentre le bon login et pswd , a la suite de ta condition tu rajoute la création d'un cookies:

//création du cookies
setcookie('cookies[acces]', 'acces_ok', (time() + 1800));// ici le temps est en secondes

sur la page que l'on visite une fois identifier:
<?php
// mettre se code avant tout
if ($_COOKIE['cookies']['acces'] != "acces_ok")
{
header('Location: ../'); // adresse de redirection a mettre a la place de ../
}
?>


bonne soirée
0
galaxico8 Messages postés 98 Date d'inscription mercredi 3 décembre 2008 Statut Membre Dernière intervention 30 juin 2011 2
15 oct. 2009 à 16:47
j'ai fait ce que vous m'avez donné mais ça n'a pas fonctionné je crois que je l'ai pas bien fait, je vous explique:
j'ai une page index.html qui contient le formulaire d'accès "login et password", qui renvoit vers login.php pour vérifier l'existance du login et password dans cette page login.php j'ai :

if(!isset($_POST['login']) and !isset($_POST['password'])) // si on a rien tapé
{}
else {
if(isset($_POST['login']) and isset($_POST['password'])) // si on a tapé le login et le mot de passe
{
$login = $_POST['login']; //mettre le login qu'on tape dans une variable
$password = $_POST['password']; //mettre le password qu'on tape dans une variable
$user = mysql_query("select * from users WHERE login = '$login' AND password = '$password'");
$is_user = mysql_fetch_array($user);
if ($is_user)
{
setcookie ('cookies[acces]', 'acces_ok', (time() + 10)); //création de cookie
header("Location:liste_inscriptions.php");
}

et dans la page liste_inscriptions.php j'ai bien mis le code qui vérifie l'existance de la cookie tout au début ...
l'authentification se fait mais lorsque je fait précédente je retourne dans la page index.html et si je fait suivant ça me met dans la page liste_inscriptions.php que je doit pas y avoir accès comme ça
0
Nico_ Messages postés 1219 Date d'inscription vendredi 29 décembre 2006 Statut Membre Dernière intervention 15 mars 2016 189
15 oct. 2009 à 17:21
bonsoir,

le cookies est valide 10 secondes dans votre code.
se code permet d'avoir accès a cette page pendant 10 secondes dans ce cas, si par exemple 1 minutes après votre connexion sur "liste_inscription.php vous faite "rafraichir" (F5 ou Ctrl+F5), ça de dois pas fonctionner, vous serez rediriger, par contre le faite de faire précédent, les informations saisie dans les champs login et mot de passe sont toujours en mémoire.
0
galaxico8 Messages postés 98 Date d'inscription mercredi 3 décembre 2008 Statut Membre Dernière intervention 30 juin 2011 2
15 oct. 2009 à 18:27
en fait j'ai fait 10 seconde exprès pour vérifier, mais ça ne marche pas, je ne sait pas est ce que le cookie se créé ou non puisque je l'ai mis avant le "location" après le test normalement on peut bien mettre plusieur action {} suite à une conditions IF ?
0