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 :

message d'erreur ne s'affiche pas dans ma page en php


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Homme Profil pro
    developper node js
    Inscrit en
    Octobre 2017
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : developper node js
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2017
    Messages : 10
    Points : 11
    Points
    11
    Par défaut message d'erreur ne s'affiche pas dans ma page en php
    bonjours, à tous j'ai un petit probléme, j'ai stocker un message d'erreur dans ma page php mais celui-ci ne s'affiche au contrairement, il m'indique une erreur!! voila le code dans ma premiere page:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <p><span class="error">* required field.</span></p>
     <form method ="post" action="traitement.<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" target =_blank>
     
       <div>
        Name: <input type="text" name="nom" size="20" maxlength="40"><span class="error">* <?php echo $nameErr;?></span><br>
     
          <button type="submit" value ="valider">valider</button>  
     
       </div>
     </form>
    et celui de ma page traitement:


    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
       <?php
     
         $nameErr ="";
         $nom ="";
          if($_SERVER["REQUEST_METHOD"] == "POST"){
            if (empty($_POST["nom"])) {
               $nameErr = "Name is required";
           } else {
             $name = test_input($_POST["nom"]);
           }
     
     
          }
            function test_input($data){
              $data = trim($data);
              $data = stripslashes($data);
              $data = htmlspecialchars($data);
               return $data;
             }
       ?>
         <p>Name: <?php echo $nom;?></p>

  2. #2
    Membre éclairé Avatar de Geoffrey74
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2007
    Messages
    515
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2007
    Messages : 515
    Points : 760
    Points
    760
    Par défaut
    Bonjour,

    et quelle erreur as tu ?

    Aussi, dans la page de traitement, ta varible $nom sera toujours vide, car tu fais ça : $name = test_input($_POST["nom"]);
    Tu devrais remplacer $name par $nom ou l'inverse pour garder une cohérence avec les nom en anglais.

  3. #3
    Membre à l'essai
    Homme Profil pro
    developper node js
    Inscrit en
    Octobre 2017
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : developper node js
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2017
    Messages : 10
    Points : 11
    Points
    11
    Par défaut
    merci pour la réponse,; mais en faite j'ai deux pages php qui sont :
    ma premiere page:


    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
     <style type="text/css">
        .error{
        	color: red;
        }
      </style>
     
     <body>
      <form method="post" action ="traitement.<?php echo htmlspecialchars($_SERVER['PHP_SELF']);?>" target =_blank>
         PSEUDO:   <input type="text" name="nom">
                          <span class="error">*<?php echo $nomError; ?></span><br><br>
     
         PASSWORD: <input type="password" name="mot_de_passe">
                          <span class="error">*<?php echo $mot_de_passeError; ?></span><br><br>
                   <input type="submit" value="valider">
     
    </form>
    et la seconde page qui est destiné au traitement:

    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
       <?php
          $nom = $mot_de_passe ="";
          $nomError = $mot_de_passeError = "";
     
          if($_SERVER["REQUEST_METHOD"] == "POST") {
            if(empty($_POST['nom'])) {
              $nomError = "Name is required";
     
            } else{
              $nom = test_input($_POST["nom"]);
            }
     
     
     
            if(empty($_POST['mot_de_passe'])) {
                  $mot_de_passeError = 'password is required';
            } else {
               $mot_de_passe = test_input($_POST["mot_de_passe"]);
            }
     
          }
     
             function test_input($data) {
                 $data = trim($data);
                 $data = htmlspecialchars($data);
                 $data = stripslashes($data);
     
                    return $data;
             }
     
        ?>
          <?php
            echo $nom;
     
            echo "<br>";
     
            echo $mot_de_passe;
     
           ?>
    le stockage du message d'erreur ne s'affiche pas il me dit [Notice: Undefined variable: nomError in C:\wamp64\www\myPHP\intro.php on line 1] meme chose pour le password, j'ai essayé de voir d'ou vient l'erreur mais toujours rien.
    MERCI

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    si tu as 2 pages indépendantes, c'est normal que les variables ne se conservent pas d'une page à l'autre.

    2 solutions:
    1. mettre dans une variable de SESSION
    2. mettre le script de traitement DANS l'autre (include) : "formulaire et traitement sur la même page"

  5. #5
    Membre à l'essai
    Homme Profil pro
    developper node js
    Inscrit en
    Octobre 2017
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : developper node js
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2017
    Messages : 10
    Points : 11
    Points
    11
    Par défaut reponse
    merci pour la reponse, puis je avoir plus de detail, ou un tuto explique bien cette notion.
    Merci

  6. #6
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  7. #7
    Membre à l'essai
    Homme Profil pro
    developper node js
    Inscrit en
    Octobre 2017
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : developper node js
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2017
    Messages : 10
    Points : 11
    Points
    11
    Par défaut reponse
    merci beaucoup, j'ai trouvé ce que je cherchais.
    merci

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

Discussions similaires

  1. [MySQL] Pourquoi mon message d'erreur ne s'affiche pas ?
    Par geeka dans le forum PHP & Base de données
    Réponses: 21
    Dernier message: 27/07/2014, 09h01
  2. Réponses: 3
    Dernier message: 22/02/2014, 16h28
  3. Messages d'erreur ne s'affichent pas
    Par j_esti dans le forum JSF
    Réponses: 1
    Dernier message: 30/08/2013, 21h58
  4. Message d'erreur ne s'affiche pas en VbScript
    Par MAKSIM dans le forum VBScript
    Réponses: 2
    Dernier message: 24/07/2013, 16h55
  5. [MySQL] Message d'erreur ne s'affiche pas !
    Par CaLeDo dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 17/07/2007, 01h10

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