PHP проверка формы на стороне сервера для обновления существующей строки в базе данных - PullRequest
1 голос
/ 09 февраля 2020

Как мне проверить, правильный ли идентификатор строки для обновления? Я думаю, что, возможно, я использую неправильный подход полностью, поскольку это, кажется, не правильно.

Я сохраняю свой идентификатор строки в сессии А также отправив его в скрытый вход. Затем его получить проверить в. php. Это работает нормально, но использование сеансов лишает возможности редактировать несколько страниц в одном сеансе браузера. Я немного запутался в том, как проверить идентификатор строки.

Таблица базы данных

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>

подтвердить. 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');
}

1 Ответ

0 голосов
/ 09 февраля 2020

Ну, я мог бы предложить, что, зачем создавать json формат session['IDs'] .., в котором хранятся разные множественные ID .. JSON, имеет пару ключ-значение, поэтому создайте идентификатор в вашей форме Как и в скрытом вводе, чтобы получить их соответствующее значение в вашем validate.php ... Или, если это даже сложно, не сохраняйте идентификатор в сеансе ...

...