如果表单字段为空,则将空值插入SQL

时间:2012-02-13 15:17:16

标签: php sql null

如果表单字段留空但没有太多运气,我正在尝试将空值添加到数据库中...

谁能看到这出错的地方?

<?php
$con = mysql_connect("ipaddress","user","password");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("database", $con);

if (is_null($_POST["event_sub"]) || $_POST["event_sub"]=="") {
    $event_sub = NULL;
} else {
    $event_sub = mysql_real_escape_string($_POST["event_sub"]);
}

$sql="INSERT INTO myTable (event_sub)
VALUES
(". $event_sub .")";

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

mysql_close($con)
?>

2 个答案:

答案 0 :(得分:2)

也许试试这个:

if (is_null($_POST["event_sub"]) || $_POST["event_sub"]=="") {
$event_sub = 'NULL';
} else {
$event_sub = mysql_real_escape_string($_POST["event_sub"]);
}

将NULL放在单引号中将导致在您的查询中插入单词NULL而不是实际的NULL,这是什么。

答案 1 :(得分:0)

为什么你需要搜索单词NULL?只需将该列的插入留空即可。并确保在表中设置了allow null ..