我有一个将某些变量插入数据库的MySQL语句。我最近添加了两个可选字段($ intLat,$ intLng)。现在,如果未输入这些值,我将传递一个空字符串作为值。如何将明确的NULL值传递给MySQL(如果为空)?
$query = "INSERT INTO data (notes, id, filesUploaded, lat, lng, intLat, intLng) VALUES ('$notes', '$id', TRIM('$imageUploaded'), '$lat', '$long', '$intLat', '$intLng')"; mysql_query($query);
要将NULL传递给MySQL,只需执行此操作。
INSERT INTO table (field,field2) VALUES (NULL,3) 因此,在您的代码中,检查if $intLat, $intLng是empty,如果是,请使用NULL代替'$intLat'或'$intLng'。
$intLat = !empty($intLat) ? "'$intLat'" : "NULL"; $intLng = !empty($intLng) ? "'$intLng'" : "NULL";
$query = "INSERT INTO data (notes, id, filesUploaded, lat, lng, intLat, intLng) VALUES ('$notes', '$id', TRIM('$imageUploaded'), '$lat', '$long', $intLat, $intLng)";来源:stack overflow
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。