2014-10-01 43 views
0

我有一個PHP腳本,它構成登錄過程的一部分,我通過ajax將登錄頁面的數據傳遞給process.php頁面,現在這個工作,但我正在嘗試做什麼以1或0的形式得到響應,然後根據結果生成一個操作。在javascript中獲得響應PHP

這是我的代碼。

(document).ready(function(){ 
$('form.login').submit(function() { 
var user = $(this).find("[name='user']").val(); 
var pass = $(this).find("[name='pass']").val(); 
var sublogin = $(this).find("[name='sublogin']").val(); 

// ... 
    $.ajax({ 
type: "POST", 
url: "http://www.server.co.uk/process.php", 
data: { 
    user : user, 
    pass : pass, 
    sublogin : sublogin, 
}, 
success: function(response){      
     if(response == "1") 
        { 
         text = "Logged In"; 
         /* 
          login successfull 
         */ 
        } 
        // Login failed 
        else 
        { 
         text = "Error"; 
        } 


     //alert(response); 
    } 
}); 

而且process.php代碼

function procLogin(){ 
    global $session, $form; 
    /* Login attempt */ 
    $retval = $session->login($_POST['user'], $_POST['pass'], isset($_POST['remember'])); 

    /* Login successful */ 
    if($retval){ 
    echo '1'; 

    } 
    /* Login failed */ 
    else{ 
    echo '0'; 
    } 

}

我想我的問題是,我想從PHP頁面回傳信息到登錄頁面的方式。

更新:我可以得到一個響應回來,在JavaScript中使用響應容器,我可以回顯例如1如果系統登錄的正確結果或0如果失敗。我似乎無法解決的是如何獲得響應結果1或0並讓它激活if else語句。對不起可能還不夠早。

+1

procLogin如何調用? – nicolas 2014-10-01 22:32:30

+0

您是否使用過像Chrome Dev Tools或Firebug這樣的調試器來查看您從服務器獲得的響應? – 2014-10-01 22:35:15

+0

通過頁面上的另一個功能,我沒有顯示,因爲工作正常,我可以在登錄頁面回顯procLogin函數的響應,以顯示1或0的結果,但 – 2014-10-01 22:36:05

回答

0

在ajax的結果中做一個警報。看看你的PHP是否可以。

但我想這不會是因爲當訪問PHP腳本是在一個函數[procLogin()],這是從來沒有被調用。

刪除功能,並讓寬鬆代碼

+0

嗨,ProcLogin函數正在工作,作爲我可以回顯1或0,只是if else語句不響應該值。 – 2014-10-01 22:44:15

+0

你的意思是如果在'ProcLogin'中,還是在JavaScript中呢? 'text ='不會做任何事情。你必須影響DOM。 – PHPglue 2014-10-01 22:49:46