Разработка и сопровождение информационной системы социальной помощи населению

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

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 04.07.2015
Размер файла 749,8 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Введение

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

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

Для достижения поставленной цели необходимо выполнить следующие задачи:

- определить понятие «информационной системы (ИС)»;

- изучить особенности и этапы построения «информационной системы»;

- спроектировать структуру и дизайн информационной системы;

- выбрать инструментарий для создания информационной системы и реализовать в нём поставленную цель;

Актуальность ИС состоит в том, что:

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

- информирование населения, и легкий доступ к информации;

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

Данная ИС несёт следующие функции:

- получение информации о услугах предоставляемых организацией не посещая офис организации;

- Получение необходимых документов не посещая офис организации.

1. Анализ технического задания и возможные способы реализации поставленной задачи

1.1 Постановка задачи

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

Информационная система дает пользователю возможность легкого доступа к информации без посещения офиса организации.

Среди достоинств ИС следует выделить:

- Доступность информации через сети «Интернет»;

- интуитивно понятный интерфейс;

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

Эффективность формы представления информации включает в себя следующие требования: простота и удобство применения, эргономичность.

2. Выбор программных и аппаратных средств для реализации поставленной задачи

Проанализировав различные программные средства создания информационных систем, их характеристики, степень функциональности и доступности, было проведено исследование следующих программных средств: текстовый редакторблокнот (Notepad), HomeSite 4.5, UltraEdit-32, Macromedia Flash, Macromedia Dreamweaver.

На основании полученных сравнительных оценок, был сделан выбор в пользу программного продукта «Adobe Dreamweaver CC».

Причины выбора программы Dreamweaver:

1. Dreamweaver -- это программа для создания веб-сайтов. Основная функциональность программы сосредоточена на создании HTML и CSS кода, а также работе с файлами сайта. Визуальный интерфейс программы позволяет работать с этими элементами быстро и интуитивно понятно. Можно наглядно видеть результат написанного кода.

2. Подсветка кода

Эта функция помогает быстро просканировать код, а также найти возможные ошибки. Каждый тип кода имеет различную подсветку, что позволит наглядно отличать HTML, CSS, PHP, Javascript и др.

Это очень удобно, когда веб-страница представляет собой сочетание html и динамических языков, таких как например PHP или ASP.

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

3. Автоподстановка кода

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

4. Режим кода и режим дизайна

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

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

5. Проверка кода

В Dreamweaver есть отличный инструмент проверки кода, который не позволит ни одному веб-дизайнеру писать код, не соответствующий стандартам.

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

2.1 Выбор технологии, языка и среды программирования

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

Преимущества итеративной модели:

- снижение воздействия серьёзных рисков на ранних стадиях проекта, что ведет к минимизации затрат на их устранение;

- акцент усилий на наиболее важные и критичные направления проекта;

- непрерывное итеративное тестирование, позволяющее оценить успешность всего проекта в целом;

- раннее обнаружение конфликтов между требованиями, моделями и реализацией проекта;

- более равномерная загрузка участников проекта;

- эффективное использование накопленного опыта;

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

Выбор языка программирования для информационной системы осуществлялся из языков:

- HTML;

- PHP;

- WAP;

- FLASH;

- PERL.

HTML

HTML - это один из самых старых языков web-программирования, появившийся еще на заре развития Интернета, и зарекомендовавший себя как один из самых простых и надежных способов web-программирования. HTML расшифровывается как Hyper Text Markup Language - Язык Разметки Гипертекста. Сайты, созданные по технологии HTML в большинстве своем являются набором статических страниц, не требующих наличия базы данных.

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

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

PHP

PHP является серверным языком программирования и осуществляет связь сайта с сервером и его базой данных.

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

В разработке преобладающей части сайтов, созданных студией HINEX.RU, была использована технология PHP, т.к. связь сайта с базой данных, по средством PHP кода является неотъемлемым условием, при создании динамичных, многофункциональных Интернет-ресурсов.

WAP (Wireless Application Protocol) - это технология позволяющая получать доступ к ресурсам Интернета прямо с мобильного устройства.

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

Сайты, написанные под WAP имеют свой язык разметки, адоптированный именно под обмен информацией с WAP-браузером. И если обычные сайт, предназначенные для просмотра с компьютера в большинстве своем написаны на языках html, php, то для создания WAP-сайтов используется стандарт WML (Wireless Markup Language). Помимо всего прочего при разработке WAP-ресурсов используется свой формат изображений - WBMP, позволяющий максимально облегчить WAP-страницу.

По сути, сама технология флеш не является языком web-программирования, но используется для визуализации элементов, написанные на языке XML.

Создание сайта по технологии flash сложный и трудоемкий процесс, но результат стоит, затраченных на него сил и средств. Flash-элементы, позволяют сделать сайт ярким и интерактивным. Живые, динамические страницы оставят неизгладимое впечатление о вашем ресурсе у посетителей, и положительный образ о вашем сайте надолго останется в умах зачарованных пользователей.

Но во всем как говориться нужно, знать меру, и создание flash-сайтов не исключение. Flash-блоки значительно тяжелее стандартных web-элементов и поэтому на их подгрузгу требуется больше времени. А пользователи сети, как правило, ждать не любят.

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

Для создания информационной системы выбрана среда программирования «Dreamweaver» и написание на языке PHP c элементами HTML кода.

