IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Refuser accès utilisateur non logger


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2012
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 199
    Par défaut Refuser accès utilisateur non logger
    Bonjour à tous,

    Je galère un peu...
    J'ai une page index.php d'authentification, si l'user et le mot de passe sont corrects l'utilisateur est redirigé vers saisirAppel.php. J'aimerais interdire l'accès à cette page, car il suffit de la rentrer en url pour l'afficher.
    J'utilise les sessions :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php // si l'utilisateur n'est pas authentifié
            if(($_SESSION['user']!=$_POST['user']) OR ($_SESSION['pass']!=$_POST['pass'])
                    OR (!isset($_SESSION['user']) OR (!isset($_SESSION['pass'])))){
                echo '<script type="text/javascript">window.location=
                "...index.php";</script>'; //redirection index
            }
            else
            {
    Le problème c'est qu'en rentrant le bon mot de passe et le bon login on me redirige quand même vers index.php alors qu'il faudrait rediriger vers saisirAppel.php.

  2. #2
    Membre Expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Par défaut
    Bonjour,

    Au plus simple, je ferais différement:

    Dans la page de connexion, si l'utilisateur login/mot de passe est ok donc vérifiés, je mettrais une variable session 'estConnect' à true false si pas bon.

    Ensuite sur chaque page que tu veux interdire l'accés, tu testes cette variable session à true sinon retour index.php

    Sinon pour ta condition if, tu as toujours une des conditions à vrai donc vérifies les valeurs avant la condition par un affichage (var_dump de $_session et $_post)

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2012
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 199
    Par défaut
    Merci, ça fonctionne même si j'ai pas fais exactement ça.

    Je bloque sur le session_destroy maintenant !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
     
    <form method="post" action="index.php">
                    <input type="button" class="deconnexion" name="seDeconnecter" value="Se déconnecter"
                    class="myButtonSubmit" onclick='window.location.href="index.php";'>
     
                    <?php
                    if($_POST['seDeconnecter']){
                        session_destroy();
                    }
                    ?>
     
                </form>
    Lorsque je clique sur Se déconnecter je reviens bien sur index, mais quand je reviens sur saisirAppel j'ai toujours le login de l'utilisateur qui ne s'est pas supprimé !

  4. #4
    Membre Expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Par défaut
    Forcement, à l'affichage de la page, $_post['seDeconecter'] n'existe pas ... tu devrais revoir le mécanisme du client/serveur

    Pour ton cas, tu fais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    onclick='window.location.href="index.php?req=deconect";
    Puis au début de page de index.php (tu effectues la deconnexion) sur le serveur entestant $_get['req']

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2012
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 199
    Par défaut
    comment ça en testant je vois pas désolé ?

  6. #6
    Membre Expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Par défaut
    Bein, tu écris les quelques lignes dans le code de index.php pour savoir si l'utilisateur demande une déconnexion ..

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    if( $_get['req'] ==  'deconnect'){
        // traitement pour unset les variables user, pwd en $_session
        // session_destroy détruirait toutes les variables en session
    }
     
     
    // Ensuite reste de la page

Discussions similaires

  1. Accès refusé car données non partagées
    Par ploukinet dans le forum Windows XP
    Réponses: 2
    Dernier message: 01/02/2009, 22h17
  2. Réponses: 7
    Dernier message: 15/12/2006, 09h22
  3. Accés Refusé : "nom utilisateur/mot passe"
    Par devlopassion dans le forum Administration
    Réponses: 7
    Dernier message: 14/10/2006, 10h46
  4. Accès refusé à un utilisateur
    Par laindown dans le forum Windows Serveur
    Réponses: 1
    Dernier message: 06/07/2006, 11h56
  5. Réponses: 10
    Dernier message: 07/06/2006, 12h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo