Основы создания простого сайта на PHP и MYSQL. Курсовая работа (т). Информационное обеспечение, программирование.

Основы создания простого сайта на PHP и MYSQL. Курсовая работа (т). Информационное обеспечение, программирование.




💣 👉🏻👉🏻👉🏻 ВСЯ ИНФОРМАЦИЯ ДОСТУПНА ЗДЕСЬ ЖМИТЕ 👈🏻👈🏻👈🏻


























































Информационное обеспечение, программирование

Вы можете узнать стоимость помощи в написании студенческой работы.


Помощь в написании работы, которую точно примут!

Похожие работы на - Основы создания простого сайта на PHP и MYSQL

Скачать Скачать документ
Информация о работе Информация о работе


Скачать Скачать документ
Информация о работе Информация о работе


Скачать Скачать документ
Информация о работе Информация о работе


Скачать Скачать документ
Информация о работе Информация о работе


Скачать Скачать документ
Информация о работе Информация о работе


Скачать Скачать документ
Информация о работе Информация о работе


Скачать Скачать документ
Информация о работе Информация о работе

Нужна качественная работа без плагиата?

Не нашел материал для своей работы?


Поможем написать качественную работу Без плагиата!

Основы создания простого сайта на PHP и MYSQL


Для закрепления теоретических знаний, а также навыков проектирования БД,
полученных при изучении курса «Базы данных» мы будем создавать «Простой сайт на
PHP и MYSQL».


Для создания php-сайта также
необходимы соответствующие знания php-программирования. Для их получения был изучен специальный теоретический
видеокурс по php-программированию.


В рамках данного курсового проекта будут показаны следующие этапы:


·       Структура php-файлов
сайта;


·       Соединение сайта с базой данных mysql;


·       Извлечение из базы информации;


·       Подключение блоков к сайту;


·       Наполнение сайта текстовым содержание, путём ручного ввода
данных в базу данных mysql;


·       Создание администраторского раздела сайта (админка);


·       Наполнение сайта содержимым через администраторский раздел;


·       Установка пароля на администраторскую зону;


·       Реализация возможности редактирования/добавления/удаления
данных в базе данных через администраторскую зону сайта;


В итоге получится простой сайт, написанный на php, который будет состоять из нескольких разделов
(видимая часть сайта):


.        Главная страница (фиксированные размеры, статичная информация)


.        Статьи (которые выводятся из базы данных)


.        Уроки (также берутся из базы данных)


.        О нас (статичная информация)


При желании можно изменить названия страниц, например: Статьи - на
Услуги, Уроки - на Товары.


Также на сайте будет реализована администраторская зона (невидимая часть
сайта), состоящая из разделов:


У каждого пункта видимой части сайта - будут реализованы соответствующие
функции в невидимой части сайта.


В конечном итоге должен получиться вот такой вот сайт (видимая часть):




Приступим к реализации этого сайта.




Для создания базы данных была выбрана СУБД - MySQL.


MySQL
- это свободная СУБД от компании Oracle Corporation. MySQL входит в состав портативной сборки сервера Denwer.


Гибкость СУБД MySQL
обеспечивается поддержкой большого количества типов таблиц. Более того, СУБД
MySQL поставляется со специальным типом таблиц EXAMPLE, демонстрирующим
принципы создания новых типов таблиц. Благодаря открытой архитектуре и
GPL-лицензированию, в СУБД MySQL постоянно появляются новые типы таблиц.


MySQL
портирована на большое количество платформ, в том числе для Windows XP.


MySQL
имеет API для языков Delphi, C, C++, Эйфель, Java, Лисп, Perl, PHP, Python, Ruby, Smalltalk и Tcl, библиотеки для языков платформы .NET, а также обеспечивает поддержку для ODBC посредством ODBC-драйвера MyODBC.


Для разработки базы данных в рамках данного курсового проекта
использовалась СУБД MySQL 5.0.45.


В данной версии СУБД MySQL
реализована практически полная поддержка стандарта SQL.


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


Денвер (джентльменский набор Web-разработчика) - набор дистрибутивов и программная оболочка,
предназначенные для создания и отладки сайтов (веб-приложений, прочего
динамического содержимого интернет-страниц) на локальном ПК (без необходимости
подключения к сети Интернет) под управлением ОС Windows.


