Rumah > Soal Jawab > teks badan
Saya ingin tahu apa yang salah dengan borang dalam kod saya.
<?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>
Saya menjalankan kod secara tempatan tetapi tidak dapat hasil yang saya inginkan.
Hasil yang saya inginkan ialah jika saya tidak memasukkan nama dalam medan "Nama Anda", hasilnya harus dipaparkan:
Sila daftar sebelum log masuk
P粉2327937652023-09-10 13:59:13
如果“Nama Anda”字段为空,则其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"; } } } } } ?>
saya menggunakan empty()
untuk menguji sama ada medan kosong
dan saya menggunakan pernyataan if-else kerana saya mahu skrip berhenti jika ia menemui keadaan 'benar'
dalam skrip anda, anda boleh menggunakan return;
tetapi itu akan keluar dari skrip anda yang lain
mempunyai kod yang bagus :)