- •Содержание
- •Введение
- •1 Архитектура Flash-памяти
- •1.1 Что такое flash-память?
- •1.2 Виды памяти
- •1.3 Организация flash-памяти
- •1.3.1 Общий принцип работы ячейки флэш-памяти.
- •1.4 Архитектура флэш-памяти.
- •1.5 Карты памяти (флеш-карты)
- •2 Создание сайта
- •2.1 Используемое программное обеспечение
- •2.2 Структура сайта для училища
- •2.2.1 Создание html шаблона
- •2.2.2 Разбитие шаблона на блоки. Функция Include.
- •2.2.3 Завершение работы над шаблоном
- •2.3 Администраторский блок сайта
- •2.3.1 PhpMyAdmin. Занесение информации в базу.
- •2.3.2 Форма ввода. Извлечение информации из базы данных
- •2.3.3 Файл обработчик. Внесение изменений в базу
- •2.3.4 Навигация в админке. Синхронизация работы
- •2.4 Добавление виджетов
- •2.5 Доступ к админке по паролю
- •3.Техника безопасности.
- •Заключение
- •Литература
2.3.2 Форма ввода. Извлечение информации из базы данных
Для создания администраторского блока понадобится отдельная папка, которая будет содержать такие же файлы, как и основная корневая папка сайта. После создания папки Admin надо скопировать в нее папку blocks, файл index.php и файл style.css. Соответственно если перейти в папку admin в браузере не будет никаких изменений. В фале index.php, вместо всей информации в основной части можно написать стройку: «Добро пожаловать в администраторский блок», что бы пользователь знал, где он находится.
Что бы редактировать информацию, ее нужно куда-то вывести, для этого создается отдельный файл с именем form_edit.php, его можно не создавать а просто сохранит файл index.php с таким именем. В блоке main надо создать форму ввода\вывода на которую и будет выводиться информация из базы. Форма будет состоять из четырех полей: Название страницы, Описание, ключевые слова и текст страницы. Первые три поля это обычные текстовые поля <input> c именем ‘text’, а последние поле это текстовая область <textarea>. Еще понадобится скрытое поле для синхронизации всего процесса редактирования страниц. Называется оно также как и текстовое поле, только параметр type равен ‘hidden’ (скрытое поле), подробнее о его работе чуть дальше Для активации формы понадобиться кнопка, в параметрах которой надо поставить маркер Action = Submit form, что означает - выполнить форму. После создания формы можно приступать к ее заполнению, а заполняться форма будет информацией из базы.
Что бы извлечь информацию из базы используется функция mysql_query(); с оператором SELECT. Помимо этого оператора, эта функция поддерживает операторы: INSERT – оператор вставки, UPDATE – оператор обновления, DELETE – оператор удаления. В этом файле будет использоваться только оператор выборки SELECT, т.к. здесь надо только показать информацию, а обновлением этой информации будет заниматься другой файл. Для работы этой функции необходимо подключение к базе.
Подключение к базе будет использоваться не только в этом фале, поэтому лучше создать его в отдельном файле а потом просто подключить функцией include();. Для этого создается файл db.php, расшифровывается как date base, т.е. база данных. Все файлы лучше назвать осмысленными именами что бы потом не было путаницы. В этом фале прописывается только PHP-код с подключением к базе. Для подключения к серверу MySql используется функция mysql_connect();, в которой надо указать хостинг, пользователя базы и его пароль. После того как эта функция сработает она выдаст идентификатор подключения, который нужно занести в какую-нибудь переменную, поэтому перед функцией надо прописать переменную $db и прировнять ей функцию. После подключения к базе MySql нужно выбрать нашу базу, так как на сервере обычно не одна база. Для этого используется функция mysql_select_db();, в ней надо указать имя базы и идентификатор, т.е. переменную $db. После выполнения этих шагов подключение к базе выполняется именно с пользователя, который указан в первой функции. У меня этот файл выглядит так:
Рис. 2.17 Файл db.php
Подключение к базе
После этого сохраняем этот файл в папку blocks, содержащую фалы, которые в дальнейшем будут подключаться к основным документам.
Теперь надо подключить этот файл к документу с именем form_edit.php. Это делается уже известным способом через функцию include();.
В файле form_edit.php, в блоке main перед кодом формы нужно открыть блок кода PHP и сделать выборку из базы данных. Для этого создается переменная $result в которую помещается результат работы функции mysql_query();. В этой функции указывается оператор выборки SELECT, потом надо указать поля которые хотим выбрать, т.к. нам нужны почти все поля можно указать «*»(звездочку) что означает - выбрать все поля. Дальше указываем из какой таблицы «FROM» и пишем имя таблицы «settings», и на последок слово WHERE (где), то есть условие – «id=$id», про это чуть дальше.
В результате работы этой функции в переменную $result попадает своего рода массив, но работать с ним как с массивом не получится, поэтому надо сделать из него нормальный массив. Для этого используется функция mysql_fatch_array();, которая преобразует данные полученные в результате работы функции mysql_query в массив. В параметрах этой функции нужно указать перемену в которую помещен результат работы функции mysql_query, т.е. переменную $result. И соответственно нужно создать еще одну переменную в которую занесется полученный массив, у меня это переменная $myrow. В результате выполнения этих шагов должны получиться такие вот строчки:
Рис. 2.18 Выборка
из базы данных
Теперь нужно разместить полученные переменные в форму, что бы при входе на страницу все поля были заполнены. После создания текстовых полей значения value должны были остаться пустыми, это параметр, который отвечает за заполнение текстового поля по умолчанию. В эти параметры нужно прописать переменные из массива, для каждого текстового поля своя переменная. Для первого, это название страницы, параметр value будет выглядеть так: «value=’$myrow[title]’», аналогично для других полей. А в скрытое поле помещается переменная $myrow[id]. Но у текстовой области нет такого параметра, так как это закрывающийся тег и его содержание указывается между тегами, поэтому переменную надо ввести между тегами <textarea>. В результате выполнения этих шагов у меня получился такой код:
<?php $result = mysql_query("SELECT * FROM settings WHERE id=$id"); $myrow = mysql_fetch_array($result);
echo "<form name='form1' method='post' action='obrabotchik.php'> <p> <label>Название страницы<br> <input value='$myrow[title]' name='title' type='text' id='title' size='60'> </label> </p> <p> <label>Описание страницы<br> <input value='$myrow[meta_d]' name='meta_d' type='text' id='meta_d' size='60'> </label> </p> <p> <label>Ключевые слова<br> <input value='$myrow[meta_k]' name='meta_k' type='text' id='meta_k' size='60'> </label> </p> <p> <label>Текст страницы<br> <textarea name='text' id='text' cols='75' rows='20'>$myrow[text]</textarea> </label> </p> <input name='id' type='hidden' value='$myrow[id]'> <p> <input type='submit' name='submit' id='submit' value='Внести изменения'> </p> </form> ";
Табл. 2.2 Код
заполненной формы |
В браузере эта страница выглядит так:
Рис. 2.19 Вид формы
в браузере