Je suis nouveau à PHP et tente de créer un formulaire simple à l'aide de HTML et de PHP. J'utilise Apache Netbeans avec XAMPP pour exécuter le fichier PHP sur Google Chrome. Voici le code:
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<h1>An example website</h1>
<p>This is an example website to test HTML & PHP</p>
<form action="myform.php" method="post">
Name: <input type="text" name="name"><br>
<input type="submit" name="formSubmit" value="Submit">
</form>a
<?php
if($_POST['formSubmit'] == "Submit") {
echo $_POST['name'];
}
?>
</body>
</html>
4 Réponses :
Première fois que le script est exécuté, le formulaire n'a pas été soumis. Donc, il existe différentes manières de vérifier que le script PHP fonctionne à la suite d'une soumission, il s'agit d'un La seconde erreur peut être provoquée car vous essayez d'exécuter un autre script à l'aide de un est le script que vous nous montrez appelé et ce script sera exécuté pour traiter les données de formulaire p> p> action = "myform.php" code> p> myform.php code> sinon vous pouvez laisser tha t param Ceci p>
C'est parce que vous avez défini votre formulaire action sur MyForm.php, mais il n'existe pas de page MyForm.php
Définissez votre formulaire d'action sur vide si vous souhaitez imprimer le nom sur la même page P>
et remplacez votre code PHP par ce p>
Vous avez quelques problèmes différents ici ...
Tout d'abord, sur le "avis" que vous obtenez pour la variable n'est pas défini - ceci est parce que vous essayez de vérifier la valeur de la variable de poste avant tout ce qui a été affiché à la page. p>
Vous pouvez surmonter cela en vérifiant si la valeur est définie en premier comme suit: p> Vous obtenez le message d'erreur ci-dessus parce que e_notitice est activé - voir Rapport d'erreur pour plus de Les documents PHP P> Deuxièmement, votre formulaire pointe vers une page qui n'existe pas. Il semble que votre formulaire et la pièce qui vérifie la valeur postale est sur Vous avez besoin Pour mettre à jour votre pour le mettre tous ensemble: P > index.php code> mais votre formulaire pointe vers myform.php code>. P> index.php code> à la place p> <html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<h1>An example website</h1>
<p>This is an example website to test HTML & PHP</p>
<form action="index.php" method="post">
Name: <input type="text" name="name"><br>
<input type="submit" name="formSubmit" value="Submit">
</form>a
<?php
if(isset($_POST['formSubmit']) && $_POST['formSubmit'] == "Submit") {
echo $_POST['name'];
}
?>
</body>
</html>
Donc, votre réponse combinée avec @ Riggsfolly m'a tous deux aidé à résoudre le problème et j'accepterais volontiers les deux. J'accepte le vôtre à cause de l'explication détaillée qui m'a aidé à comprendre pourquoi mon code s'est trompé. Merci à la fois pour les réponses rapides de la foudre!
Si vous souhaitez soumettre des données sur la même page, vous pouvez utiliser
<form method="post" action="<?=$_SERVER['PHP_SELF'];?>">