PHP - 如何添加到变量NULL值并保存到数据库中?

use*_*621 0 php mysql sql null

我正在尝试将变量设置为NULL:

$q = NULL.",";
$q .= 'abc';
Run Code Online (Sandbox Code Playgroud)

并保存到数据库:

mysql_query("INSERT INTO table (col_a, col_b) VALUES (".$q.")")
Run Code Online (Sandbox Code Playgroud)

但这会生成错误消息:

INSERT INTO table (col_a, col_b) VALUES (,'abc')You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ','abc')' at line 2
Run Code Online (Sandbox Code Playgroud)

如何NULL从变量保存到数据库?

Joh*_*Woo 5

您可以删除您希望其值为null的列,例如

$q = 'abc';
mysql_query("INSERT INTO table (col_b) VALUES ($q)")
Run Code Online (Sandbox Code Playgroud)

或者如果值是动态的,那么当前代码的唯一问题是您没有包含NULL在字符串中,

$q = "NULL,";
$q .= "'abc'";
mysql_query("INSERT INTO table (col_a, col_b) VALUES ($q)")
Run Code Online (Sandbox Code Playgroud)

您的代码易受攻击SQL Injection,请阅读以下文章以了解如何防止它.