用于更新数据库中现有行的PHP表单验证服务器端

用于更新数据库中现有行的PHP表单验证服务器端,php,html,forms,post,submission,Php,Html,Forms,Post,Submission,如何验证要更新的行ID是否正确?我想我可能采取了完全错误的方法,因为这似乎不正确 我正在会话中存储我的行id。以及在一个隐藏的输入发送它。然后是get check in validate.php。这很好,但使用会话会删除在同一浏览器会话中编辑多个页面的功能。我对如何验证行ID有点困惑 数据库表 id - name 1 - Apple 2 - Orange 每行都有自己的带有编辑表单的页面 <?php session_start(); $_SESSION['id'] = X; ?>

如何验证要更新的行ID是否正确?我想我可能采取了完全错误的方法,因为这似乎不正确

我正在会话中存储我的行id。以及在一个隐藏的输入发送它。然后是get check in 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>

我可以建议,为什么要创建json格式的
会话['id']
。。它存储不同的多个ID
JSON
有一个键值对,因此在表单中创建一个标识符,就像在隐藏输入中一样,以在
validate.php
中检索它们对应的值。。。
或者,如果这很困难,不要在会话中存储ID…

我可以建议,为什么要创建json格式的会话['ID']。。它存储不同的多个ID
JSON
有一个键值对,因此在表单中创建一个标识符,就像在隐藏输入中一样,以在
validate.php
中检索它们对应的值。。。 或者,即使这很难,也不要在会话中存储ID

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');
}