次のコードは、自分のAjax通知システムの一部であり、なんらかの理由で50%しか動作しません。私がコードを呼び出すと、それは実行され、エコーはsuccess
またはremove
のいずれかになりますが、データベースの値は変更されません。何らかの理由?私は引用符で私の列名を入れてみましたが、エコーはエラーです。助けてください、ありがとう!PHPアップデートでデータベースが正しく更新されない
<?php
require_once('.conf.php');
$notid = mysql_real_escape_string($_GET['notification_id']);
$username = mysql_real_escape_string($_SESSION['uname']);
$action = mysql_real_escape_string($_GET['action']);
if ($action == 'add') {
$insert = mysql_query("UPDATE updates SET object_fav = '1' WHERE username = '$username' AND id = '$notid'") or die('Could not connect: ' . mysql_error());
echo 'success';
} elseif($action == 'sub') {
$remove = mysql_query("UPDATE updates SET object_fav = '0' WHERE username = '$username' AND id = '$notid'") or die('Could not connect: ' . mysql_error());
echo 'remove';
} else {
echo 'error';
}
?>
私はそれは私がネットワーク]タブをチェックして、それが正しい値を送信していますが、JavaScriptのではありません知っています。
クエリがエラーを起こした場合、あなたの 'die()'コールは起動します。 'echo mysql_affected_rows();と' success/remove'を実行します。おそらく、 '$ username'や' $ notid'に期待しているものが含まれていないので、あなたは何の行ともマッチしていないでしょう –
@michael PHPの上のほうですよ –
うん、間違ったバージョンをアップロードしたこれには 'session_start()'は含まれていませんでした。愚かな私...あなたは正しかったマイケル –