2017-03-01 38 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實例 –