欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php怎么样判断多个post值是否为空

程序员文章站 2023-12-24 13:17:51
...
本帖最后由 gz109 于 2013-07-22 17:37:50 编辑

比如一个表单,很多个选项,怎么样来用php来判断值是否为空或者为正确数值

<form action="add.php" method="post"><br data-filtered="filtered">
<input type="text" name="name"><br data-filtered="filtered">
<input type="text" name="name2"><br data-filtered="filtered">
<input type="text" name="name3"><br data-filtered="filtered">
<input type="text" name="name4"><br data-filtered="filtered">
<input type="text" name="name5"><br data-filtered="filtered">
</form><br data-filtered="filtered">
<br data-filtered="filtered">
<?php<br data-filtered="filtered">
$name1=$_POST[name1];<br data-filtered="filtered">
$name2=$_POST[name2];<br data-filtered="filtered">
$name3=$_POST[name3];<br data-filtered="filtered">
$name4=$_POST[name4];<br data-filtered="filtered">
$name5=$_POST[name5];<br data-filtered="filtered">
<br data-filtered="filtered">
//插入数据库,如果是就单独判断一个变量,可以用IF,那如果多个怎么办呢<br data-filtered="filtered">
if($name1==''){<br data-filtered="filtered">
   echo '请输入数据';<br data-filtered="filtered">
   exit;<br data-filtered="filtered">
}<br data-filtered="filtered">
<br data-filtered="filtered">
$sql="insert into book values('$name1','$name2','$name3','$name4','$name5')";<br data-filtered="filtered">
mysql_query($sql);<br data-filtered="filtered">
<br data-filtered="filtered">
?>

回复讨论(解决方案)

一个一个判断。empty判空。

//设$_POST = array('name' => '', 'name2' => 'e','name3' => 'r','name4' => '','name5' => ' ');
$t = array_keys($_POST, '');//如果空格不算空,就用这条
$t = array_keys(array_map('trim', $_POST), '');//如果空格算空,就用这条
if($t) 
{ //有空数据项  
print_r($t); //值就是为空的项}
if($name1=='' || $name2="" || $name3=""){  
    echo '请输入数据';  
    exit;  
 }
 <form action="add.php" method="post">
<input type="text" name="name[]">
<input type="text" name="name[]">
<input type="text" name="name[]">
<input type="text" name="name[]">
<input type="text" name="name[]">
</form>
  
<?php
//这里的$name将会得到一个数组
$name=$_POST['name'];
foreach ($name as $value)
{
   if($value=="")
   {
    echo "不能有空值";
    exit();
     }
}
 
$sql="insert into book values('$name[0]','$name[1]','$name[2]','$name[3]','$name[4]')";
mysql_query($sql);
  
?>

这个觉得好用

循环数组,判断值是否为空就可以了。

单个获取表单值,if判断是否为空。

上一篇:

下一篇: