我已經測試過,發現正確的數據被發送,但PHP更新數據庫中的字段即處理更新無法正常工作。
發生的一切就是我在條件中得到了else響應。
我需要根據用戶輸入是什么來更新數據庫。
就像我說的,我得到的回應是else回應。
$youruname = $_POST['youruname'];
$selectedplayer = $_POST['selectedplayer'];
$selPlayerUname = $_POST['selPlayerUname'];
$flag = "";
$itStatus = "";
$checkit = mysqli_query($conn,"SELECT it FROM login WHERE uname='$selPlayerUname'");
while($row = mysqli_fetch_array($checkit))
{
$itStatus = $row["it"];
}
if($itStatus == "not it")
{
mysqli_query("UPDATE login SET it = CASE WHEN uname = '$youruname' THEN 'not it' ELSE 'it' END WHERE uname IN ('$youruname', '$selPlayerUname')");
$flag = "success";
}
else if($itStatus == "it")
{
$flag = "nope";
}
else
{
$flag = "error";
}
echo json_encode(array("message" => $flag, "tagged" => $selectedplayer));
mysqli_free_result($checkit);
mysqli_close($conn);
+0
的var_dump($ iStatus)這是什么返回 –
+0
警告:你的查詢很容易受到SQL注入。請切換到[已準備好的語句](http://bobby-tables.com/php.html)。 –
+0
如果您的更新查詢中有'SET it = CASE',如果CASE是一列沒有問題,但是,如果不是?另外,你的代碼很容易被sql注入。了解如何使用準備好的語句。 –