Как превратить этот код в функцию удаления SQL? - PullRequest
0 голосов
/ 01 сентября 2011

Мне было интересно, как я могу превратить эту ссылку добавления записи в ссылку удаления записи? Любая помощь будет оценена.

if (CAN_EDIT){
    echo '<i>'.$announcements[$x]['page_edit']='<a href="index.php?id='.$announcements[$x]['page_id'].'&act=edit">edit entry</a></i><br />';
if ($announcements[$x]['page_edit']>0){}
                        }

Я понимаю об использовании

mysql_query DELETE FROM (table name) WHERE (item name)

Я просто не уверен, как реализовать это и сделать ссылку.

1 Ответ

2 голосов
/ 01 сентября 2011

Это действительно зависит от того, как ваше приложение обрабатывает запросы. Отправленный вами код редактирования ссылки показывает, что в PHP передаются два параметра: id и act. Оба будут доступны в $_GET в PHP при нажатии на ссылку.

Исходя из этого, мы можем сделать вывод, что ваш код проверяет $_GET['act'], чтобы решить, что делать. Если оно равно 'edit', вы, вероятно, получите некоторые данные из БД (для записей, где id равно $_GET['id']), а затем отредактируете форму редактирования.

Используя ту же логику, вы должны создать ссылку с id=N&act=delete (где N - фактический идентификатор). Затем в PHP вы проверяете, является ли значение $_GET['act'] равным 'delete', затем запускаете SQL-запрос, чтобы удалить строку с переданным идентификатором.

Кроме того, обязательно проведите небольшое исследование по внедрению SQL - вам не следует использовать значения $_GET или $_POST непосредственно в запросе, так как это сделает ваше приложение уязвимым для внедрения. Посмотрите на функцию mysql_real_escape_string в руководстве по PHP.

...