我有AJAX每5秒運行一次查詢,檢查用戶是否請求與教練進行會話。如果有,它會彈出一個對話框。該腳本更改該字段,以便它不會捕獲相同的會話請求,但似乎並不關心該字段是否爲空,它只是通過php腳本運行。這裏是ajax和php代碼。PHP腳本似乎忽略瞭如果語句?
setInterval(function() {
$.ajax({
type: "GET",
url: "includes/checksessionrequests.php",
success: function(msg){
if(msg == "yes") {
$(\'$<div title="Request Recieved"></div>\').load(\'requestreceived.php\').dialog({modal: true, closeOnEscape: false, open: function(event, ui) { $(".ui-dialog-titlebar-close").hide(); }, height: 300, width: 480, hide: {effect: "fade", duration: 1000}, show: {effect: "fade", duration: 1000}});
}
}
});
查詢
<?php
session_start();
$user = $_SESSION['username'];
include("dbcon.php");
$result = mysql_query("SELECT * FROM sessionrequests
WHERE coach='$user'
AND sessionstatus=''
ORDER BY id") or die(mysql_error());
$row = mysql_fetch_assoc($result);
$sessionstatus = $row['sessionstatus'];
$sessionid = $row['id'];
if($sessionstatus != "") {
die("no");
}
elseif($sessionstatus == "")
{
$result = mysql_query("UPDATE sessionrequests
SET sessionstatus='received'
WHERE id='$id'");
echo "yes";
}
mysql_close($con);
?>
它確實找到一個匹配,因爲它更新sessionstatus以在更新查詢中收到,其中id = $ sessionid – vacarsu
鍵入意味着「NULL ==」「'',但不是'NULL ===」「' – damianb
工作。謝謝。 – vacarsu