将 PHP NULL 变量值插入到 MSSQL 查询中

克里斯塔普蒙

我有这个“正常”的 PHP IF 语句:

if(EMPTY($_POST['review_date'])){
    $review_date = NULL;
}
else {
    $review_date = $_POST['review_date'];
}

当我将变量传递给 sqlsrv_query 时,问题就开始了:

sqlsrv_query($connect,"UPDATE goals SET review_date='$review_date' WHERE id='$department'") or die(sqlsrv_errors());

在 IF 语句为 TRUE 的情况下,review_date 单元格中的值显示为 1900-01-01,而不是 NULL。

如果我尝试在 IF 语句中的 NULL 值周围加上引号,则会出现以下错误:

注意:C:\xampp\htdocs\project\edit.php 中第 30 行的数组到字符串的转换

如果 NULL 直接插入到查询中,它会按原样执行。

目标表中的列属性启用了允许空值并且默认值设置为 (NULL)。

迅速解决了其他问题,但并没有真正取得任何进展。

我在这里做错了什么?

更新1:

根据要求,这里是 HTML 代码:

<form method="POST" action="edit.php">

Review date <i>(optional)</i>: <input type="date" name="review_date" value="" placeholder="dd/mm/yyyy" > 

<p><button type="submit">Save</button></p>

</form>

关于 var_dumps:

var_dump($review_date);

返回: NULL

var_dump($department);

返回:字符串(2)“36”

var_dump(sqlsrv_query($connect,"UPDATE goals SET review_date='$review_date' WHERE id='$department'"));

返回:资源(7)类型(SQL Server 语句)

伯恩德·奥特

您的代码很危险,因为它包含 SQL 注入!

你应该做这个:

if(EMPTY($_POST['review_date'])){
    $review_date = NULL;
}
else {
    $review_date = $_POST['review_date'];
}

$sql = "UPDATE goals SET review_date=? WHERE id=?";
$params = array($review_date, $department);

$stmt = sqlsrv_query( $conn, $sql, $params);

通过在查询中使用参数,您可以毫无问题地传输此空值。

始终使用参数!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用打字稿将组件变量值插入到 html src 标签中

来自分类Dev

如何将变量值插入表中?

来自分类Dev

将变量值传递到TextView中

来自分类Dev

bash 将变量值存储到 JSON 文件中

来自分类Dev

将数据从 MSSQL 中的查询传递到下拉列表中

来自分类Dev

PHP从输入插入到MySQL变量值

来自分类Dev

如何将PHP变量值添加到查询之间

来自分类Dev

尝试使用AJAX将变量值从JavaScript传递到PHP

来自分类Dev

尝试使用AJAX将变量值从JavaScript传递到PHP

来自分类Dev

将变量值从“文本”字段传递到iOS中的变量

来自分类Dev

使用PHP将变量值保存在文本文件中

来自分类Dev

使用PHP将变量值保存在文本文件中

来自分类Dev

将变量值从Codeigniter中的另一个函数插入数据库?

来自分类Dev

如何在php的单个字段中插入两个变量值?

来自分类Dev

在PHP中传递Javascript变量值

来自分类Dev

如何将变量值传递到存储过程中

来自分类Dev

将javascript变量值传递给php变量

来自分类Dev

MSSQL将行插入到关系表中。

来自分类Dev

如何通过 PHP 将链接图像插入到查询中?

来自分类Dev

将本地变量值订阅到Angular中另一个组件中的变量的Observable中

来自分类Dev

将JavaScript变量值作为PHP函数的参数

来自分类Dev

在json中插入javascript变量值

来自分类Dev

在json中插入javascript变量值

来自分类Dev

将MySQLi查询存储在PHP变量中

来自分类Dev

如何将查询结果中的值转换为变量和变量值?

来自分类Dev

使用Zend_db_adapter将MSSQL查询与PHP一起插入的字符数不超过300

来自分类Dev

如何将php变量插入到Oracle表中?

来自分类Dev

将变量插入到提交按钮的php echo中

来自分类Dev

使用键值将 PHP 数组插入到 JavaScript 变量中

Related 相关文章

热门标签

归档