亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用 Ajax 在 Div 單擊上更新 MYSQL 表 - 沒有頁面刷新?

使用 Ajax 在 Div 單擊上更新 MYSQL 表 - 沒有頁面刷新?

PHP
九州編程 2023-04-15 14:12:01
我有一個名為用戶的 MYSQL 表。我還有一個名為 online_status 的列。在我的頁面上,我希望用戶能夠將他們的狀態切換為“在線”或“離線”,并在他們使用 Ajax 單擊 div 時在數據庫中更新此狀態,而無需刷新頁面。這是我的 PHP/HTML 代碼: <?php if ($profile['online_status'] == "Online") {             $status = "Offline";            }else{            $status = "Online";            } ?><div id="one"><li class="far fa-circle" onClick="UpdateRecord(<? echo $profile['online_status']; ?>);"/></li><? echo 'Show as ' .$status; ?></div>  我的阿賈克斯:<script type="text/javascript" src="/js/jquery.js"></script><script>  function UpdateRecord(id)  {      jQuery.ajax({       type: "POST",       url: "update_status.php",       data: 'id='+id,       cache: false,       success: function(response)       {         alert("Record successfully updated");       }     }); }</script>更新狀態.php<?php$var = @$_POST['id'] ;$sql = "UPDATE users SET online_status = 'Offline' WHERE user_id = 1";$result = mysqli_query($conn,$sql) or die(mysqli_error($conn));//added for testingecho 'var = '.$var;?>我目前沒有收到任何警報,我的數據庫中也沒有任何更新。請有人可以幫助我改進/修復代碼以使其正常工作嗎?此外,如果有一種方法可以消除對 update_status.php 文件的需求并擁有 ajax 自我發布,那么這將是首選。
查看完整描述

2 回答

?
Cats萌萌

TA貢獻1805條經驗 獲得超9個贊

據我所知,沒有彈出警報也沒有更新任何內容的原因是onclick()您擁有的按鈕。將參數周圍的引號添加到更新函數。正如您所擁有的,javascript 將參數視為一個 javascript 變量,就像$profile['online_status'];一個字符串。

如果您調試了代碼,您應該會看到一條指向該行的onclick()錯誤

改變這個

onClick="UpdateRecord(<? echo $profile['online_status']; ?>);"

onClick="UpdateRecord('<? echo $profile['online_status']; ?>');"

此外,您還在更新語句中對 where 子句進行硬編碼。您應該$_POST['id']通過準備好的語句使用變量


查看完整回答
反對 回復 2023-04-15
?
蝴蝶不菲

TA貢獻1810條經驗 獲得超4個贊

將數據傳遞到 PHP 文件


data: { id: id },

將數據庫連接添加到您的 PHP 文件


<?php

 $var = $_POST['id'] ;

 $sql = "UPDATE users SET online_status = 'Offline' WHERE user_id = '$var'";

 $result = mysqli_query($conn,$sql) or die(mysqli_error($conn));

?>

如果您仍然看到任何錯誤,然后按F12并轉到網絡選項卡,然后單擊該 div,網絡選項卡將記錄您的 ajax 文件返回,您可以通過選擇您的 php 文件的響應來檢查那里,希望它有幫助


查看完整回答
反對 回復 2023-04-15
  • 2 回答
  • 0 關注
  • 137 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號