PHP (PHP: Hypertext Preprocessor) - это распространенный язык программирования общего назначения с открытым исходным кодом. PHP сконструирован специально для ведения Web-разработок и его код может внедряться непосредственно в HTML.

Код PHP отделяется специальными начальным и конечным тегами <?php ?>, которые позволяют "переключаться" в "PHP-режим" и выходить из него.

PHP отличается от JavaScript тем, что PHP-скрипты выполняются на сервере и генерируют HTML, который посылается клиенту. Разработчик может настроить свой сервер таким образом, чтобы обычные HTML-файлы обрабатывались процессором PHP, так что клиенты даже не смогут узнать, получают ли они обычный HTML-файл или результат выполнения скрипта.

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

Хотя PHP, главным образом, предназначен для работы в среде web-серверов, область его применения не ограничивается только этим.

2.2 Описание среды программирования

Рабочие пространства, ориентированные на программирование

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

В Dreamweaver имеется несколько схем рабочего пространства для оптимизации процесса кодирования. С помощью переключателя рабочих пространств на панели «Приложение» можно переключаться между пространствами «Разработчик», «Разработчик-плюс», «Кодировщик» и «Кодировщик-плюс». Во всех этих рабочих пространствах по умолчанию отображается представление кода (либо во всем окне документа, либо в виде представлений «Код» и «Дизайн»), а панели прикреплены к левой стороне экрана. Во всех пространствах кроме пространства «Разработчик-плюс» в представлении по умолчанию отсутствует инспектор свойств.

Просмотр кода

Есть несколько способов просмотра исходного кода для текущего документа: можно отобразить его в окне «Документ», перейдя в представление кода, можно разделить область «Окно документа» так, чтобы в нем отображались как собственно страница, так и связанный с ней код. Кроме того, можно работать в инспекторе кодов, отдельном окне кодирования. Инспектор кода функционирует как окно представления кодов. Его можно рассматривать как отделяемое окно представления кода для текущего документа.

Просмотр кода в отдельном окне с помощью инспектора кода

Инспектор кода дает пользователю возможность работать в отдельном окне кодирования так же, как он работает в представлении «Код».

В меню «Окно» выберите пункт «Инспектор кода». Панель инструментов имеет следующие параметры:

- Управление файлами;

- Помещает или открывает файл;

- Просмотр/Отладка в браузере;

- Позволяет просматривать и отлаживать документ в браузере.

Обновление представления «Дизайн»

Обновляет документ в представлении «Дизайн», чтобы он отражал внесенные в код изменения. Внесенные в код изменения не отражаются автоматически в представлении «Дизайн» до выполнения пользователем определенных действий, например, до сохранения файла или нажатия на эту кнопку.

Открытие файлов в представлении кода по умолчанию

При открытии файла такого типа, который не должен содержать код HTML (например, файла JavaScript) этот файл открывается не в представлении «Дизайн», а в представлении «Код» (или в окне инспектора кода). Для изменения выбора типов файлов произведены шаги:

- В панели вкладок выбрана вкладка «Правка»;

- в появившемся меню выбрана строка «Настройки»;

- в открывшемся окне в списке категорий слева выбран пункт «Типы файлов и редакторы».

- в поле «Открыть в представлении кода» добавлены расширение имени файла для типа файлов;

Настройка сочетаний клавиш

В Dreamweaver можно использовать привычные сочетания клавиш. Для облегчения работы с определенными сочетаниями клавиш, например, использовать «Shift» + «Ввод» для добавления разрыва строки или «Ctrl» + «G» для перехода в определенное место кода, эти сочетания были добавлены в Dreamweaver с помощью редактора сочетаний клавиш.

Редактирование существующего сочетания клавиш

Для редактирования сочетания клавиш были произведены следующие действия:

- В панели вкладок выбрана вкладка «Правка»;

- в появившемся меню выбрана строка «Сочетания клавиш»;

- из всплывающего меню «Команды» выбрана требуемая категория;

- в списке «Команды» выбрана команда, а затем сочетание клавиш, которое требовалось заменить;

- в текстовом поле «Нажмите клавишу» и введено новое сочетание клавиш;

- задействована кнопка «Заменить», для замены сочетание клавиш.

3. Описательная часть разработанного программного продукта

3.1 Проектирование интерфейса пользователя

Для пользователя интерфейс - это и есть приложение. Независимо от того, сколько времени и усилий вы потратили на запись материала и моделирование, применимость информационной системы зависит от интерфейса.

Чтобы работа с информационной системы была удобной, пользователь при взаимодействии с ней должен ощущать комфорт.

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

- Интерфейс должен быть интуитивно понятным. Таким, чтобы пользователю не требовалось объяснять, как им пользоваться;

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

- яркость объекта должна лежать в определенных пределах;

- контрастность изображения относительно фона должна выбираться с учетом размеров объекта: чем меньше его размер, тем выше должна быть его контрастность;

- следует учитывать, что наибольшую чувствительность глаз имеет к излучению желто-зеленого цвета, наименьшую - к фиолетовому и красному;

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

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

Необходимо оценить свои финансовые возможности.

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

Исследуемые факторы:

1.1. Технические:

- Скорость приема/передачи информации (скорость соединения с Интернет);

- характеристики монитора (размер экрана, разрешающая способность, количество цветов, пр.), качество монитора;

- установка просмотра или отключение графики при просмотре сайта;

