Partage
  • Partager sur Facebook
  • Partager sur Twitter

[form] Réafficher les valeurs après validation

    15 septembre 2019 à 21:22:58

    Bonsoir ! :) Je cherche à réafficher les valeurs lorsque l'on appuie sur envoyer dans mon formulaire. Il me semble l'avoir déjà fait auparavant, mais je ne m'en souviens plus, et j'ai cherché sur internet mais je ne trouve rien de concret... Je vous montre ce que j'ai fais :

        <form action="minichat_post.php" method="post">
            <p>
            <label for="pseudo">Pseudo</label> : <input type="text" name="pseudo" id="pseudo" value="<?php echo $_POST['pseudo']; ?>"/><br />
            <label for="message">Message</label> :  <input type="text" name="message" id="message" /><br />
    
            <input type="submit" value="Envoyer" />
    		</p>
        </form>

    Donc la partie ou j'essaie d'afficher la valeur est dans value echo $_POST['pseudo']

    Mais il m'affiche ceci sur le navigateur :

    Je ne comprend pas pourquoi il affiche ceci dans le pseudo... et je ne sais comment définir le pseudo, vu qu'il me dis qu'il est inconnu...

    Je vous montre tout de même tout mon code :

    minichat.php :

    <?php include ("header.php"); ?>
    <style>
    	form{
    		text-align: center;
    	}
    </style>
    
        
        <form action="minichat_post.php" method="post">
            <p>
            <label for="pseudo">Pseudo</label> : <input type="text" name="pseudo" id="pseudo" value="<?php echo $_POST['pseudo']; ?>"/><br />
            <label for="message">Message</label> :  <input type="text" name="message" id="message" /><br />
    
            <input type="submit" value="Envoyer" />
    		</p>
        </form>
    
    <?php
    // Connexion à la base de données
    include("connect.php");
    
    	$reponse = $bdd->query('SELECT pseudo, message, DATE_FORMAT(date_message, \'%d/%m/%Y à %Hh%i\') AS date_message_fr FROM minichat ORDER BY ID DESC LIMIT 0, 10');
    
    	while ($donnees = $reponse->fetch()){
    		echo '<p>Le '
    		. $donnees['date_message_fr']
    		. ' <strong>'
    		. htmlspecialchars($donnees['pseudo'])
    		. '</strong> : '
    		. htmlspecialchars($donnees['message'])
    		. '</p>';
    	}
    	//Ne surtout pas l'oublier
    	$reponse->closeCursor();
    
    ?>
        </body>
    </html>

    Et minichat_post.php :

    <?php
    include("connect.php");
    $req = $bdd->prepare('INSERT INTO minichat (pseudo, message) VALUES(?, ?)');
    $req->execute(array($_POST['pseudo'], $_POST['message']));
    // Puis rediriger vers minichat.php comme ceci :
    header('Location: minichat.php');
    ?>

    Voila, si jamais vous réussissez à m'aider, merci beaucoup :)



    • Partager sur Facebook
    • Partager sur Twitter
      15 septembre 2019 à 21:34:11

      Bonjour,

      Parce qu'avant que le formulaire soit envoyé, cette variable n'existe pas.

      • Partager sur Facebook
      • Partager sur Twitter
        15 septembre 2019 à 21:36:21

        J'ai essayé de bidouiller un peu, j'ai mis ceci a la place de ce que j'avais dans value :

        <?= $_POST['pseudo'] ?? '' ?>

        Donc je n'ai plus d'erreur, mais les valeurs ne restent pas quand même lorsque je valide le formulaire... Que dois je faire ?

        • Partager sur Facebook
        • Partager sur Twitter
          15 septembre 2019 à 22:01:01

          Salut,

          le script s'appelle minichat, la cible du formulaire minichat_post

          • Partager sur Facebook
          • Partager sur Twitter
            16 septembre 2019 à 20:37:44

            Oui mais je ne vois pas ce que je peux faire en fait ... Il faut que j'envoie sur minichat_post pour pouvoir réaliser ce que je veux :euh:
            • Partager sur Facebook
            • Partager sur Twitter
              16 septembre 2019 à 20:48:25

              bonjour,

              une seul page suffit tu redirige sur la même page après le post

              par contre je trouve ton système un peu mal fait niveau code

              et je comprend pas non plus une chose, comment peut on faire un chat en php sans recharger la page en jquery régulièrement pour avoir la mise à jour des nouveaux messages

              • Partager sur Facebook
              • Partager sur Twitter

              Pas d'aide concernant le code par MP ni par mail, le forum est là pour ça

                17 septembre 2019 à 15:20:57

                AaFredericHusson a écrit:

                bonjour,

                une seul page suffit tu redirige sur la même page après le post

                par contre je trouve ton système un peu mal fait niveau code

                et je comprend pas non plus une chose, comment peut on faire un chat en php sans recharger la page en jquery régulièrement pour avoir la mise à jour des nouveaux messages


                Ah bah il faudra dire ça aux cours de Mathieu Nebra, car j'ai suivi à la lettre son cours, et ça en est la copie conforme ... ^^

                Après ce n'est qu'un exercice pour que je me remette dans le bain niveau PHP ^^ le JQuery, je verrai ça plus tard :)

                -
                Edité par AlexyaFntrl 17 septembre 2019 à 15:22:21

                • Partager sur Facebook
                • Partager sur Twitter

                [form] Réafficher les valeurs après validation

                × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                • Editeur
                • Markdown