Maison  >  Questions et réponses  >  le corps du texte

Comment modifier définitivement quelque chose en utilisant $_POST

J'essaie de renseigner les données d'un site Web à un autre : a.html:

<form action="b.php" method="post">
<textarea id="myProjects" name="mp"></textarea>
<input id="submit" type="submit" value="Submit" />
</form>

Dans b.php :

<?php $content=$_POST['mp'];
echo "you entered ".$content;
?>

Cela fonctionne d'une manière très étrange, lorsque je clique sur le bouton Soumettre, je suis dirigé vers la page b.php et je peux voir ce que j'ai entré. Cependant, si je recharge cette page, au lieu de l'actualiser, mon contenu disparaît et se jette Warning: Undefined array key "mp" Il semble que les données reçues de $_POST soient stockées "temporairement". Je suis nouveau sur PHP donc je ne sais pas comment le comprendre.

P粉459440991P粉459440991236 Il y a quelques jours413

répondre à tous(2)je répondrai

  • P粉182218860

    P粉1822188602024-03-21 00:44:42

    D'une manière générale, ce que vous voulez faire est de stocker la valeur de $_POST['mp'] dans la variable $_SESSION afin qu'elle persiste d'une requête de page à la suivante.

    Cependant, c'est généralement une mauvaise pratique de manipuler directement ces variables. À moins que vous ne nettoyiez les entrées des utilisateurs, vous serez exposé à d'innombrables attaques de script. Bien qu'un certain apprentissage soit nécessaire, il est préférable d'utiliser un framework PHP établi tel que Laravel, qui dispose d'un ensemble complet de fonctionnalités de validation et gère le processus de démarrage d'une session pour vous. Un bon cadre vous aidera également de bien d’autres manières.

    répondre
    0
  • P粉879517403

    P粉8795174032024-03-21 00:37:03

    Vous pouvez utiliser la fonction PHP SESSION pour la persistance des données :

    Dans b.php :

    répondre
    0
  • Annulerrépondre