- версия браузера;

- настройки системы безопасности принимающего компьютера (если компьютер входит, например, в локальную сеть организации, фирмы) и компьютера посетителя;

- настройки браузера (размер шрифта, тип шрифта и пр.);

- версия операционной системы, установленная на компьютере посетителя;

- местоположение принимающего компьютера (город, страна, континент;

1.2. Социальные:

- Образование посетителя (начальное, среднее, высшее и пр.);

- должность посетителя (руководитель, менеджер, бухгалтер и пр.);

- материальное положение посетителя;

- вероисповедание посетителя.

1.3. Психологические:

- Мотивация (задачи, степень заинтересованности, ожидания): насколько важна для посетителя сайта информация, представленная на сайте (степень его заинтересованности).

- задачи, которые ставит перед собой посетитель сайта.

- чего ждет посетитель от сайта.

- личностные особенности (характер, темперамент, склонности);

- самочувствие посетителя;

- степень усталости посетителя (уставший, бодрый, сонливый и пр.);

- соответствует или нет информация сайта, тому ключевому слову, по которому был найден сайт.

1.4. Физиологические:

- Зрение посетителя (носит очки или нет);

- возраст посетителя;

- пол посетителя (мужчина или женщина);

1.5. Дополнительные условия:

- Опыт посетителя и знания в области Интернет;

- в какой раз посещается сайт (первый, второй, постоянный посетитель) и сколько сайтов просмотрено до этого;

- групповой или личный просмотр (один посетитель просматривает сайт или нет).

3.2 Разработка форм ввода - вывода информации

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

На форме вывода располагается:

Информация - необходимая для ознакомления с организацией, методом её работы и списком предоставляемых услуг;

Изображения - элемент визуального восприятия мира, воспроизведениеграфического,скульптурногопроизведения,специальнойили художественной фотографии;

Новости - обязательный элемент информирования посетителей сайта о изменениях или готовящихся мероприятиях.

Интерфейс ввода-вывода

В созданной ИС интерфейсом ввода является панель навигации, интерфейсом вывода для информации является центральная таблица.

Рисунок 1 - Интерфейс вывода информации

Рисунок 2 - Интерфейс ввода информации

4. Составление программной документации

Программная документация - это неотъемлемый компонент программного продукта и должен оформляться в соответствии с Единой системой программной документации (ЕСПД - ГОСТ серии 19). В рамках учебных работ допускается заключать всю содержательную часть программной документации в единый "отчёт по программе", при этом формальные требования к оформлению такого отчёта соответствуют требованиям к отчёту по НИР.

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

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

В программную документацию рабочего проекта входят: руководство программиста; руководство оператора; эксплуатационная программа или текст программы; описание контрольного примера.

4.1 Составление эксплуатационной документации к пользователю

Основная цель руководства пользователя заключается в обеспечении пользователя необходимой информации для самостоятельной работы с программой.

Для входа на сайт необходимо:

- Вставив диск в дисковод;

- далее нужно дважды нажать левой кнопкой мыши по иконке «Мой компьютер», который находится на рабочем столе или в «Меню пуск»;

Рисунок 3 - Пиктограмма «Мой компьютер»

- затем открыть вставленный диск «кликнув» левой кнопкой мыши по иконке дисковода с надписью «Сайт соц. обеспечения»;

- в открывшейся папке необходимо запустить файл установщик «Denwer3 Base»;

- следуя инструкциям установить виртуальный сервер;

- затем необходимо запустить сервер с помощью иконки на рабочем столе;

Рисунок 4 - Пиктограмма «Start Denwer»

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

Рисунок 5- Главная страница

Меню навигации отображается в левом вертикальном меню.

Рисунок 6 - Навигация по сайту

- ссылка «Главная», является главной страницей. Содержит краткую информацию об организации и функциях организации. Чтобы просмотреть необходимую информацию «щелкните» мышью по ссылке, которая находится в меню навигации сайта.

4.2 Составление эксплуатационной документации к программисту

Для использования данного проекта потребуются программные средства:

1. Adobe Dreamweaver CC;

2. Denwer;

3. Браузер.

Для редактирования и открытия сайта в Dreamweaver'е необходимо скопировать папку с документами сайта на сервер. При использовании Denwer'а путь для копирования файлов выглядит таким образом Виртуальный «диск сервера»:\home\localhost\www.

После копирования файлов на сервер можно открывать сайт в Dreamweaver'е.

Организация файлов в папке сайта:

1. Блок администратора

1.1 папка «admin» - папка содержащая файлы блока администратора сайта;

1.2 папка «Blocks” - пака содержащая файлы отвечающие за шапку, футер и панель навигации сайта;

1.2.1 файл «db.php» - отвечает за связь с базой данных на сервере;

1.2.2 файл «header.php» - отвечает за изображение в шапке сайта;

1.2.3 файл «lev.php» - отвечает за панель навигации;

1.2.4 файл «niz.php» - отвечает за футор сайта;

1.3 файл «new_novost.php» - отвечает за страницу добавления новых новостей;

1.4 файл «add_novost.php» - обработчик файла «new_novost.php», заносит информацию на сервер;

1.5 файл «edit_novost.php» - отвечает за страницу редактирования новостей;

1.6 файл «update_novost.php» - обработчик «edit_novost.php», переписывает информацию на сервере;

1.7 файл «del_novost.php» - отвечающий за страницу удаления новостей;

1.8 файл «drop_novost.php» - обработчик «del_novost.php», удаляет новость сервера;

1.9 файл «edit_text.php» - отвечает за страницу редактирования текстов сайта;

1.10 файл «update_text.php» - обработчик «edit_text.php», переписывает информацию на сервере;

1.11 файл «Index.php» - отвечает за главную страницу;

1.12 файл «lock.php» - отвечает за проверку доступа пользователя к блоку администратора;

1.13 файл «style.css» - отвечает за формат выведения информации на сайте.

1.14 папка «img» - в ней находятся изображения для сайта

2. Блок пользователя

2.1 папка «Blocks” - идентично пункту 1.2;

2.2 папка «Doki» - содержит документы доступные для скачивания посетителям сайта;

2.3 папка «img» - идентично пункту 1.14;

2.4 папка «novosti» - содержит папки с датами, в которых находятся изображения для новостей;

2.5 файл «Index.php» - отвечает за главную страницу сайта;

2.6 файл «dokyment.php» - отвечает за страницу «Документы» на сайте;

2.7 файл «novosti.php» - отвечает за страницу «Новости» на сайте;

2.8 файл «spravka.php» - отвечает за страницу «Справка» на сайте;

2.9 файл «stryktyra.php» - отвечает за страницу «Организационная структура» на сайте;

2.10 файл «style.css» - отвечает за формат выведения информации на сайте.

2.11 файл «view_novosti.php» - отвечает за отображение новостей на сайте;

2.12 файл «yslygi.php» - отвечает за страницу «Перечень услуг» на сайте;

2.13 файл «zadachi.php» - отвечает за страницу «Основные задачи» на сайте.

Редактирование программного кода на сайте осуществляется при помощи программного средства Adobe Dreamweaver.

Для правильного отображения сайта необходимо:

- Открыть в браузере «http://localhost/Tools/phpMyAdmin/»;

- нажать кнопку «Базы данных» в верхнем левом углу базы данных;

- в открывшейся странице, в поле обозначенным на рисунке 5, под номером два, ввести «kursovoiphp»;

- нажать кнопку «создать» отмеченной под номером три на рисунке 7;

Рисунок 7 - Создание базы данных

После создания базы данных. Необходимо провести импортирование файла «kursovoiphp.sql».

Для этого необходимо:

- Нажать вкладку «Импорт»;

- нажать кнопку «Выберите файл»;

- в открывшемся окне указать на файл «kursovoiphp.sql», который находится на диске;

- нажать на кнопку открыть;

- нажать кнопку «Ок» в нижней левой части страницы;

Рисунок 8 - Импортирование базы данных

Рисунок 9 - Кнопка «ОК»

Добавление, изменение и обновление информации на сайте осуществляется с блока администратора. Для входа в блок администратора необходимо в командной строке браузера прописать «localhost/kursovoiPHP/admin/».

Блок администратора находится под паролем. Для авторизации требуется ввести в появившемся оке:

Имя пользователя - Admin

Пароль - 206818

Рисунок 10 - Окно запроса авторизации

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

Рисунок 11 - Панель навигации администратора

Заключение

Цель курсовой работы является достигнутой.

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

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

В ходе работы реализованы следующие задачи:

- выполнен анализ инструментария и средств разработки сайта;

- изучены языки PHP и HTML;

- изучена технология работы клиент-сервер;

- изучена работа базы данных «mysql»;

- изучены алгоритмы работы в программном средстве Dreamweaver;

- закреплены новые знания в сфере разработки информационных систем.

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

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

программный сервер алгоритм

Список используемой литературы

1. Григорьев С.Г. и др. Теория и практика создания образовательных электронных изданий. - М.: Изд-во РУДН, 2003.

2. Педагогические технологии дистанционного обучения / Под ред. Е.С. Полат. - М.: Академия, 2006.

Приложение А

Листинг программы

Главная страница

<?php

/* Главная страница */

include ("blocks/db.php"); /* Соединение с базой */

$q = "SELECT title, meta_d, meta_k, text FROM setings WHERE page='Index'";

$result = mysql_query($q, $db);

$myrow = mysql_fetch_array ($result);

/* Создание массива информации */

//$myrow = iconv('windows-1251','utf-8',$myrow);

//var_export($myrow);

?>

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8" />

<meta name="description" content=" <?php echo $myrow ['meta_d']; ?>">

<meta name="keywords" content="<?php echo $myrow ['meta_k']; ?>">

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

<link href="style.css" rel="stylesheet" type="text/css">

</head>

<body>

<table width="1000" border="1" align="center" class="main_border">

<tbody>

<!-- Подключение Шапки, перавая тал-->

<? include ("Blocks/header.php"); ?>

<!-- Конец Шапки-->

<tr>

<!-- Основная таблица-->

<? include ("Blocks/lev.php"); ?>

<td width="798" valign="top" class="sentr">

<!--ТЕКСТ-->

<?php echo $myrow['text']; ?>

</td><!-- Конец основной таблицы-->

</tr><!-- Низ -->

<? include ("Blocks/niz.php"); ?>

</tr><!-- конец низа -->

</tbody>

</table>

</body>

</html>

<!-- Последующие страницы «Организационная структура», «Перечень услуг», «Основные задачи», «Документы», «Справка» и «Новости» имеют тот же код, что и код страницы «Главная». -->

Блок навигации

<td width="186" valign="top"><p align="center" class="title">Навигация</p>

<div id="coolmenu">

<a href="index.php">Главная</a>

<a href="stryktyra.php">Организационная структура</a>

<a href="yslygi.php">Перечень услуг</a>

<a href="zadachi.php">Основные задачи</a>

<a href="dokyment.php">Документы</a>

<a href="spravka.php">Справка</a>

<a href="novosti.php">Новости</a>

</div></td>

Шапка сайта

<tr>

<td colspan="2" bgcolor="#FFFFFF"><img src="img/Hapka2.jpg" width="993" height="100" alt=""/></td>

</tr>

Футер сайта

<tr>

<td colspan="2" bgcolor="#FFFFFF"><img src="img/niz.jpg" width="995" height="280" alt=""/></td>

Код соединения с сервером

<?php

$db = mysql_connect ("localhost","php","");

mysql_select_db("kursovoiphp", $db);

?>

Файл стилей используемых для сайта

/*@charset "windows-1251";*/

/* CSS Document */

.main_border {border:1px solid #000000;}

p {font-family:verdana; font-size:14px; margin:15px;}

.left {background-color:#E9E9E9; border-right:1px solid #424242;}

.sentr {background-color:#E9E9E9; border-right:1px solid #424242;}

body {background-image:url(img/fon3.jpg)}

p.title {

background-color: #A72E37;

color: #ffffff;

font-weight:bold;

margin:5px;

padding:5px;

}

#coolmenu{

border: 1px solid gray; /*Стиль рамки */

border-bottom-width: 0;

width: 93%; /*Ширина меню */

background-color: #f6f6f6; /*Фоновый цвет ячейки*/

margin:8px; /*Ширина отступов*/

}

* html #coolmenu{

width: 150px;/*Ширина меню для Internet Explorer*/

}

#coolmenu a{

font: bold 13px Verdana; /*Шрифт текста*/

padding: 2px; /*Внутренний отсутп текста ссылки от краев ячейки*/

padding-left: 4px;/*Внутренний отсутп текста ссылки от левого края ячейки*/

display: block;

width: 100%; /*Ширина ячейки*/

color: #000000; /*Цвет текста*/

text-decoration: none; /*Подчеркивание у ссылок - нет*/

border-bottom: 1px solid gray;

}

html>body #coolmenu a{

width: auto;

}

