2012-01-16 124 views
0

所以我正在製作一個腳本,允許用戶註冊並註冊我的網站。信息從HTML表單收集,只需要輸入用戶名和密碼即可。這是我正在做的事情的一個愚蠢的版本。

<form name="registration" id="registration" method="post" action="register.php"> 
    <input type="text" id="username"> 
    <input type="password" id="password"> 
    <input type="button" id="sendinfo"> 
</form> 

我想使用AJAX使用jQuery從表單收集數據,並把它放在一個數據庫,以便用戶不必將採取關閉的頁面時,他們註冊。所以我在做這樣的事情:

<script type="text/javascript" src="jquery-1.7.1.js"></script> 
<script type="text/javascript"> 

    $(document).ready(function(e){ 

     var user = $("#username").val(); 
     var pass = $("#password").val(); 

     $("#sendinfo").click(function(){ 

      //Send data to php file     
      $.get("register.php?", {uname: user, pass: pass}, function (msg, status, xhr){ 
       alert(msg); 
      }); 

     }); 

    }); 

</script> 

會發送密碼到「register.php」打開我到一個安全的整體?

+0

您應該從'register.php?'中刪除'?',這是不必要的:) – Znarkus 2012-01-16 08:49:36

回答

0

您應該使用HTTPS來避免安全問題。通過這種方式,客戶端和服務器之間的通信使用證書進行加密,並且man-in-the-middle將無法​​讀取流量數據。

1

您應該使用POST而不是GET。 GET參數將顯示在您的服務器日誌中。你不希望出現這種情況。另外,請考慮HTTPS來加密客戶端和服務器之間的數據。

+0

+1用於推薦'$ .post()'在'.g​​et() – 2012-01-16 09:02:06

0

不超過正常提交會。您可以通過添加SSL來增強安全性,以便在發送數據時加密數據。另外,如果您使用簡單的散列算法來存儲密碼(如MD5或SHA1),則可以在發送密碼之前使用Javascript對散列密碼進行散列。