我認爲不是一個好主意,把'user_id'在客戶端HTML併發送回服務器。您需要對客戶端發送的數據進行更多驗證(做一些檢查和過濾)。
我推薦使用的,而不是將其發送到客戶端的會話,但如果在同一時間(多片)編輯兩個或更多的數據,你將有問題的,所以你需要使用會話和一些技巧。
有了這個例子你真正user_id
絕不會發送給客戶端。
的index.php:
session_start();
$edit_session_id = md5(uniqid() . microtime(true));
$_SESSION['edit_' . $edit_session_id] = $user_id;
ajax.js:
var edit_session_id = $('#edit_session_id').val();
$.ajax({
url : "process.php",
method : "POST",
data : {'edit_session_id' : edit_session_id},
cache : false,
success : function(data) {
// do code
}
);
process.php:
session_start();
$edit_session_id = $_POST['edit_session_id'];
if(!isset($_SESSION['edit_' . $edit_session_id]))
{
die('Invalid edit session, please go back & refresh');
}
$user_id = $_SESSION['edit_' . $edit_session_id];
// Do something with user_id
//Clear the editing session
unset($_SESSION['edit_' . $edit_session_id]);
使用TLS(https)。 – Pointy 2013-04-30 14:10:09
想要完全提高安全性的哪個方面 - 針對誰的安全性?用戶?第三方? – 2013-04-30 14:10:26
這個網站是[充滿信息](http://stackoverflow.com/search?q=secure+ajax)關於創建安全的AJAX交易。你有沒有涉及的具體問題? – 2013-04-30 14:12:36