我的下拉框如何包含空条目的验证?

问题描述 投票:0回答:2

我试图让PHP中的下拉框得到验证,这样如果值为Null,它将输出错误。但我似乎无法让这个工作。

我已尝试过其他网站上的解决方案以及此网站上的其他答案,但它们似乎没有起作用。

<?php 
  include("config.php");
  $sql = "SELECT ID, Name, Surname, Address, TelNo, Email, Paid, Method, 
          Form, GMS, CanVolunteer FROM Tbl_Social";
  if(isset($_POST['form'])) {
    if($_POST['form'] == 'NULL') {
        echo 'Please select an option from the dropdown menu.';
    }
    elseif ($_POST['form'] == 'ID') {
        echo 'You have selected ID.';
    }
  }
?>  

<!DOCTYPE html>
<html>
  <div class="dropdown">
    How do you want to find a player?<br>
    <select name="form">
      <option value="">Select a choice </option>
      <option value="ID">ID</option>
      <option value="Name">Name</option>
      <option value="Surname">Surname</option>
      <option value="Address">Address</option>
      <option value="TelNo">Telephone Number</option>
      <option value="Email">Email</option>
    </select>
    <input type="text" name="varQuery">
    <input type="submit">
  </div>
</html>

如果表单为空,我希望网页显示“请在下拉框中输入值”的行。

php html
2个回答
1
投票

只需给出一个值选择一个像

 <option  value="select">Select a choice </option>

并检查是否选择了选择。

 if($_POST['form'] == 'select') {
    echo 'Please select an option from the dropdown menu.';

}
elseif ($_POST['form'] == "ID") {
    echo 'You have selected ID.';

}

顺便说一句,如果你想发送POST

<form action ="POST">... <form>

更有用。

所有代码:

<?php
if(isset($_POST['clickedButton'])) {

if($_POST['form'] == 'select') {
    echo 'Please select an option from the dropdown menu.';

}
elseif ($_POST['form'] == "ID") {
    echo 'You have selected ID.';

}}
?>  

<!DOCTYPE html>
<html>

<div class="dropdown">
How do you want to find a player?<br>
<form method ="POST" > 
<select name="form">
    <option  value="select">Select a choice </option>

    <option value="ID">ID</option>

    <option value="Name">Name</option>

    <option value="Surname">Surname</option>

    <option value="Address">Address</option>

    <option value="TelNo">Telephone Number</option>

    <option value="Email">Email</option>
    <input type="text" name="varQuery">
    <button type="submit" name ="clickedButton" >ENTERS </button>
 </select>
 </form>

0
投票

isset()已经检查变量是否存在且不为空。您可以将if语句合并为一个:

if(!isset($_POST['form'])) {
   echo 'Please select an option from the dropdown menu.';
}
elseif ($_POST['form'] == 'ID') {
   echo 'You have selected ID.';
}
© www.soinside.com 2019 - 2024. All rights reserved.