在我的网站上,我有登录区域,登录用户可以在其中更改存储在数据库中的文本。每个用户都有一个(或 2 或 3 个)文本,每个文本都有特定的 id。以下是消息数据库的外观:
| message_id | message_text | user_id | time |
Message_id 和 userid 是三位或四位数字。
直到现在,我一直在使用干净的 PHP 从数据库中保存/获取数据。但是现在我想使用 AJAX,这是我的调用的外观(当用户完成编辑他的消息并点击提交时):
var msg = $("#msg").val();
var usrid = $("usrid").val();
var msgid = $("#msgid").val();
$.ajax({
type: 'POST',
data: {
action: 'save_message',
message: msg,
user_id: usrid,
message_id: msgid
},
url: 'http://example.com/update.php',
success: function(data) {
$('#info').html('<b>Message saved!!!</b>');
}
})
但是,众所周知,JQuery (JS) 是客户端语言,用户可以很容易地更改 usrid、msgid 的值,并且在几次尝试后他会更改其他用户的消息。
什么是正确的解决方案?传递某种令牌,使 id 更复杂(10、20 位数字)或其他解决方案?