#coolmenu a:hover{

background-color: #cccccc; /*Фоновый цвет ячейки при наведение курсора*/

color: #000000; /*Цвет текста при наведении курсора*/

}

.novosti {border:1px solid #cccccc; width:95%;}

.novosti_title {background-color:#D4D4D4;}

.novosti_name {font-weight:bold; margin-top:7px; margin-bottom:7px;}

.novosti_adds {font-size:11px; margin-top:7px; margin-bottom:7px; color:#525252;}

.viwe_title {font-size:16px; font-weight:bold; color:#cc0000; text-align:center;}

.viwe_date {font-size:11px; color:#424242; margin-top:7px; margin-bottom:7px;font-weight:bold;}

Блок навигации в блоке администратора

<td width="186" valign="top">

<p align="center" class="title"> Новости</p>

<div id="coolmenu">

<a href="new_novost.php">Добавить новость</a>

<a href="edit_novost.php">Редактировать новость</a>

<a href="del_novost.php">Удалить новость</a>

</div>

<p align="center" class="title">Редактироват тексты страниц</p>

<div id="coolmenu">

<a href="edit_text.php">Редактирование</a>

</div>

</td>

Главная страница блока администратора

<?php include ("lock.php"); ?> /* Проверка доступа к странице */

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8" />

<title>Главная страница блока администратора</title>

<link href="style.css" rel="stylesheet" type="text/css">

</head>

<body>

<table width="1000" border="1" align="center" class="main_border">

<tbody>

<!-- Подключение Шапки, перавая тал-->

<? include ("Blocks/header.php"); ?>

<!-- Конец Шапки-->

<tr>

<!-- Основная таблица-->

<? include ("Blocks/lev.php"); ?>

<td width="798" valign="top" class="sentr">

<!--ТЕКСТ-->

<p align="center">Блок Админа</p>

</td>

</tr>

<!-- Конец основной таблицы-->

<!-- Низ -->

<? include ("Blocks/niz.php"); ?>

</tr>

<!-- конец низа -->

</tbody>

</table>

</body>

</html>

Обработчик добавления новостей

<?php

include ("lock.php");

include ("blocks/db.php"); /* Соединение с базой */

if (isset($_POST['title'])) {$title=$_POST['title'];}

if (isset($_POST['meta_d'])) {$meta_d=$_POST['meta_d'];}

if (isset($_POST['meta_k'])) {$meta_k=$_POST['meta_k'];}

if (isset($_POST['date'])) {$date=$_POST['date'];}

if (isset($_POST['description'])) {$description=$_POST['description'];}

if (isset($_POST['text'])) {$text=$_POST['text'];}

if (isset($_POST['avtor'])) {$avtor=$_POST['avtor'];}

//$myrow = iconv('windows-1251','utf-8',$myrow);

//var_export($myrow);

?>

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8" />

<title>Обработчик</title>

<link href="style.css" rel="stylesheet" type="text/css">

</head>

<body>

<table width="1000" border="1" align="center" class="main_border">

<tbody>

<!-- Подключение Шапки, перавая тал-->

<? include ("Blocks/header.php"); ?>

<!-- Конец Шапки-->

<tr>

<!-- Основная таблица-->

<? include ("Blocks/lev.php"); ?>

<td width="798" valign="top" class="sentr">

<!--ТЕКСТ-->

<?php

if (isset($title) && isset($meta_d) && isset($meta_k) && isset($date) && isset($description) && isset($text) && isset($avtor))

{ /* незаполненые поля */

$result = mysql_query ("INSERT INTO novosti (title, meta_d, meta_k, date, description, text, avtor) VALUES ('$title', '$meta_d', '$meta_k', '$date', '$description', '$text', '$avtor')");

if ($result = 'true') {echo "<p>Запись добавлена!</p>";}

else {echo "<p>Запись не добавлена!</p>";}

}

else { echo " <p> Есть незаполненные поля </p>"; }

?>

</td>

</tr>

<!-- Конец основной таблицы-->

<? include ("Blocks/niz.php"); ?>

</tr>

<!-- конец низа -->

</tbody>

</table>

</body>

</html>

Страница удаления новости

<?php

include ("lock.php");

include ("blocks/db.php"); /* Соединение с базой */

/* $q = "SELECT title, meta_d, meta_k, text FROM setings WHERE page='Index'";

$result = mysql_query($q, $db);

$myrow = mysql_fetch_array ($result); */

//$myrow = iconv('windows-1251','utf-8',$myrow);

//var_export($myrow);

?>

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8" />

<title>Удаление новости</title>

<link href="style.css" rel="stylesheet" type="text/css">

</head>

<body>

<table width="1000" border="1" align="center" class="main_border">

<tbody>

<!-- Подключение Шапки, перавая тал-->

<? include ("Blocks/header.php"); ?>

<!-- Конец Шапки-->

<tr>

<!-- Основная таблица-->

<? include ("Blocks/lev.php"); ?>

<td width="798" valign="top" class="sentr">

<!--ТЕКСТ-->

<form action="drop_novost.php" method="post">

<p>

<?php

$result=mysql_query ("SELECT title, id FROM novosti ");

$myrow = mysql_fetch_array ($result);

do { printf("<p><input name='id' type='radio' value='%s'><label>%s</p>",$myrow["id"],$myrow["title"]); }

while ($myrow = mysql_fetch_array ($result));

?>

</p>

<p>

<input name="submit" type="submit" value="Удалить">

</p>

</form>

</td>

</tr>

<? include ("Blocks/niz.php"); ?>

</tr>

<!-- конец низа -->

</tbody>

</table>

</body>

</html>

Обработчик удаления новости

<?php

include ("lock.php");

include ("blocks/db.php"); /* Соединение с базой */

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

//$myrow = iconv('windows-1251','utf-8',$myrow);

//var_export($myrow);

?>

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8" />

<title>Обработчик</title>

<link href="style.css" rel="stylesheet" type="text/css">

</head>

<body>

<table width="1000" border="1" align="center" class="main_border">

<tbody>

<!-- Подключение Шапки, перавая тал-->

<? include ("Blocks/header.php"); ?>

<!-- Конец Шапки-->

<tr>

<!-- Основная таблица-->

<? include ("Blocks/lev.php"); ?>

<td width="798" valign="top" class="sentr">

<!--ТЕКСТ-->

<?php

if (isset($id))

{ /* удаление новости */

$result = mysql_query ("DELETE FROM novosti WHERE id='$id'");

if ($result = 'true') {echo "<p>Запись удалена!</p>";}

else {echo "<p>Запись не удалён!</p>";}

}

else { echo " <p> Новость не выбрана. </p>"; }

?>

</td>

</tr>

<? include ("Blocks/niz.php"); ?>

</tr>

<!-- конец низа -->

</tbody>

</table>

</body>

Страница редактирования новости

<?php

include ("lock.php");

include ("blocks/db.php"); /* Соединение с базой */

/* $q = "SELECT title, meta_d, meta_k, text FROM setings WHERE page='Index'";

$result = mysql_query($q, $db);

$myrow = mysql_fetch_array ($result); */

//$myrow = iconv('windows-1251','utf-8',$myrow);

//var_export($myrow);

?>

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8" />

<title>Редактировать новость</title>

<link href="style.css" rel="stylesheet" type="text/css">

</head>

<body>

<table width="1000" border="1" align="center" class="main_border">

<tbody>

<!-- Подключение Шапки, перавая тал-->

<? include ("Blocks/header.php"); ?>

<!-- Конец Шапки-->

<tr>

<!-- Основная таблица-->

<? include ("Blocks/lev.php"); ?>

<td width="798" valign="top" class="sentr">

<!--ТЕКСТ-->

<?php

$id = mysql_real_escape_string($_GET['id']);

if (empty($id))

{

$result=mysql_query ("SELECT title, id FROM novosti ");

while ($myrow = mysql_fetch_array ($result))

{

echo "<p><a href=\"edit_novost.php?id=".$myrow['id']."\">".$myrow['title']."</a></p>";

}

}else {

$result=mysql_query ("SELECT * FROM novosti WHERE id=$id ");

$myrow = mysql_fetch_array ($result);

/* вывести форму */

print <<<HERE

<form action="update_novost.php" method="post" name="form1" id="form1">

<p>

<label for="textfield">Название новости:</label>

<br>

<input value="$myrow[title]" name="title" type="text" id="title" size="50">

</p>

<p>

<label for="textfield">краткое описание:</label>

<br>

<input value="$myrow[meta_d]" name="meta_d" type="text" id="meta_d" size="50">

</p>

<p>

<label for="textfield">Ключевые слова:<br>

</label>

<input value="$myrow[meta_k]" type="text" name="meta_k" id="meta_k">

</p>

<p>Дата:<br>

<input value="$myrow[date]" type="date" name="date" id="date">

</p>

<p>

<label for="textarea">Краткое описание:<br>

</label>

<textarea name="description" cols="60" rows="5" id="description">$myrow[description]</textarea>

</p>

<p>

<label for="textarea">Текст:<br>

</label>

<textarea name="text" cols="60" rows="20" id="text"> $myrow[text] </textarea>

</p>

<p>Автор:<br>

<input value="$myrow[avtor]" type="text" name="avtor" id="avtor">

</p>

<input name="id" value="$myrow[id]" type="hidden">

<p>

<input name="submit" type="submit" id="submit" value="Обновить">

</p>

<p>&nbsp;</p>

</form>

HERE;

}

?>

</td>

</tr>

<? include ("Blocks/niz.php"); ?>

</tr>

</tbody>

</table>

</body>

</html>

Страница редактирования страниц в блоке навигации

<?php

include ("lock.php");

include ("blocks/db.php"); /* Соединение с базой */

/* $q = "SELECT title, meta_d, meta_k, text FROM setings WHERE page='Index'";

$result = mysql_query($q, $db);

$myrow = mysql_fetch_array ($result); */

//$myrow = iconv('windows-1251','utf-8',$myrow);

//var_export($myrow);

?>

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8" />

<title>Редактирование главной</title>

<link href="style.css" rel="stylesheet" type="text/css">

</head>

<body>

<table width="1000" border="1" align="center" class="main_border">

<tbody>

<!-- Подключение Шапки, перавая тал-->

<? include ("Blocks/header.php"); ?>

<!-- Конец Шапки-->

<tr>

<!-- Основная таблица-->

<? include ("Blocks/lev.php"); ?>

<td width="798" valign="top" class="sentr">

<!--ТЕКСТ-->

<p align="center" class="sentr"><strong>Выберете страницу для редактирования.</strong></p>

<?php

$id = mysql_real_escape_string($_GET['id']);

if (empty($id))

{

$result=mysql_query ("SELECT title, id FROM setings ");

while ($myrow = mysql_fetch_array ($result))

{

echo "<p><a href=\"edit_text.php?id=".$myrow['id']."\">".$myrow['title']."</a></p>";

}

}else {

$result=mysql_query ("SELECT * FROM setings WHERE id=$id ");

$myrow = mysql_fetch_array ($result);

/* вывести форму */

print <<<HERE

<form action="update_text.php" method="post" name="form1" id="form1">

<p>

<label for="textfield">Название страницы:</label>

<br>

<input value="$myrow[title]" name="title" type="text" id="title" size="50">

</p>

<p>

<label for="textfield">Краткое описание:</label>

<br>

<input value="$myrow[meta_d]" name="meta_d" type="text" id="meta_d" size="50">

</p>

<p>

<label for="textfield">Ключевые слова:<br>

</label>

<input value="$myrow[meta_k]" type="text" name="meta_k" id="meta_k">

</p>

<p>

<label for="textarea">Текст:<br>

</label>

<textarea name="text" cols="60" rows="20" id="text"> $myrow[text] </textarea>

</p>

<input name="id" value="$myrow[id]" type="hidden">

<p>

<input name="submit" type="submit" id="submit" value="Обновить">

</p>

<p>&nbsp;</p>

</form>

HERE;

}

?>

</td>

</tr>

<? include ("Blocks/niz.php"); ?>

</tr>

</tbody>

</table>

</body>

</html>

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

<?php

include("blocks/db.php");

if (!isset($_SERVER['PHP_AUTH_USER']))

{

Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");

Header ("HTTP/1.0 401 Unauthorized");

exit();

}

else {

if (!get_magic_quotes_gpc()) {

$_SERVER['PHP_AUTH_USER'] = mysql_escape_string($_SERVER['PHP_AUTH_USER']);

$_SERVER['PHP_AUTH_PW'] = mysql_escape_string($_SERVER['PHP_AUTH_PW']);

}

$query = "SELECT pass FROM userlist WHERE user='".$_SERVER['PHP_AUTH_USER']."'";

$lst = @mysql_query($query);

if (!$lst)

{

Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");

Header ("HTTP/1.0 401 Unauthorized");

exit();

}

if (mysql_num_rows($lst) == 0)

{

Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");

Header ("HTTP/1.0 401 Unauthorized");

exit();

}

$pass = @mysql_fetch_array($lst);

if ($_SERVER['PHP_AUTH_PW']!= $pass['pass'])

{

Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");

Header ("HTTP/1.0 401 Unauthorized");

exit();

}

}

?>

Страница создания новых новостей

<?php include ("lock.php"); ?>

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8" />

<title>Добавить новость</title>

<link href="style.css" rel="stylesheet" type="text/css">

</head>

<body>

<table width="1000" border="1" align="center" class="main_border">

<tbody>

<!-- Подключение Шапки, перавая тал-->

<? include ("Blocks/header.php"); ?>

<!-- Конец Шапки-->

<tr>

<!-- Основная таблица-->

<? include ("Blocks/lev.php"); ?>

<td width="798" valign="top" class="sentr">

<!--ТЕКСТ-->

<form action="add_novost.php" method="post" name="form1" id="form1">

<p>

<label for="textfield">Название новости:</label>

<br>

<input name="title" type="text" id="title" size="50">

</p>

<p>

<label for="textfield">краткое описание:</label>

<br>

<input name="meta_d" type="text" id="meta_d" size="50">

</p>

<p>

<label for="textfield">Ключевые слова:<br>

</label>

<input type="text" name="meta_k" id="meta_k">

</p>

<p>Дата:<br>

<input type="date" name="date" id="date">

</p>

<p>

<label for="textarea">Краткое описание:<br>

</label>

<textarea name="description" cols="60" rows="5" id="description"></textarea>

</p>

<p>

<label for="textarea">Текст:<br>

</label>

<textarea name="text" cols="60" rows="20" id="text"> </textarea>

</p>

<p>Автор:<br>

<input type="text" name="avtor" id="avtor">

</p>

<p>

<input name="submit" type="submit" id="submit" value="Занести в базу">

</p>

<p>&nbsp;</p>

</form></td>

</tr>

<? include ("Blocks/niz.php"); ?>

</tr>

</tbody>

</table>

</body>

</html>

Обработчик новостей новых новостей

<?php

include ("lock.php");

include ("blocks/db.php"); /* Соединение с базой */

if (isset($_POST['title'])) {$title=$_POST['title'];}

if (isset($_POST['meta_d'])) {$meta_d=$_POST['meta_d'];}

if (isset($_POST['meta_k'])) {$meta_k=$_POST['meta_k'];}

if (isset($_POST['date'])) {$date=$_POST['date'];}

if (isset($_POST['description'])) {$description=$_POST['description'];}

if (isset($_POST['text'])) {$text=$_POST['text'];}

if (isset($_POST['avtor'])) {$avtor=$_POST['avtor'];}

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

//$myrow = iconv('windows-1251','utf-8',$myrow);

//var_export($myrow);

?>

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8" />

<title>Обработчик</title>

<link href="style.css" rel="stylesheet" type="text/css">

</head>

<body>

<table width="1000" border="1" align="center" class="main_border">

<tbody>

<!-- Подключение Шапки, перавая тал-->

<? include ("Blocks/header.php"); ?>

<!-- Конец Шапки-->

<tr>

<!-- Основная таблица-->

<? include ("Blocks/lev.php"); ?>

<td width="798" valign="top" class="sentr">

<!--ТЕКСТ-->

<?php

if (isset($title) && isset($meta_d) && isset($meta_k) && isset($date) && isset($description) && isset($text) && isset($avtor))

{ /* незаполненые поля */

$result = mysql_query ("UPDATE novosti SET title='$title', meta_d='$meta_d', meta_k='$meta_k', date='$date', description='$description', text='$text', avtor='$avtor' WHERE id='$id'");

if ($result = 'true') {echo "<p>Запись обновлена!</p>";}

else {echo "<p>Запись не обновлена!</p>";}

}

else { echo " <p> Он сломался ( </p>"; }

?>

</td>

</tr>

<!-- Конец основной таблицы-->

<!-- Низ -->

<? include ("Blocks/niz.php"); ?>

</tr>

<!-- конец низа -->

</tbody>

</table>

</body>

</html>

Обработчик редактирования страниц сайта

<?php

include ("lock.php");

include ("blocks/db.php"); /* Соединение с базой */

if (isset($_POST['title'])) {$title=$_POST['title'];}

if (isset($_POST['meta_d'])) {$meta_d=$_POST['meta_d'];}

if (isset($_POST['meta_k'])) {$meta_k=$_POST['meta_k'];}

if (isset($_POST['date'])) {$date=$_POST['date'];}

if (isset($_POST['description'])) {$description=$_POST['description'];}

if (isset($_POST['text'])) {$text=$_POST['text'];}

if (isset($_POST['avtor'])) {$avtor=$_POST['avtor'];}

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

//$myrow = iconv('windows-1251','utf-8',$myrow);

//var_export($myrow);

?>

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8" />

<title>Обработчик</title>

<link href="style.css" rel="stylesheet" type="text/css">

</head>

<body>

<table width="1000" border="1" align="center" class="main_border">

<tbody>

<!-- Подключение Шапки, перавая тал-->

<? include ("Blocks/header.php"); ?>

<!-- Конец Шапки-->

<tr>

<!-- Основная таблица-->

<? include ("Blocks/lev.php"); ?>

<td width="798" valign="top" class="sentr">

<!--ТЕКСТ-->

<?php

if (isset($title) && isset($meta_d) && isset($meta_k) && isset($text))

{ /* незаполненые поля */

$result = mysql_query ("UPDATE setings SET title='$title', meta_d='$meta_d', meta_k='$meta_k', text='$text' WHERE id='$id'");

if ($result = 'true') {echo "<p>Запись обновлена!</p>";}

else {echo "<p>Запись не обновлена!</p>";}

}

else { echo " <p> Он сломался ( </p>"; }

?>

</td>

</tr>

<? include ("Blocks/niz.php"); ?>

</tr>

</tbody>

</table>

</body>

</html>

Размещено на Allbest.ru


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.