狐的傳說
2022-07-21 21:23:03
我有一個如下所示的 php 代碼,其中有一個 if 條件。php:if(mysqli_num_rows($result1) > 0){ // Line X while($row = mysqli_fetch_array($result1)){ if($row['open'] == "true") { if(!isset($_SESSION['admin'])) { $message = "user " . $row['user_name'] . " is currently editing the form. Want to take over ?"; // Line B echo "<script type='text/javascript'>if(confirm('$message')) { } else { };</script>"; // Line A } break; } }}我能夠在B 行集成$message。我想知道我應該在A 行進行哪些更改,以便可以將以下代碼集成到if(confirm('$message') 塊的花括號中:$username = $_SESSION['user_name'];$open="true";$write="1";$stmt=$connect->prepare("UPDATE trace_users SET write=0 WHERE write=1"); // revoke write access of all users$stmt=$connect->prepare("UPDATE trace_users SET open=?, write=? WHERE user_name=?");$stmt->bind_param('sss', $open, $write, $username);$stmt->execute();
2 回答

森欄
TA貢獻1810條經驗 獲得超5個贊
不幸的是,user1950349,這比看起來要復雜一些,因為您的想法更接近桌面應用程序的方式,其中存在允許代碼響應用戶輸入的消息循環。但是對于由 php 生成并通過 Internet 發送的網頁,我們沒有可使用的消息循環。因此,我們找到了一種方法來讓服務器和用戶的計算機來回發送消息,而無需任何額外的網頁加載。
這就是 AJAX 發揮作用的地方;但是,如何將其用于您的用例的解釋將取決于您如何實現 AJAX。例如,您可能會使用 jQuery 或其他一些 javascript 庫。

肥皂起泡泡
TA貢獻1829條經驗 獲得超6個贊
如果您避免將兩種不同的語言混合在一起,這是一個很好的做法。
混合這兩者時,代碼的復雜性會增加。
既然你需要答案,那就去吧
echo "<script type='text/javascript'>if(confirm(" . $message . ")) { } else { };</script>";
在 echo 的雙引號/單引號 (" / ')中,所有內容都被視為字符串,因此要訪問您的 PHP 變量,您需要使用連接方法來使用該 PHP 變量。
如果(確認(“。$消息?!保?/p>
更新
如上所述,您需要執行相同的步驟。您需要使用字符串連接。
但這將非常復雜,并且很難進行調試。
您可以使用更好的方法來使用PHP 代碼,也可以以更好的方式將其與 JavaScript 代碼一起使用XHR request
。design
添加回答
舉報
0/150
提交
取消