Quber
@Quber
PHP Team lead

Почему лучшей практикой удаления сущностей из базы данных считается через форму, а не просто GET ссылкой?

При удалении, у меня на сайте, проверяются права у авторизированного пользователя на выполнение этого действия. Если прав нету, то и удалить не получится. Однако на том же stackoverflow рекомендуют выполнять такие действия как удаление через форму и методом DELETE.

Ну с методом понятно. А вот почему не рекомендуется ссылкой?
Это влияет на безопасность или это так общепринятые правила?
  • Вопрос задан
  • 2355 просмотров
Решения вопроса 1
@Nc_Soft
гетом не рекомендуется потому что
img src="del.php?id=1"
если разместить такую картинку где угодно можно заставить тебя удалить запись когда ты ее увидишь, если при этом нет защиты от csrf
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
4ikist
@4ikist
В первую очередь - запросы сохраняются в логах, а ещё индексация.
Ответ написан
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
RFC 7231
Клиент, посылая запрос GET вправе рассчитывать, что состояние сервера в результате запроса не изменится.
Ответ написан
@Arik
Хороший тон делать все действия через кнопки и желательно отправлять как POST-данные. Так с F5 или открытия старой закладки не выполнит действие повторно. GET-данные с формы хороши, когда надо сохранить урл результата действия, например форма поиска. Я вообще сделал что все формы идут на *.php урлы, которые в свою очередь проверяют, перед основным действием, отправляешь ли ты данные как POST. А обычные страницы у меня *.html
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы