2017-03-01 37 views
0

IM,连接成功,但这个..SQL UPDATE使用PDO SQL连接

<?php 
include 'db.php'; // Call SQL 
$page = 'soon'; // Unique ID 
$db = "UPDATE views 
     SET num = num + 1 
     WHERE page = '$page'"; 
?> 

不起作用

如果我检查数据库中的值,num是不变的。

+0

$ DB = “UPDATE意见 SET NUM = NUM​​ + 1 WHERE页= '”。$页 “'”;替换此查询 – rahulsm

+0

更新视图 SET num = isnull(num,0)+ 1 WHERE page ='$ page' –

+0

什么是$ page,它的值是什么?您需要执行查询,但您需要确保$页已正确初始化。如果您可以保证它将是数字,那么您的查询看起来不错。如果没有,你需要确保你的情况下SQL注入是不可能的。 –

回答

1

此代码完全没有做任何事情。要执行查询,您必须针对数据库运行查询。此外,你永远也不会直接添加一个变量来查询,但只有through a parameter

<?php 
include 'db.php'; // Call SQL 
$page = 'soon'; // Unique ID 
$stmt = $db->prepare("UPDATE views SET num = num + 1 WHERE page = ?"); // instead of $page 
$stmt->execute([$page]); // here goes $page 
+0

HTTP错误500 :( –

+0

http://stackoverflow.com/questions/32648371/my-pdo-statement-doesnt-work –

+0

而不是$ db应该有一个变量,你存储你的PDO实例 –