2013-08-22 42 views
0

我試圖建立一個用戶必須通過登錄表單登錄的安全區域。這裏沒有什麼特別,我用什麼,我總是這樣: - 登錄 - 一個成功頁面 我使用AJAX,以驗證表單如何用jQuery Mobile構建一個牢固的安全區域?

我雖然這將是更安全有這個分成兩個不同的PHP頁面所以用戶不能以任何方式攻擊DOM並轉到成功頁面的pageid--因爲所有頁面都應該放在同一個文件中。

但我紅這篇文章:https://stackoverflow.com/a/15806954/1083453

,我不知道這是否是最後可能做什麼,我試圖做的。

所以我的問題是:如何建立一個堅實和安全登錄系統,jQuery Mobile的任何平臺上工作(W7 /的iOS /安卓/黑莓10)

謝謝

編輯:

現在我做:

function verifyLogin(){   
     var email=document.getElementById("loginUserField").value; 
     var pwd=document.getElementById("loginPwdField").value; 

      $.ajax({ 
       type : 'POST',   
       url : server_url + 'application/login', // Servlet URL   
       data:{ 
        'email':email, 
        'pwd':pwd 
       }, 
       success : function(data) {   
        if(data.logged_in){      
         alert("Login Success!!"); 
         window.navigate("home.php"); 

        } else { 
         alert("Invalid Login!!"); 
          console.log(data); 
         if(data.errors) { 
          //define 
          var error = {}; 
          error.alert = data.errors; 

          //Append 
          var template = Handlebars.compile($('#alertTemplate').html()); 
          $('#errors').empty().append(template(error)); 

          //Erase 
          error = {}; 
         } 
        } 
       }, 
       error : function(xhr, type) { 
        alert('server error occurred'); 
       } 
      });  
    } 

(窗口瀏覽不起作用..)但無論如何,它是做正確的方式?這是一個獨立的login.php表單,可讓您訪問應用程序的內容(比方說home.php)

+0

我建議你動態創建頁面,並禁用URL中的哈希更改。 – Omar

+0

謝謝,那麼我將如何從我的longin.php轉到succes_page.php? –

回答

1

那麼您可以在PHP框架中構建您的應用程序。我爲我的B.ch學位做了一個類似的項目,我簡單地將jquery mobile添加爲UI模板。通過這種方式,您已經擁有了framworks登錄系統,並且使用jQuery Mobile作爲前端模板。

+0

我在服務器上使用Doctrine CodeIgniter,但如果用戶試圖直接從應用程序訪問.php文件會怎麼樣?那麼我無法控制這一點。 –

+1

如果有幫助,你可以檢查這個http://stackoverflow.com/questions/409496/prevent-direct-access-to-a-php-include-file –

+0

是的人,就是這樣 –