Если у вас есть элемент, позволяющий пользователям добавлять комментарии, как вы можете передать элемент, на который отвечает пользователь?
Я хотя бы использовал скрытое поле в форме, однако это можно легко изменить с помощью плагинов, таких как firebug:
<form method="post" action="blah">
<input type="hidden" name="item_id" value="<?php echo $item_id; ?>">
<!-- other form data here -->
<input type="submit" name="submit">
</form>
Или просто используя сессию:
$_SESSION['item_id'] = $item_id
Существует ли безопасный способ отправки данных элемента в форме?
Edit:
Это после проверки, ... Я реализую некоторую защиту XSS (токены форм и т. Д.). Причина, по которой я спрашивал, состояла в том, чтобы просто знать, что такое лучшая практика.
Я хотел бы сделать что-то вроде
$_SESSION['item_id'] = $id //this is set when they visit the current item
тогда в форме есть скрытое поле:
<input type="hidden" name="item_id" value="<?php echo $id?>">
Наконец, проверьте, совпадает ли сессия с идентифицированным идентификатором:
if ($_SESSION('item_id') !== $item_id) //the value posted in the form
{
die('There\'s got to be a morning after
If we can hold on through the night
We have a chance to find the sunshine
Let\'s keep on looking for the light');
}
Однако после прочтения некоторых ваших комментариев, я думаю, это плохая идея?
Честно говоря (@Surreal Dreams): не так уж сложно, если они меняют идентификатор, я, как я уже сказал, я просто искал лучшую практику.
Приветствие.