Опубликован: 24.12.2006 | Доступ: свободный | Студентов: 2671 / 212 | Оценка: 4.51 / 4.22 | Длительность: 23:31:00
Урок 16:

Написание простой CMS вручную

< Урок 15 || Урок 16: 123456789

Создание сценария для удаления записей

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

  1. Откройте файл admin_cp_delete_processor.asp и в режиме Code (Код) удалите все его содержимое.

    Теперь страница будет содержать только короткий сценарий и код, переводящий пользователя на основную страницу, так что HTML кода на ней быть не должно.

  2. Добавьте на страницу код, предназначенный для соединения с базой данных.

    Для ASP:

    <%
    Dim dbConn
    set dbConn = server.CreateObject("adodb.connection")
    dbConn.open("newland")
    %>

    Для ColdFusion:

    <cfquery name="delete_country" datasource="newland">
    </cfquery>

    Для PHP:

    <?php
    // Set up connection to MySQL
    $host = "localhost";
    $user = "[введите имя пользователя]";
    $pwd = "[введите пароль]";
    $dbConn = mysql_connect($host,$user,$pwd);
    // Connect to newland_tours database
    $database = "newland_tours";
    mysql_select_db($database);
    ?>

    Далее следует добавить код, отправляющий SQL запрос.

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

    Для ASP (весь код в одну строку):

    dbConn.Execute("DELETE FROM tbl_country WHERE countryID=" &
    Request.QueryString("countryID"))

    Для ColdFusion (разрешено разбивать код на строки):

    DELETE FROM tbl_country
    WHERE countryID=#URL.countryID#

    Для PHP:

    $query_deleteCountry = "DELETE FROM tbl_country WHERE
    countryID=".$_GET['countryID'];
    $deleteCountry = mysql_query($query_deleteCountry);

    При использовании оператора DELETE не требуется указывать каждое поле, которое необходимо удалить, поскольку удаляются все поля записи. Это облегчает процесс написания кода. Но если при этом случайно забыть о предложении WHERE и не добавить его в код, то будет удалена вся таблица.

  4. Добавьте на страницу код, необходимый для перехода пользователя на основную страницу.

    Для ASP (строка над закрывающим элементом %> ):

    Response.Redirect("admin_cp_master.asp")

    Для ColdFusion (строка после закрывающего тега </cfquery> ):

    <cflocation url="admin_cp_master.cfm">

    Для PHP (перед закрывающим тегом ?> ):

    header("Location: admin_cp_master.php");

    Этот код переводит пользователя на основную страницу, где он может убедиться в том, что удаление прошло успешно.

  5. Сохраните файл и загрузите его на сервер. Нажмите клавишу (F12), чтобы открыть страницу admin_cp_master.asp в браузере и удалите страну, добавленную в одном из предыдущих упражнений урока.

    Как и написано в инструкции, удаление производится сразу же, и отменить его невозможно – не поможет даже кнопка Back (Назад).

Что дальше

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

Поскольку сайт и база данных Newland Tours создавались специально в учебных целях, их рекомендуется использовать для дополнительной практики. Например, для улучшения навыков создания CMS можно создать приложение для управления описаниями путешествий.

Для перехода к практической деятельности целесообразно просмотреть сайты, поддержкой которых вы занимаетесь, и попытаться определить способы повышения их эффективности и облегчения управления при добавлении динамических сценариев. Во время выполнения упражнений книги было написано немало кода ASP, ColdFusion и PHP, и, скорее всего, полученного опыта вполне достаточно для успешного устранения проблем. Решение более сложных задач описано в других книгах или учебных курсах по ASP, ColdFusion или PHP, которые можно найти в книжных магазинах или в сети. Нельзя не отметить, что после создания сайта Newland Tours работать с другими учебными материалами окажется намного проще.

Резюме

В этом уроке вы узнали, как:

  • планировать системы управления содержимым с учетом всех ее страниц и перемещения данных между ними;
  • создавать набор записей вручную, без использования диалогового окна Recordset;
  • создавать сценарий, добавляющий в базу новую запись на основе данных, введенных в форму;
  • формировать список для формы при помощи двух наборов записей, цикла и условной конструкции;
  • создавать сценарий, обновляющий существующую запись на основе данных, введенных в форму;
  • создавать сценарий, удаляющий существующую запись из таблицы в базе данных.
< Урок 15 || Урок 16: 123456789