Ich möchte wissen, was mit dem Formular in meinem Code nicht stimmt.
<?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>
Ich habe den Code lokal ausgeführt, konnte aber nicht die gewünschten Ergebnisse erzielen.
Das Ergebnis, das ich möchte, ist, dass, wenn ich keinen Namen in das Feld „Ihr Name“ eingebe, das Ergebnis angezeigt werden sollte:
Bitte registrieren Sie sich, bevor Sie sich anmelden
如果“Your Name”字段为空,则其
strlen($name)
应为0
,第一个if语句为真,并显示Your name should be longer than 5 characters
你可以尝试这个:i used
empty()
to test if the field empty and i used if-else statements because i want the script to stop if it founds a 'true' condition in your script you can usereturn;
but that will exit the rest of your scripthave a nice code :)