Например, на кнопке 'удалить сообщение из темы на форуме' у меня: onClick="DeleteThemeMessage(<id сообщения>, <id блока, чтобы скрыть его после удаления>);" 2 эти параметра передаются POST запросом (ajax). От второго параметра при необходимости можно легко избавиться. Сначала я проверяю группу пользователя из $_SESSION (есть ли у него права на удаление). И лишь затем берется POST инфа и делается запрос. Меня беспокоит это: Любой из этих POST параметров можно подменить и в итоге в теме может удалиться не то сообщение. В $_SESSION я могу записать id форума и id темы, где находится пользователь, но записать id сообщения, в котором было нажато 'удалить', похоже нельзя. Подскажите пжалст как лучше поступить.
у тебя в сессии лежит id пользователя и ты можешь проверить его права. ну и не давай права кому попало.
Дело не в этом, да, у него есть права и могу их проверить, но этого недостаточно. Именно этот парень, чьи права я проверил, может подменить id удаляемого сообщения и удалить то, к которому у него не должно быть доступа. Ему конечно придется постараться, чтобы узнать id, но я не хочу этого допустить.
@schmidt я не пойму как он сможет $_POST обойти он же в поисковой строке не допускает показывать id короче он как бы вскрыт от глаз чужих а если $_GET тогда подменить легко. И вообще с чего ты взял что он будет подбирать? Думаю надо проверить $_SESSION + проверить является ли это сообщение для этого пользователя или же является он отправителем. Тогда если не является отправителем или же это сообщение не ему предназначено, то выводишь соответствующее сообщение об ошибке.
Точно, нужно ещё проверить его ли это сообщение. Если не его и это модератор, а сообщение от гл.админа, то сравнить id пользователей или группы. Пока вопрос решён, спасибо.