Удаление записей из базы данных MySql через веб страницу

В этом уроке я покажу Вам как удалять записи из базы данных MySql прямо из веб страницы. А в конце урока Вы сможете скачать шпаргалку по MySql запросам.

дополнительные материалы к урокам демо версия урока

Итак, этим уроком я буду заканчивать небольшую серию уроков о том, как взаимодействовать с базой данных MySql из веб страниц. Этот урок будет меньше и легче предыдущих, особенно если Вы их прошли до этого.

Если Вы что-то пропустили, не беда, вот ссылки на предыдущие уроки:

1. Создание базы данных MySql

2. Вносим пользовательские данные в базу данных MySql

3. Вывод информации из базы данных MySql на веб страницу

4. Изменение информации в базе данных MySql из веб страницы

Также помните, что все исходные материалы Вы можете найти в исходниках к каждому уроку.

В этом уроке я продолжу работать со структурой файлов из прошлых уроков.

На данном этапе: мы создали базу данных MySql, научились заносить в нее информацию из веб страницы, научились выводить нужные нам записи и все записи в виде списка, а также научились изменять любые поля базы данных MySql также из веб страницы.

Осталось только научиться удалять необходимые записи не заходя в саму базу данных. Это может Вам понадобиться, если Вы пишите админку для сайта или блога и в ней предусмотрено удаление записей. Или Вы позволяете Вашему пользователю загружать в базу данных какую-либо информацию о нем, но у него в любой момент должна быть возможность удалить эту информацию. В любом случае, я думаю, что в своем проекте Вы найдете применение этим знаниям.

А сейчас давайте начнем!

Удаляем записи из базы данных MySql через веб страницу

Что нам нужно сделать?

1. Нужно создать файл, в котором будут выводиться все записи (только имя и фамилия), чтобы мы могли выбрать какую из записей нужно удалить.

2. После нажатия на кнопку удалить будет подключаться файл обработчик, в который мы передадим идентификатор нужной записи и сформируем запрос на удаление.

3. В случае удачного удаления мы выведем на экран сообщение о том, что запись успешно удалена.

Теперь приступим к реализации.

1. Сначала нам нужен файл, который выведет на экран список всех записей из базы данных (в нашем случае мы будем выводить имена и фамилии пользователей).

По сути этот файл будет точно таким же, как и наш файл выбора записи для редактирования (“select_change.php”). Отличаться будет только файл-обработчик в параметре action нашей формы. И ссылки внизу, ведущие на все другие страницы приложения.

Поэтому, давайте откроем файл “select_change.php”, нажмем «Сохранить как» и дадим ему имя “select_delete.php”. Так мы получили новый файл с такой же структурой, как и у “select_change.php”. В нем нужно будет исправить всего пару моментов.

Во-первых, добавьте во все файлы структуры ссылку на файл “select_delete.php”. Таким образом мы сможем попадать на него из любой страницы нашего мини приложения.

<a href="select_delete.php">Удалить пользователя</a><br/><br/>

Во-вторых, проверьте, чтобы с файла “select_delete.php” стояли ссылки на другие страницы (такие как: «добавить пользователя», «вернуться к поиску» и «редактировать запись»).

В-третьих, нужно поменять имя файла в параметре “action”формы. Пусть будет файл “delete.php” (его мы скоро создадим). Еще нужно поменять текст кнопочки на «Удалить».

Таким образом, код файла “select_delete.php” будет выглядеть вот так:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> <link rel="stylesheet" href="style.css" type="text/css"> <title>Выбор пользователя для удаления.</title> </head> <body> <form action="delete.php" method="post"> <fieldset> <?php require 'scripts/connect.php'; $select_sql = "SELECT id, first_name, last_name FROM users"; $result = mysql_query($select_sql); $row = mysql_fetch_array($result); do { printf("<input type='radio' name='user' value='%s'>%s %s<br/><br/>", $row['id'], $row['first_name'], $row['last_name']); } while($row = mysql_fetch_array($result)) ?> </fieldset> <fieldset> <input type="submit" value="Удалить"> </fieldset> </form> <a href="info_form.html">Добавить пользователя</a><br/><br/> <a href="search_user.html">Вернуться к поиску</a><br/><br/> <a href="select_change.php">Вернуться к выбору записей для редактирования</a><br/><br/> </body> </html>

2. Теперь создадим файл “delete.php” и разместим его в нашем основном каталоге.

Здесь код будет достаточно простым.

Сначала мы как всегда соединяемся с базой данных.

Затем получаем параметр “user”, в котором хранится идентификатор и заносим в переменную “$id”.

После формируем запрос к базе данных с просьбой удалить запись с таким идентификатором.

Проверяем на ошибки.

В случае их отсутствия выводим сообщение, что запись удалена успешно.

Проставляем ссылки на другие страницы, чтобы после удаления мы могли перейти туда, куда нам нужно.

Код довольно-таки короткий. Вот он:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> <title>Удаление</title> </head> <body> <?php require 'scripts/connect.php'; $id = $_REQUEST['user']; $delete_sql = "DELETE FROM users WHERE id=$id"; mysql_query($delete_sql) or die("<p>При удалении произошла ошибка</p>". mysql_error()); echo "<p>Запись была успешно удалена!</p>"; ?> <a href="info_form.html">Добавить пользователя</a><br/><br/> <a href="search_user.html">Вернуться к поиску</a><br/><br/> <a href="select_change.php">Вернуться к выбору записей для редактирования</a><br/><br/> <a href="select_delete.php">Удалить пользователя</a><br/><br/> </body> </html>

А вот результат работы скрипта:

Выбор элемента для удаления из базы данных

Успешное удаление из базы данных

Результат удаления

В конце прикладываю ссылку, по которой Вы можете скачать одностраничную схему-шпаргалку. Она поможет Вам при составлении запросов к базе данных. Просто распечатайте этот листок и положите (или повешайте) на своем рабочем месте. Когда будете работать с базами данных MySql и составлять к ним запросы, то всегда сможете быстро обратиться к подстказке, если что-то забыли.

Вот эта ссылка. Качайте!

На этом у меня все. Если Вам понравилась серия уроков или в чем-то помогла, то оставьте свой комментарий. Я буду Вам очень благодарна.

Также подписывайтесь на обновления блога, если Вы еще не подписались. Обещаю Вам много всего интересного и полезного. (А если в комментариях Вы напишите про что именно Вы бы хотели получать статьи и уроки, то это будет обязательно учтено).

Удачи и до новых встреч!

1. Создание базы данных MySql

2. Вносим пользовательские данные в базу данных MySql

3. Вывод информации из базы данных MySql на веб страницу

4. Изменение информации в базе данных MySql из веб страницы

Понравилась статья? Поделись с друзьями!


Не нашли того, что искали? Воспользуйтесь расширенным поиском!

Будьте в курсе новых публикаций на Блоге!

rss podpiska

Введите Ваш E-mail:


Комментарии к этой статье:

Комментарий добавил(а): Саша
Дата: 2013-12-20

большое спасибо за подробные уроки, вы очень помогли)

Комментарий добавил(а): Админ Анна
Дата: 2013-12-20

Пожалуйста, Саша! Очень приятно слышать :)

Комментарий добавил(а): Елена
Дата: 2013-12-24

Всё очень понятно и без ошибок :)

Комментарий добавил(а): Админ Анна
Дата: 2013-12-24

Рада, что Вам понравилось. Буду и дальше стараться публиковать полезные материалы.

Комментарий добавил(а): Комментарий Коментарьевич
Дата: 2014-05-17

был бы у меня комментарий то комментировал бы)))

Комментарий добавил(а): Shahin
Дата: 2014-06-26

Не оставмть комментарий было бы не правильно! Вот уне несколько дне как нашел ваш сайт и благодоря вашим урока решил некоторые проблемы на сайте, так-как долгое время не знал как это рефлизовать. Большое вам спасибо!

Комментарий добавил(а): Efe
Дата: 2014-11-06

Анна, огромное спасибо Вам, за эти труды. Я, пожалуй, начинающий "чайник" во всём этом. Но Ваши статьи очень помогли мне понять как устроено это взаимодействие MySQL + PHP. Великое дело делаете!

Комментарий добавил(а): Владимир
Дата: 2015-03-31

Спасибо. Мне помогло. Четко и понятно объяснено.

Комментарий добавил(а): wine
Дата: 2015-05-24

пишет, что запись успешно удалена, однако по факту удаления не происходит, в чем проблема, не подскажете?

Комментарий добавил(а): Abikon
Дата: 2015-07-29

А как удалить запись через ссылку? Например есть таблица с фамилиями и рядом с фамилиями есть ссылка удалит. Теперь как можно удалить эту строку с помощью ссылки?

Комментарий добавил(а): Анатолий
Дата: 2016-01-14

Это один, из немногих ресурсов, где все излагается четко, подробно, ясно!Спасибо Вам огромное!

Комментарий добавил(а): Никита
Дата: 2016-01-20

Все просто доступно и доходчиво, а главное с четкими исходниками. Очень помогли, спасибо, так держать!

Комментарий добавил(а): Ирина
Дата: 2016-03-28

Все понятно,спасибо.Но остался вопрос: я хочу после удаления перегрузить страницу... mysql_query($delete_sql) и header(); куда в таком случае определить echo "<p>Запись была успешно удалена!</p>";...? Спасибо!

Комментарий добавил(а): Виталий
Дата: 2016-10-04

вышла вот такая ошибка Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in

Добавить Комментарий:


Введите сумму чисел с картинки:

Почему стоит подписаться на обновления блога

Будьте в курсе новых публикаций на Блоге!

rss podpiska

Введите Ваш E-mail: