2017-03-01 5 views
0

イム、接続は成功ですが、この..私は、データベース内の値をチェックすると の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

$デシベル= "ページ= UPDATEビュー のSET NUM = NUM​​ + 1 '"。。$ページ "'";このクエリを置き換える – rahulsm

+0

UPDATEビュー SET num = isnull(num、0)+ 1 WHERE page = '$ page' –

+0

$ pageとは何ですか、その値は何ですか?クエリを実行する必要がありますが、$ 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インスタンスを保存した変数が必要です –

関連する問題