我有一个查询(分钟不安全),试图将列的值设置为NULL。基本上只是将其恢复为空。在数据库设计中选中“允许NULL”。它是一个MSSQL数据库。首先我试过了:
$query = "UPDATE Table_Name SET Image = '', Thumb = '' WHERE PageID = 5";
然后:
$query = "UPDATE Table_Name SET Image = NULL, Thumb = NULL WHERE PageID = 5";
第二个不会产生错误,但不会将数据库值设置为NULL。从我所看到的(网站研究)'NULL'是正确的吗?对不起,PHP的新手。
修改
查询由if语句调用。检查GET值是否等于。我知道这不是很安全。我只是想尝试用技术测试/玩一点。完整的调用和查询如下。
<?php
if (isset($_GET['change']) && $_GET['change'] == "image1") {
$query = "UPDATE Table_Name SET Image = NULL, Thumb = NULL WHERE NewsID = ".$_GET['id']." ";
}
?>
这个if语句被触发删除'按钮'。代码如下:
<a href="Update.php?change=image1&cid=<?php echo $row["NewsID"]; ?>&id=<?php echo $row["NewsID"]; ?>">delete</a></td>
我现在相信,查询没有被调用?但是按钮确实会改变并设置它要执行的值,所以我可以假设,if语句没有接受它。 Update.php是查询当前所在的页面,因此它几乎只是作为刷新。
答案 0 :(得分:0)
我在很长一段时间内没有使用PHP,但NULL是否需要用引号括起来?
试试这个:
$query = "UPDATE Table_Name SET Image = 'NULL', Thumb = 'NULL' WHERE PageID = 5";
希望这有帮助。