如何验证行ID是要更新的正确ID?我认为我可能完全采用了错误的方法,因为这似乎并不正确。
我将行ID存储在会话中。以及在隐藏的输入中发送它。然后将其签入validate.php。这可以正常工作,但是使用会话将无法在同一浏览器会话中编辑多个页面。我对如何验证行ID有点困惑。
数据库表
id - name
1 - Apple
2 - Orange
每行都有自己的页面,带有编辑表单
<?php session_start(); $_SESSION['id'] = X; ?>
<form action="/validate.php" method="post">
<input type="hidden" name="id" value="X">
<input type="text" name="name" value="">
<input type="submit" value="submit">
</form>
validate.php
session_start();
$session_id = $_SESSION['id'];
$name = $_POST['name'];
$id = $_POST['id'];
if ($session_id == $id){
updateRow($name,$id); // send args to another function to do the sql logic.
} else {
var_dump('mis-match id');
}
好吧我建议,为什么创建一个json格式session['IDs']
..,它存储不同的多个IDs .. JSON
具有一个键值对,因此请在您的表单中创建一个标识符,例如隐藏输入,以在validate.php
中检索其对应的值...或者,即使这很难,也不要在会话中存储ID ...