Maison > Questions et réponses > le corps du texte
Je veux savoir ce qui ne va pas avec le formulaire dans mon code.
<?php if(isset($_POST['submit'])) { $arrayName = array("TeacherA", "TeacherB", "TeacherC" , "TeacherD", "TeacherE"); $minimum = 5; $maximum = 10; $name = $_POST['yourName']; $email = $_POST['yourEmail']; if(strlen($name) < $minimum) { echo "Your name should be longer than 5 characters"; } if(strlen($name) > $maximum) { echo "Your name should not be longer than 10 characters"; } if(!in_array($name,$arrayName)){ echo "Please do register with us before you can login"; } else { echo "Welcome!"; } } ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Blank</title> </head> <body> <form action="form.php" method="post"> <label>Your Name: </label> <input type="text" name="yourName"> <br> <label for="">Your E mail:</label> <input type="email" name="yourEmail" id=""><br> <!-- <textarea name="yourMessage" id="" cols="30" rows="10"></textarea><br> --> <input type="submit" name="submit" value="submit"> </form> </body> </html>
J'ai exécuté le code localement mais je n'ai pas pu obtenir les résultats souhaités.
Le résultat que je souhaite est que si je ne saisis pas de nom dans le champ "Votre nom", le résultat devrait s'afficher :
Veuillez vous inscrire avant de vous connecter
P粉2327937652023-09-10 13:59:13
如果« Votre nom »字段为空,则其strlen($name)
应为0
,第一个if语句为真,并显示Your name should be longer than 5 characters
你可以尝试这个 :
<?php if (isset($_POST['submit'])) { $arrayName = array("TeacherA", "TeacherB", "TeacherC", "TeacherD", "TeacherE"); $minimum = 5; $maximum = 10; $name = $_POST['yourName']; $email = $_POST['yourEmail']; if (empty($name)) { echo "Please do register with us before you can login"; } else { if (strlen($name) < $minimum) { echo "Your name should be longer than 5 characters"; } else { if (strlen($name) > $maximum) { echo "Your name should be less than 10 characters"; } else { if (in_array($name, $arrayName)) { echo "Welcome!"; } else { echo "Your login is not correct"; } } } } } ?>
j'ai utilisé empty()
pour tester si le champ est vide
et j'ai utilisé des instructions if-else parce que je veux que le script s'arrête s'il trouve une "vraie" condition
dans votre script, vous pouvez utiliser return;
mais cela quittera le reste de votre script
avoir un joli code :)