我有一个MySQL语句,可以在数据库中插入一些变量.我最近添加了两个可选字段($intLat,$intLng).现在,如果没有输入这些值,我将传递一个空字符串作为值.如何将显式空值传递给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, $intLngempty,如果它们是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)";

Php相关问答推荐

将WooCommerce订购项目管理产品链接更改为产品永久链接(前端)

需要数组中单个项目的Laravel 11验证必须是以下之一

make dd()如何正确工作?¨

根据用户组或登录状态显示或隐藏定价后添加的文本

有什么方法可以阻止WordPress主题升级通知吗?

照明\Support\Collection::Filter():参数#1($Callback)的类型必须为?可调用、已给定数组、已调用

无法在Laravel/Vue停靠容器中启动MySQL

LaravelEloquent 地根据表中的值提取记录

在没有谷歌云客户端PHP库的情况下将图像上传到PHP中的Google存储API?

为什么只有最后一次点击的点赞/心形会按预期改变 colored颜色 ,而其他的保持正常 colored颜色 ?

WooCommerce短代码,显示特定产品的购物车徽章中的当前数量

如何使用barryvdh/laravel-Snappy在两个打印页面上将表格分成两部分?

从 XAMPP 运行 shell 脚本时,意外标记(附近出现语法错误

在 Heroku 上部署 Sylius - 路由不正确

PHP 中使用 JSON 的自定义会话处理程序会因错误而 destruct 会话

如何显示所有数组数据而不仅仅是最后的结果

在特征中使用类的属性

Laravel 10 - 使用缓存对 ThrottleRequest 进行限制

按数字然后按字符串对关联 PHP 数组进行排序

列表不在 GROUP BY 子句中并且包含 X2CRM 中的非聚合列