簡體   English   中英

如何用PHP腳本調用jquery函數?

[英]How to call jquery function with php script…?

我試圖制作一個登錄模塊。 我需要顯示消息“ UNAME OR PASS INCORRECT”的能力,但是當uname和pass不匹配時,我將無法顯示該錯誤消息div。

那么,有人對用戶未通過身份驗證時如何顯示div有想法嗎?

提前致謝。

就像GOV所說的那樣,您可能希望通過ajax調用來完成此操作,因為它不需要用戶在嘗試登錄時離開頁面。

如果使用jquery,腳本將非常簡單,例如:

$.post(url,{user:UNAME,pass:PASS},function(data){ 
   try{
    // EDIT: server MUST return response in text/plain as "true" or "false".
    // EDIT: if(data) changed to if(data == "true")
    if(data == "true")   
      window.location = redirectPage;
    else
      showError();
   }catch(e){
      showError();
   } 
});
function showError(){
   $('#'+errorDivID).show();
}

其中url是驗證用戶和密碼組合的頁面的url,如果用戶和密碼的值為true,則返回“ true”,否則返回“ false”。

UNAMEPASS是保存用戶信息的變量, redirectPage是您要重定向經過身份驗證的用戶的頁面的url, errorDivId是要顯示的div元素的ID。 錯誤DIV可能包含警告消息,例如“無效的用戶+密碼組合!”。

希望這可以幫助!

編輯:編輯為刪除“ eval”,因為如果服務器返回布爾值則沒有必要。

阿什文

您需要為此使用ajax

http://api.jquery.com/jQuery.ajax/

對數據庫進行ajax調用,然后讓php將成功或失敗的響應發送回UI。

如果失敗,讓我們顯示不同顏色的div ...

您確實不必為此專門使用PHP。 做到這一點的一個好方法是分離模型(數據庫中包含用戶信息以及用於訪問和檢索數據的查詢),控制器使所有內容處於活動狀態並將數據發送到模板和視圖(模板)。

上面的結構還表明,PHP並非專門用於此目的,PHP僅應具有訪問數據庫並將數據返回給模板的作用。

一旦掌握了這個竅門,就可以看看帶有Ajax示例的jQuery或Prototype。 :)

我想您可以對處理登錄的PHP腳本執行jQuery POST。

<form id='login'>
  <input type='text' name='username' id='username'>
  <input type='password' name='password' id='password'>
</form>

然后使用jQuery而不是PHP發布此表單

$.post("login.php", { username: username, password: password } );

這會將用戶名和密碼字段發布到login.php。 然后讓login.php輸出可以在同一jQuery腳本中處理的內容。 如果登錄正確,讓PHP返回true,否則返回false,如果PHP腳本返回false,則讓jQuery顯示錯誤,如果PHP返回true,則讓jQuery做正確的登錄。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM