mysql中仅php不能插入空值

mysql中仅php不能插入空值,php,mysql,Php,Mysql,我们只想在银行中插入值…但不想在现金中插入0值…那么怎么做呢 if(!isset($_POST[ $cash]) && ($_POST[ $bank] != "")) { $query1="INSERT INTO balance_entry(cust_id,amount, discount, total_amt, date, modified_date) VALUES ('$cust_id','$amount','$discount','$

我们只想在银行中插入值…但不想在现金中插入0值…那么怎么做呢

if(!isset($_POST[ $cash]) && ($_POST[ $bank] != "")) 
{
    $query1="INSERT INTO balance_entry(cust_id,amount, discount, total_amt, date, modified_date) VALUES ('$cust_id','$amount','$discount','$total_amt','$today', '$today')";

                 if (!mysql_query($query1,$conn))
                 {
                   die('Error: ' . mysql_error());
                 }

  $query1="INSERT INTO payment_detail(bill_id, date) VALUES ((select max(bill_id) from balance_entry),'$today')";

                  if (!mysql_query($query1,$conn))
                  {
                    die('Error: ' . mysql_error());
                  }

  $query1="INSERT INTO bank_detail(p_id,bank,date) VALUES ((select max(p_id) from payment_detail),'$bank','$today')";

                if (!mysql_query($query1,$conn))
                {
                  die('Error: ' . mysql_error());
                }
  $query1="INSERT INTO credit_detail(p_id,bill_id,debit_amount,credit_amount,date) VALUES ((select max(p_id) from payment_detail),(select max(bill_id) from balance_entry),'$debit_amount','$credit_amount','$today')";

                 if (!mysql_query($query1,$conn))
                 {
                     die('Error: ' . mysql_error());
                 }
}

确保该列可以为NULL。然后你可以这样做:

INSERT INTO whatever (column1, column2)
  VALUES ("whatever", NULL);
column2现在将为空

不要使用MYSQL_*函数!它们已经大量过时,已经被弃用了很长时间,并且已经从PHP7中完全删除。请使用较新的数据库接口库,如mysqli或PDO