·       Веб-сервер Apache с поддержкой SSI, SSL, mod_rewrite,
mod_php.


·       Интерпретатор PHP с поддержкой GD, MySQL, SQLite.


·       СУБД MySQL с поддержкой транзакций (mysqld-max).


·       Система управления виртуальными хостами, основанная на
шаблонах.


·       Система управления запуском и завершением.


·       Панель phpMyAdmin для администрирования СУБД.


·       Ядро интерпретатора Perl без стандартных библиотек
(поставляются отдельно).


·       Эмулятор sendmail и сервера SMTP с поддержкой работы
совместно с PHP, Perl, arser и др.


Сразу после установки доступен полностью работающий веб-сервер Apache,
работающий на локальном компьютере, на котором может работать неограниченное
количество сайтов, что очень эффективно для разработки и отладки сценариев PHP
без загрузки его файлов на удаленный сервер. Для запуска практически всех
утилит «Денвера» используется приложение Run в подкаталоге /denwer (или /etc)
корневого каталога установки «Денвера». При запуске создается виртуальный диск
(по умолчанию Z:), где хранятся все файлы проектов.


При разработке данного курсового проекта и создания базы данных,
использовался Denwer третьей версии.


Этого нам достаточно, чтобы приступить к работе над проектом.(англ. PHP:
Hypertext Preprocessor - «PHP: препроцессор гипертекста», «Инструменты для
создания персональных веб-страниц») - скриптовый язык программирования общего
назначения, интенсивно применяемый для разработки веб-приложений. В настоящее
время поддерживается подавляющим большинством хостинг-провайдеров и является
одним из лидеров среди языков программирования, применяющихся для создания
динамических веб-сайтов.


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


·       Автоматическое извлечение POST и GET-параметров, а также
переменных окружения веб-сервера в предопределённые массивы;


·       Взаимодействие с большим количеством различных систем
управления базами данных (MySQL, MySQLi, SQLite, PostgreSQL, Oracle (OCI8),
Oracle, Microsoft SQL Server, Sybase, ODBC, mSQL, IBM DB2, Cloudscape и Apache
Derby, Informix, Ovrimos SQL, Lotus Notes, DB++, DBM, dBase, DBX, FrontBase, FilePro,
Ingres II, SESAM, Firebird / InterBase, Paradox File Access, MaxDB, Интерфейс
PDO);


·       Автоматизированная отправка HTTP-заголовков;


·       Работа с HTTP-авторизацией;


·       Работа с cookies и сессиями;


·       Работа с локальными и удалёнными файлами, сокетами.


·       Обработка файлов, загружаемых на сервер;


В настоящее время PHP используется сотнями тысяч разработчиков. Согласно
рейтингу корпорации TIOBE, базирующемся на данных поисковых систем, в апреле
2011 года PHP находился на 5 месте среди языков программирования.[5] К
крупнейшим сайтам, использующим PHP, относятся Facebook, ВКонтакте, Wikipedia и
др.


Входит в LAMP - распространённый набор программного обеспечения для
создания веб-сайтов (Linux, Apache, MySQL, PHP).


В процессе разработки данного курсового проекта, а именно
извлечение/редактирование/удаление данных в базе данных посредством php-кода, были использованы следующие
функции и конструкции языка php:


·       Основные конструкции IF-ELSE;
·       Вложенные конструкции IF-ELSE;


·       Передача переменных методами GET и POST;


·       Суперглобальный массив $_SERVER;


·       Функции соединения с базой данных;


·       Функция выборки из базы данных;


·       Вывод данных из базы данных в цикле;


·       Оператор выборки - SELECT;


·       Оператор вставки - INSERT;


·       Оператор обновления - UPDATE;


·       Оператор удаления - DELETE;




У нас будет 2 части сайта : Общая часть и Администраторская часть.


Общая часть сайта будет состоять из 6 php-файлов и 2 папок.




(об остальных файлах будет рассказано позже…)




Папка IMG будет содержать в себе 3 изображения :


·       bg.gif - фоновое изображение;


·       150-for-blog.png - 3D-бокс в пункте меню: рассылка;


.        index.php - будет отвечать за вывод главной страницы сайта;


.        articles.php - будет отвечать за вывод из базы данных, списка
статей;


.        lessons.php - будет отвечать за вывод из базы данных, списка
уроков;


.        contacts.php - будет отвечать за отображение страницы «О нас»;


.        view_lesson.php - будет отвечать за вывод конкретного урока,
при нажатии на ссылку этого урока на странице файла lessons.php;


.        view_articles.php - будет отвечать за вывод конкретной статьи,
при нажатии на ссылку этой статьи на странице файла articles.php;


Папка blocks будет содержать в себе файлы, в которых будут вынесены
отдельные блоки сайта. Сайт разделяется на блоки для того, чтобы им было легко
управлять, изменять тысячи страниц сайта - одним файлом.


Администраторская часть будет состоять из следующих файлов и папок (о них
будет рассказано позже) - папка «admin»:




База данных будет хранить все тексты, статьи, уроки и.т.д.




Главная страница сайта выглядит так:




Исходный код данной страницы выглядит так:




?php "blocks/bd.php";/*Соединяемся с базой*/




$result = mysql_query ("SELECT title,meta_d,meta_k,text
FROM settings WHERE page='index'",$db);




$myrow = mysql_fetch_array ($result);


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01
Transitional//EN" "#"576604.files/image007.gif"




·       Создадим таблицу settings, которая будет содержать все настройки, тексты статей,
уроков, текст главной страницы, текст страницы «О нас», названия страниц
(мета-тэг title), мета-тэг ключевых слов, описания
и.т.д. В этой таблице нам понадобится 6 полей.




·       Заполняем все поля, как показано на рисунке ниже и нажимаем
«Сохранить»:




·       Нажав по кнопке «Вставить» мы можем вставить первую запись в
нашу таблицу;


·       Заполняем 4 страницы, которые есть у нас в меню, а именно:
index.php, contacts.php, lessons.php и articles.php.


Рассмотрим заполнение на примере главной страницы (index.php)


Значение поля id присваивается
автоматически, т.к при создании таблицы мы установили этому полю, значение -
auto_increment;


Поле page - заполняем для той страницы,
которая нам нужна.


Поле meta_d - необходимо для мета-тега description;


Поле meta_k - необходимо для мета-тега keywords;


Поля meta_d и meta_k необходимы для поисковых систем
(например, Яндекс, Google)


Таким образом, заполняем все поля подобным образом, для 3-х остальных
страниц.


Теперь мы можем увидеть, что у нас есть 4 новых записи, для каждой из
наших страниц.




·       Добавляем нового пользователя к базе данных (Привилегии ->
Добавить нового пользователя). Пусть будет пользователь с именем «php» и
паролем «12345»


Даём нашему пользователю все привилегии, чтобы при дальнейшей работе не
возникало никаких проблем.


За подключение к базе данных у нас будет отвечать файл bd.php





Первым делом нам нужно соединиться с нашей базой данных. Для этого
пропишем следующий php-код в нашем
файле bd.php:




? $db = mysql_connect
("localhost","php","12345");_select_db
("phpsite",$db); ?




Функция mysql_connect отвечает за подключение к базе данных. В скобках
указываем 3 параметра: сервер (localhost), пользователя (php),
пароль (12345);




Теперь, после подключения файла bd.php на каждой странице, нам нужно вытащить
из базы данных 4 поля: название, описание, ключевые слова и сам текст.


?php "blocks/bd.php";/*Соединяемся с базой*/




$result = mysql_query ("SELECT title,meta_d,meta_k,text
FROM settings WHERE page='index'",$db);




$myrow = mysql_fetch_array ($result);


Делаем выборку (SELECT) и указываем, какие нам нужны поля
(title,meta_d,meta_k,text), затем из какой таблицы (FROM settings), затем из какого поля (WHERE page='index'",$db)


Занесём результат работы этой функции в переменную ($result). Чтобы работать с этими
результатами, нам нужно создать переменную ($myrow) и уже в неё мы будем заносить результат работы
функции.


В $myrow заносится массив из 4 ячеек.




Выводим информацию на странице. Мета-тег описание, ключевых слов, текст и
заголовок страницы. Выводим через функцию echo.


<title?php echo $myrow ['title'];
?










Таким же образом изменяем остальные 3 страницы: lessons.php,
articles.php, contacts.php.




Весь текст уроков хранится в базе данных. Картинки хранятся в отдельных
папках на сервере, а базах хранятся ссылки на них.


На странице lessons.php будут отображаться все уроки из
таблицы lessons. Выглядеть это должно вот так:




Т.е у нас будет идти сперва статичная информация файла lessons.php, затем будет идти список из всех существующих уроков
в базе данных.


Каждый урок будет выводиться в отдельной табличке, а в ней будет идти:
название урока, дата добавления урока, автор урока и краткое описание урока.


Нам понадобятся следующие поля: title, description,
meta_d, meta_k, text, author, date, id.


·       Поле title
- название урока.


·       Поле description - краткое описание урока.


·       Поле id -
заполняется автоматически.


·       Поле date -
дата добавления урока.


·       Остальные поля нам уже знакомы.


Заходим в phpMyAdmin и
создадим новую таблицу: lessons
с 8 полями.




Пока что в ней нет ни одной записи.


Картинки будем хранить в отдельной папке на нашем сайте. Каждый урок -
отдельная папка.




Общая папка lessons - >
папка с датой добавления урока -> папка с названием урока; Копируем все
картинки добавляемого урока в эту папку.


Теперь создадим страницу с шаблоном для добавления нового урока
(lessons_template.php). Пишем на этой странице какой-то текст, вставляем
картинки и.т.д.


После написания и редактирования текста, мы копируем его (т.е готовый html-код с ссылками на картинки) и
вставляем в таблицу lessons в базу
данных (в поле text). Заполняем
все поля и сохраняем.




Теперь у нас есть 2 урока в таблице. Есть 2 папки с рисунками на сервере.


Сейчас займемся выводом анонсов тех уроков, которые есть в базе данных.




Вот рабочий код страницы lessons.php:




?php "blocks/bd.php";/*Соединяемся с базой*/




$result = mysql_query ("SELECT title,meta_d,meta_k,text
FROM settings WHERE page='lessons'",$db);




$myrow = mysql_fetch_array ($result);


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01
Transitional//EN" "#"576604.files/image019.gif"




Должен подгружаться файл view_lesson.php, который будет выводить на страницу именно этот урок:
«Выбор платформы для создания блога». И будет это выглядеть так:




И потом будет загружаться именно этот урок:




Будут отображаться: Дата добавления, Автор, название и сам текст (стрелка
«вниз»);




Исходный, рабочий код страницы view_lesson.php:




?php "blocks/bd.php";/*Соединяемся с базой*/


(isset($_GET['id'])) {$id = $_GET['id'];}






$result = mysql_query ("SELECT * FROM lessons WHERE
id='$id'",$db);




$myrow = mysql_fetch_array ($result);


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01
Transitional//EN" "#"576604.files/image022.gif"




И вывод отдельной статьи при нажатии на самую первую ссылку:





Упрощение работы над сайтом. Упрощенное
добавление/редактирование/удаление статей/уроков/страниц. Создание невидимой
области сайта.


Структура файлов администраторской области выглядит так:




Папка img содержит все те же изображение. А
вот структура файла left.php в папке blocks - немного изменилась и выглядит так:




         Уроки




Добавить
Удалить




         Статьи




Добавить


Редактировать


Удалить




Редактировать


Теперь, за что же отвечает каждый файл в папке «admin»


·       add_article.php - файл, занимающийся обработкой
данных, посылаемых из формы файла new_article.php;


·       add_lesson.php - файл, занимающийся обработкой
данных, посылаемых из формы файла new_lesson.php;


·       del_article.php - файл, содержащий в себе список
(радио-кнопки) ВСЕХ статей в базе данных, выводимых на экран;


·       del_lesson.php - файл, содержащий в себе список
(радио-кнопки) ВСЕХ ehjrjd в базе
данных, выводимых на экран;


·       drop_article.php - файл, который занимается удалением
выбранной статьи на странице del_article.php;


·       drop_lesson.php - файл, который занимается удалением
выбранного урока на странице del_lesson.php;


·       edit_article.php - файл, содержащий в себе список
всех статей в базе данных и при нажатии на каждую из них, данные извлекаются из
базы данных и подставляются в форму;


·       edit_lesson.php - файл, содержащий в себе список
всех уроков в базе данных и при нажатии на каждый из них, данные извлекаются из
базы данных и подставляются в форму;


·       edit_text.php - файл, содержащий в себе список
всех статичных страниц в базе данных и при нажатии на каждую из них, данные
извлекаются из базы данных и подставляются в форму;


·       index.php -
главная страница администраторской области.


·       lock.php -
файл, который позволяет защитить админку от взлома (установщик/проверящик
пароля) - о нём будет сказано позже;


·       new_article.php - файл, содержащий форму добавления
новой статьи.


·       new_lesson.php - файл, содержащий форму добавления
нового урока.


·       style.css - таблица стилей.


·       update_article.php - файл, занимающийся обработкой
данных, которые передаются из файла edit_article.php. Затем обработчик просто заменяет старые значения
полей в базе - на новые (которые передались через форму файла edit_article.php)


·       update_lesson.php - файл, занимающийся обработкой
данных, которые передаются из файла edit_lesson.php. Затем обработчик просто заменяет старые значения
полей в базе - на новые (которые передались через форму файла edit_lesson.php)


·       update_text.php - файл-обработчик данных,
передаваемых из файла edit_text.php. Процесс тот-же что и в файлах update_lesson.php и update_article.php.




В рамках данного курсового проекта мы разберем только возможность
добавления/редактирования/удаления уроков (lessons) и статичных страниц («Тексты»). Всё потому, что те
же самые процессы выполняются и в пункте со статьями (articles) - поэтому нет смысла показывать все
по 2 раза!




Схема проста: первый файл (new_lesson.php) выводит нам форму добавления нового урока (статьи).


Затем, после ввода всех данных в поля формы и нажатия кнопки «Занести
урок в базу!» - данные передаются на обработку другому файлу (обработчику - add_lesson.php),
а тот в свою очередь проверяет, все ли поля были переданы в предыдущей форме, и
если все норм, то данные заносятся в базу и в таблице lessons появляется новая запись (с новым значением поля id).


Приступим к созданию этих двух файлов.


Первый файл: new_lesson.php будет выглядеть так:









Затем, после того, как мы выберем какой-то конкретный урок, этот же самый
файл (edit_lessons.php)
сделает запрос к базе и вытащит все данные из той строки, которую мы ему
сказали. А потом он подставит все эти данные в соответствующие ему поля заранее
подготовленной формы.




После того, как мы нажмем на кнопку «Сохранить изменения», то все
измененные данные (если изменения конечно же были в полях) отправятся
обработчику, т.е файлу update_lesson.php.




Вот исходный код страницы edit_lesson.php:















Исходный код страницы edit_text.php:









)






Похожие работы на - Основы создания простого сайта на PHP и MYSQL Курсовая работа (т). Информационное обеспечение, программирование.
Страна Эссе
Книга: Всемирная история том 1. Древний мир Оскар Йегер 2001г.
Автореферат На Тему Особливості Діагностики Та Лікування Безпліддя При Використанні Лапароскопії Та Допоміжних Репродуктивних Технологій В Жінок Із Мікоплазмозом
Реферат: Смысл жизни, счастье и долг в "Евгении Онегине". Скачать бесплатно и без регистрации
Разлинованный Лист А4 Для Реферата
Реферат: «Биокомпьютеры»
Сочинение По Русскому Горе От Ума
Курсовая работа: Договор социального найма
Курсовая работа: Современные тенденции базовых стрижек
Порог Итогового Сочинения Сколько Слов
Реферат: Understanding Basic Midi Essay Research Paper Understanding
Дипломная работа: Бухгалтерский и финансовый учет материальных оборотных активов коммерческих организаций
Реферат: Aeneas As A Roman Hero Essay Research
Реферат: Диалог современного и традиционного древнерусского женского костюма в воспитании художественно-э
Реферат На Тему Охотничья Этика При Охоте На Тетерева
Дипломная работа по теме Реконструкция подстанции ТП 35/10 кВ
Контрольная работа: Способность руководителя разбираться в людях и убеждать их. Скачать бесплатно и без регистрации
Реферат: №1505
Магистерская диссертация по теме Взаимодействие психических состояний и когнитивных процессов в ходе учебной деятельности студентов
Курсовая Работа Населенные Пункты
Похожие работы на - Расчет напряженно-деформированного состояния гравитационной плотины на скальном основании методом конечных элементов
Доклад: Види документації
Реферат: Хирургия (Острый аппендицит)

Report Page