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

Langage PHP Discussion :

Afficher une alerte JavaScript après redirection


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Inscrit en
    Mars 2010
    Messages
    233
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 233
    Points : 53
    Points
    53
    Par défaut Afficher une alerte JavaScript après redirection
    Salut,

    Je veux afficher une alerte javascript dans laquelle un utilisateur quand il clique sur un lien et quand il n'est pas encore en session alors une alerte javascript s'affiche

    voila mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Document sans titre</title>
    </head>
     
    <body>
    <?php  
    //on vérifie que l'utilisateur est identifé   
    if (!isset($_SESSION['id_client'])) {   
      //si la variable de session n'existe pas   
      //on redirige l'utilisateur vers le formulaire d'identification  
      echo "<script >alert(\"Vous devez vous identifiez!\" );
            </script> "; 
      header('Location: ./index.php');   
      //on arrête l'exécution   
      exit();}   
    ?>  
     
    </body>
    </html>
    J'ai fais ca mais ce code m'affiche rien!

    Alors que dois-je faire?

  2. #2
    Membre averti Avatar de sayari.dev
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2010
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2010
    Messages : 142
    Points : 300
    Points
    300
    Par défaut
    Bonjour,

    J'ai quelques remarques à propos de ton code :

    1- Pas de session_start() : tu dois "démarrer" l'utilisation des sessions dans ton script avant tout affichage

    Ex
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php session_start(); ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Document sans titre</title>
    </head>
     
    <body>
    ......
    2- Si tu ne trouves pas la variable de session id_client déclarée et que ton script affiche une alerte à l'internaute, il ne serait plus possible de rédiriger avec les headers : tu dois rediriger sois avec le javascript soit avec la balise méta.
    C'est en faisant n'importe quoi qu'on devient n'importe qui

  3. #3
    Membre du Club
    Inscrit en
    Mars 2010
    Messages
    233
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 233
    Points : 53
    Points
    53
    Par défaut
    Mais j'ai deja fais session_start() dans les pages dana laquelle on se redirigera par un lien et en plus apres session_start() j'ai fais require("./auth.php") pour faire appel au code auth.php que j'ai ecris dans mon premier message.

  4. #4
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2009
    Messages
    186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2009
    Messages : 186
    Points : 206
    Points
    206
    Par défaut
    La fonction "session_start()" doit être appelée dans toutes les pages ou on utilise les variables de session. Là, tu teste une variable de session, donc tu l'appelle en début de page.

    Bien cordialement.
    La politesse n'a jamais tué personne
    Le langage SMS c'est le mal !
    Pensez au tag

  5. #5
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Si rien ne s'affiches c'est simplement parce que tu dis au navigateur d'écrire du javascript dans la sortie puis tu lui dis de faire une redirection après, ce qui fait que l'internaute ne voit jamais le alert.

    Ce que tu souhaites faire c'est ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if(!isset($_SESSION['id_client'])){   
      echo '<script>alert("Vous devez vous identifiez!" );window.location.href = "./";</script>'; 
      exit();
    }   
    ?>

  6. #6
    Membre du Club
    Inscrit en
    Mars 2010
    Messages
    233
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 233
    Points : 53
    Points
    53
    Par défaut
    Merci ThomasR pour ton reponse et c'est ca ce que je cherche

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Retour page précedente après une alert javascript
    Par kanabzh29 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 25/11/2008, 14h11
  2. Réponses: 4
    Dernier message: 09/08/2006, 10h41
  3. [MySQL] Afficher une date correctement après une requête
    Par Nerva dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 12/04/2006, 16h27
  4. afficher une autre page apres le clic d1 bouton submit
    Par tramacere dans le forum Langage
    Réponses: 7
    Dernier message: 25/01/2006, 16h00
  5. [Reports 6i] Faire afficher une alerte.
    Par macben dans le forum Reports
    Réponses: 3
    Dernier message: 15/02/2005, 10h47

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