我创建了一个PHP站点,它使用具有基本功能的MySQLi将HTML5表单提交到我的数据库中。问题是如果所有字段都已完成,它只会插入数据库。我该如何制作它以便我可以将某些字段留空,但让其余部分正常工作?
//connection statements above
$first=$_POST['first'];
$last=$_POST['last'];
$signed=$_POST['signed'];
$cardnumb=$_POST['cardnumb'];
$perm=$_POST['permcard'];
$stmt = $mysqli->prepare("INSERT INTO information (first_name, last_name, signed, number, permanent) VALUES (?,?,?,?,?)");
$stmt->bind_param("sssss", $first, $last, $signed, $cardnumb, $perm);
$stmt->execute();
$stmt->close();
为了清楚起见,如果填写了所有字段,此代码可以正常工作。如果字段留空,它不起作用。
有没有办法让这个工作用空字段?
答案 0 :(得分:1)
如果您没有填写该字段,$_POST['varname'];
会返回null
还是空字符串?
如果它是一个空字符串,这仍然可以正常工作。
如果它是null
,那么只要字段在数据库中被允许为null
,它就应该有效。
检查您的表方案,并确保允许字段为null
。