PHP - Redirection

Résolu
nino11 Messages postés 76 Statut Membre -  
 Utilisateur anonyme -
Bonjour,

Après le test du login et du pass entré par l'utilisateur, qu'ils soient corrects ou no, je fais une redirection avec un "header"...

Cependant, par exemple, lorsque les login et pass sont erronés, je souhaite afficher un message indicant que les login et pass sont erronés.

C'est pourquoi, je voudrais savoir s'il est possible de savoir si l'on vient d'être redirectionner, ce qui me permettrais de mettre un "if" pour faire afficher le message.

Merci d'avance
Configuration: Windows XP
Firefox 2.0.0.14

6 réponses

  1. Utilisateur anonyme
     
    tu peut tout simplement faire un header avec une page ou il y a marque un des champs est vide
    0
    1. nino11 Messages postés 76 Statut Membre
       
      oui, mais si les champs sont remplis mais incorrects ? ? ?
      0
  2. macgawel Messages postés 676 Statut Membre 89
     
    Bonjour.

    Tu peux utiliser la variable de session : $_SESSION[].
    Personnellement, je met le "code" d'erreur dans $_SESSION['erreur'], ce qui me permet de l'utiliser après...

    Un exemple de script de vérification :
    $_SESSION['erreur'] = 0;
    $origine = $_SERVER['HTTP_REFERER']; // Récupère la page d'origine
    /* Là, tu fais comme tu le sens.
    C'est juste un exemple : 
    s'il y a une erreur dans le login/mot de passe, 
    on met $_SESSION['erreur'] à 1.
    Tu pourrais utiliser plusieurs valeurs, pour avoir un message différent suivant l'erreur
    (mail, login vide, login inexistant, etc.
    */
    $_SESSION['erreur'] = TesterConnexion($login, $motdepasse) ;
    if ($_SESSION['erreur'] == 0) {
    // Ici, le code si tout est OK
    }
    else {
    // Ici le code en cas de problème
    header($origine);
    }


    Et comme tu gardes tes variables de session, tu peux utiliser le code d'erreur dans la prochaine page - genre, si tu reviens à la page de connexion, mettre un message pour dire ce qui cloche (tu peux aussi travailler avec une chaîne de caractère qui contient le message d'erreur, ou rien s'il n'y a pas d'erreur...)
    0
    1. nino11 Messages postés 76 Statut Membre
       
      Tu es sûr, enfin, je ne doute pas de toi, mais peut-on utiliser des variables de session sans ouvrir un session ? ? ?
      0
    2. macgawel Messages postés 676 Statut Membre 89 > nino11 Messages postés 76 Statut Membre
       
      :-O

      Non, évidemment...
      Si tu n'utilises pas de session, c'est vrai que c'est mort !
      Peut-être en passant le code d'erreur en paramètre de la page (monurl.php?err=0) ?
      0
    3. nino11 Messages postés 76 Statut Membre > macgawel Messages postés 676 Statut Membre
       
      je peux pas récupérer la variable par la méthode POST ? ? ?

      Si j'utilise un champ de type hidden avec une valeur 0, ensuite je la récupère, je fais le test, je lui donne la valeur 1 si c'est pas bon et comme je reviens sur mon formulaire, cette variable $_POST['error'] me permet de faire afficher un message, ensuite comme les champ hidden à une valeur à 0, ça me fait une boucle ? ? ? Qu'en penses-tu ?
      0
    4. Utilisateur anonyme > nino11 Messages postés 76 Statut Membre
       
      on m' ignore a ce que veut vois

      tcho
      0
    5. nino11 Messages postés 76 Statut Membre > Utilisateur anonyme
       
      non, on ne t'ignore pas pakat, mais j'appronfondis l'autre méthode ^^
      0
  3. Utilisateur anonyme
     
    if (empty($_POST["Le nom"]))

    {
    header("Location: formulaireerror.php");
    }
    essaye avec sa pour moi sa marche
    0
  4. Utilisateur anonyme
     
    envoi ton code c plu simple pour nous je pense
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Utilisateur anonyme
     
    Lol alors sa marche pas( enfin je pense pas mais on c jamais )
    0