如何使用php捕获带有多个insert的空文本字段

如何使用php捕获带有多个insert的空文本字段,php,html,database,Php,Html,Database,我试图捕捉空文本值,但它不起作用。我可以用其他方法捕捉空值吗?这是我的密码。请帮帮我。对不起,我的英语不好 <?php error_reporting(0); include_once 'dbcon.php'; if(isset($_POST['save_mul'])){ $total = $_POST['total']; for($i=1; $i<=$total; $i++) { $fn = $_POST["fname$i"];

我试图捕捉空文本值,但它不起作用。我可以用其他方法捕捉空值吗?这是我的密码。请帮帮我。对不起,我的英语不好

<?php
   error_reporting(0);
   include_once 'dbcon.php';
   if(isset($_POST['save_mul'])){       
   $total = $_POST['total'];


for($i=1; $i<=$total; $i++)
{
    $fn = $_POST["fname$i"];
    $ln = $_POST["lname$i"];

    if ($fn = "") {
        alert('Please enter the name');
    }else{
        $sql="INSERT INTO users(first_name,last_name) 
          VALUES('".$fn."','".$ln."')";
        $sql = $MySQLiconn->query($sql);
    }       

}?>

表达式中有一个赋值。您需要检查emtpy字符串,如:

if ($fn == "") {

您使用的是alert,这是一个javascript函数,在检查空文本时未使用比较运算符

 <?php
    if(isset($_POST['submit'])){
        echo 'submit entered'.'<br>';
        if($_POST['name'] == '')
        {
          echo 'enter name';
        }
        else {
        echo $_POST['name'];    
        }

    }

    ?>
    <form method="POST" action="">
      <input type="text" name="name" >
      <input type="submit" name="submit">
    </form>

也可以使用
empty
进行比较,使用
echo
在for循环中显示PHP中的警报消息

if (empty($fn)) {
    echo 'Please enter the name';
}else{
    $sql="INSERT INTO users(first_name,last_name) 
      VALUES('".$fn."','".$ln."')";
    $sql = $MySQLiconn->query($sql);
}    

alert('请输入名称')
是JavaScript函数。您正在以不安全的方式将post值放入sql查询中。这是sql注入的漏洞。@daro3,在您的代码中,这是主要错误。请记住
alert()
是java脚本函数。还有一件事,这段代码并不好,因为除了保存在数据库中的值之外,所有其他任务都可以用更少的代码在javascript中完成。。这样会跑得更快。。。。
if (empty($fn)) {
    echo 'Please enter the name';
}else{
    $sql="INSERT INTO users(first_name,last_name) 
      VALUES('".$fn."','".$ln."')";
    $sql = $MySQLiconn->query($sql);
}