Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Операции производимые с данными (Общая характеристика операций, производимых с данными)

Содержание:

Введение

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

На кафедре ОПДС регулярно внедряются различные инфокоммуникационные технологии – используются электронные учебные пособия, элементы дистанционного обучения и др.

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

Отмечена целесообразность наличия на кафедре ОПДС базы данных «Современное телекоммуникационное оборудование», разработаны требования для проектируемой базы данных и структура базы данных. Рассмотрены особенности построения систем управления базами данных в сети Internet.

Для реализации базы данных выбрана СУБД MySQL, а Web-интерфейса – язык PHP Hypertext Preprocessor. Выполнено начальное информационное наполнение базы данных. Приведен порядок работы с базой данных и ее администрирование.

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

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

- Изучить операции с данными;

- Рассмотреть разработку требований к базе данных и к Web-интерфейсу;

- Изучить способы построения баз данных;

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

- Изучить разработку программных модулей;

- Рассмотреть реализацию интерактивного каталога и т.д.

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

Глава 1 Общая характеристика операций, производимых с данными

1.1 Операции с данными

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

Примеры простых данных, которые может обрабатывать компьютер приведены в таблице 1:

Таблица 1

Типы данных, обрабатываемых компьютером

Типы данных

Операции

1

Числа (числовые данные)

Все арифметические операции

2

Тексты(символьные данные)

Замещение, вставка, удаление символов, сравнение, конкатенация строк

3

Логические(бинарные) данные

Все логические операции (конъюнкция, дизъюнкция, отрицание и др.)

4

Изображения:рисунки, графика,анимация (графические данные)

Операции над пикселями, из которых состоит изображение: яркость, цвет, контрастность

5

Видео данные

Удаление фрагмента, вставка фрагмента, работа с кадрами

6

Аудио данные

Усиление, уменьшение, удаление фрагмента, вставка фрагмента

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

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

В структуре возможных операций с данными можно выделить основные:

1) сбор данных - накопление информации с целью обеспечения достаточной полноты для принятия решений;

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

3) фильтрация данных - отсеивание «лишних» данных, в которых нет необходимости для принятия решений; при этом должен уменьшаться уровень «шума», а достоверность и адекватность данных должны возрастать;

4) сортировка данных - упорядочение данных по заданному признаку с целью удобства использования; повышает доступность информации;[2]

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

6) защита данных - комплекс мер, направленных на предотвращение утраты, воспроизведения и модификации данных;

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

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

Необходимость в многократном преобразовании данных возникает также при их транспортировке, особенно если она осуществляется средствами, не предназначенными для транспортировки данного вида данных. В качестве примера можно упомянуть, что для транспортировки цифровых потоков данных по каналам телефонных сетей (которые изначально были ориентированы только на передачу аналоговых сигналов в узком диапазоне частот) необходимо преобразование цифровых данных в некое подобие звуковых сигналов, чем и занимаются специальные устройства — телефонные модемы.[3]

1.2 Разработка требований к базе данных и к Web-интерфейсу

Разрабатываемая база данных и взаимодействие с ней (интерфейс) должны отвечать следующим основным требованиям:

• Обеспечение хранения, пополнения, редактирования, удаления и обработки данных о современном телекоммуникационном оборудовании;

• Обеспечение доступа к базе данных через сеть Internet;

• Быть удобной в использовании (не требовать от пользователя высокой квалификации для поиска данных, ее ведение и сопровождение (должна быть достаточно формализованной);

• Иметь дружественный интуитивно понятный интерфейс для взаимодействия с пользователем по сети Internet;

• Обеспечение целостности и безопасности данных. Рассмотрим эти требования более подробно.

К современному телекоммуникационному оборудованию следует отнести: концентраторы, коммутаторы, маршрутизаторы, кабели, модемы и другие устройства.

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

База данных должна быть реализована как удаленная информационная система, построенная на технологии «клиент-сервер».

В основу реализации требований к Web-интерфейсу могут быть включены следующие действия.

После запуска главной страницы сайта, обеспечивающего доступ к базе данных, должна появляться основная рабочая форма. Она должна содержать два списка: типы устройств (например, модем, концентратор) и производители устройств (например, 3Com, Cisco). После выбора в первом списке необходимого типа телекоммуникационного оборудования загрузится страница, содержащая устройства выбранного типа с указанием производителя и модели устройства. Далее, после выбора определенного устройства появится страница с кратким описанием и ссылкой на файл с подробной информацией об устройстве.[4]

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

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

•Сохранение информации;

•Вывод на печать;

•Выбор режима просмотра;

•Масштабирование;

•Выделение текстовой и графической информации;

•Копирование;

•Навигация по страницам;

•Повороты страниц;

•Поиск текста.

Одной из страниц сайта будет форма для задания условий поиска сведений в базе. Доступ к ней должен быть обеспечен из основного меню сайта (например, кнопкой «Поиск»). Для проведения поиска необходимо ввести в специальное поле искомую строку и выбрать в списке критерий поиска. Результатом поиска должен быть список телекоммуникационного оборудования, сведения о котором содержаться в базе данных.[5] Из этого списка можно будет перейти к подробному описанию интересующего устройства.

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

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

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

•редактирование существующих записей (тип оборудования, производители оборудования и описание устройств);

•добавление новых типов оборудования;

•добавление новых производителей устройств;

•добавление новых устройств;

•смена пароля администратора базы данных.

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

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

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

1.3 Способы построения баз данных

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

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

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

При этом БД должна поддерживаться в среде ЭВМ единым программным обеспечением, называемым системой управления базами данных (СУБД). СУБД вместе с прикладными программами называют банком данных.

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

•Избыточность данных;

•Слабый контроль;

•Недостаточные возможности управления данными; •Большие затраты труда программиста.

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

В настоящее время процесс создания максимально мощных систем управления базами данных идет полным ходом. За несколько десятилетий последовательно появлялись системы, основанные на трех базовых моделях данных, или концептуальных методах структурирования данных: иерархической, сетевой и реляционной.

Глава 2 Разработка структуры, информационное наполнение и описание сценариев работы с данными

2.1 Проектирование базы данных

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

Ниже приведены основные этапы проектирования базы данных: 1. Определение цели создания базы данных;

2. Определение таблиц, которые должна содержать база данных; 3. Определение необходимых в таблице полей;

4. Задание индивидуального значения каждому полю; 5. Определение связей между таблицами;

6. Обновление структуры базы данных;

7. Добавление данных и создание других объектов базы данных. Рассмотрим эти этапы более подробно.

1. Определение цели создания базы данных.

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

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

2. Определение таблиц, которые должна содержать база данных.

Одним из наиболее сложных этапов в процессе проектирования базы данных является разработка таблиц, так как результаты, которые должна выдавать база данных не всегда дают полное представление о структуре таблицы.[9]

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

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

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

3. Определение необходимых в таблице полей.

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

Каждое поле должно быть связано с темой таблицы;

Не рекомендуется включать в таблицу данные, которые являются результатом выражения;

В таблице должна присутствовать вся необходимая информация;

Информацию следует разбивать на наименьшие логические единицы.

4. Задание индивидуального значения каждому полю.

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

5. Определение связей между таблицами.

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

6. Обновление структуры базы данных.

После проектирования таблиц, полей и связей необходимо еще раз просмотреть структуру базы данных и выявить возможные недочеты. Желательно это сделать на данном этапе, пока таблицы не заполнены данными.[10] Для проверки необходимо создать несколько таблиц, определить связи между ними и ввести несколько записей в каждую таблицу, затем посмотреть, отвечает ли база данных поставленным требованиям.

7. Добавление данных и создание других объектов базы данных.

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

Таблица 2

«Фирмы» справочник наименований производителей оборудования

Поле

Тип

Размер

Комментарии

firmid

Счетчик

10

Первичный ключ

firmname

Текстовый

50

Наименование производителя

Таблица 3

«Типы» справочник наименований типов телекоммуникационного оборудования

Поле

Тип

Размер

Комментарии

typeid

Счетчик

10

Первичный ключ

typename

Текстовый

40

Наименование типа оборудования

Таблица 4

devices («Устройства») – таблица устройств

Поле

Тип

Размер

Комментарии

devid

Счетчик

10

Первичный ключ

typeid

Целый

10

Код типа оборудования

firmid

Целый

10

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

devname

Текстовый

10

Наименование устройства

description

Текстовый

255

Краткое описание устройства

descfile

Текстовый

255

Содержимое файла описания

Таблица 5

admin («Сервис») – используется для хранения паролей и имен пользователей, являющихся администраторами базы данных.

Поле

Тип

Размер

Комментарии

username

Текстовый

16

Имя администратора

password

Текстовый

16

Пароль администратора

Были установлены следующие связи:

types – devices: 1-∞ (один-ко-многим), то есть для каждого типа может существовать несколько устройств.

firms – devices: 1-∞ (один-ко-многим), то есть каждый производитель может выпускать несколько моделей телекоммуникационных устройств.

С таблицей admin связи отсутствуют в связи с тем, что она является дополнительным «хранилищем» данных для сохранения всевозможных настроек базы данных.

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

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

Файлы, выполненные в различных текстовых и иных процессорах (формат *.doc, *.rtf, *.ppt и др.), предназначены не для просмотра стандартными программами Internet-браузерами, а для получения их по сети и копирования на дисках пользователей. Эти форматы более привычны для значительной части пользователей и дают более широкие возможности для форматирования (за исключением, может быть, чисто текстовых форматов, где форматирование сводится к расстановке пробелов и пустых строк). Упрощены и возможности восприятия текста на русском и практически на любом из европейских языков. Однако исчезают все преимущества гипертекста, хотя возможна организация гиперссылок как внутри одного документа, так и с загрузкой других документов, а также гиперссылки на сетевые (электронные) адреса.

Целесообразно применять данные форматы для больших файлов с преимущественно линейной организацией материала (например, художественные произведения). Файлы публикаций в данных форматах могут иметь значительный объем, и поэтому рекомендуется уплотнять («сжимать») их утилитами сжатия (архиваторами), имеющими значительный коэффициент сжатия (например, pkzip или arj).

Файлы в формате программы Adobe Acrobat (PDF-формат) являются межплатформенным с полным издательским контролем отображаемого документа. PDF-файлы готовятся на основе двоичных Postscript-файлов. Следовательно, формат PDF может создаваться из документов любого приложения. Достаточно установить драйвер Postscript-принтера и вывести двоичный файл печати на этот принтер. PDF-файлы имеют те же самые преимущества, что и у предыдущей группы форматов и тот же коренной

недостаток: развитого аппарата гипертекстовых ссылок. Дополнительное

преимущество PDF-файлов состоит в их полной независимости от каких бы то ни было кодировок и от наличия или отсутствия каких-либо шрифтов на конкретном компьютере. Это достигается за счет включения в них используемых шрифтов, поэтому резко возрастает необходимость в дополнительном дисковом пространстве и увеличивается время их передачи по сети из-за их значительного объема.[12]

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

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

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

2.3 Разработка программных модулей

Для построения Web-сайта были реализованы следующие

функциональные возможности:

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

Механизм поиска информации в БД; Интерфейс администрирования.

Информационная система должна отвечать следующим требованиям:

Необходимо отыскать способ подключения базы данных к браузеру пользователя;

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

Администратор должен иметь возможность добавления, удаления и редактирования информации как о самих устройствах, так и о типах и производителях оборудования. Также должна быть реализована возможность добавления на сайт файлов описания устройств посредством Web-интерфейса.

Из перечисленных выше требований следует, что существуют два основных представления системы: пользовательское и администраторское. С учетом необходимых функциональных возможностей созданы две схемы системы - по одной для каждого представления (рис. 6.2 и 6.3).

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

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

Ниже перечислены два основных кодовых модуля для приложения: Каталог;

Администрирование.

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

Весь код данного Web-интерфейса содержится на сопровождающей дискете.

Чтобы код проекта работал как задумано, необходимо задействовать

режим magic quotes. Если это не выполнено, потребуется применять функцию addslashes[] ко вводимой в базу данных MySQL информации, а к извлекаемым из нее данным - функцию stripslashes[]. Упомянутый режим служит как удобное сокращение [5].

Режим magic quotes можно задействовать для отдельных каталогов с помощью следующих директив файла .htaccess:

php_value magic_quotes_gpc on (для PHP 4), либо php3_magic_quotes_gpc on (для PHP 3).

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

Листинг 1. SQL-код создания базы данных sto с комментариями

/* создаем базу данных sto, если таковая отсутствует */ create database if not exists sto;

/* использовать базу данных sto */ use sto;

/* удалить таблицу admin, если она уже существует в БД */ drop table if exists admin;

/* создать таблицу admin со следующими полями и определить первичный ключ */ CREATE TABLE admin ( username char(16) NOT NULL,

password char(16) NOT NULL,

PRIMARY KEY (username) ) TYPE=MyISAM;

/* добавить в таблицу admin пользователя и пароль */ INSERT INTO admin VALUES ('system','5940bb836c4aa055')

/* удалить таблицу devices, если она уже существует в БД */ drop table if exists devices;

/* создать таблицу devices со следующими полями, определить первичный ключ */ CREATE TABLE devices ( devid int(10) unsigned NOT NULL auto_increment,

typeid int(10) unsigned NOT NULL, firmid int(10) unsigned NOT NULL, devname varchar(50) default NULL, description varchar(255) default NULL, descfile varchar(255) default NULL, PRIMARY KEY (devid) ) TYPE=MyISAM;

/* удалить таблицу firms, если она уже существует в БД */ drop table if exists firms;

/* создать таблицу firms со следующими полями и определить первичный ключ */ CREATE TABLE firms ( firmid int(10) unsigned NOT NULL auto_increment,

firmname varchar(50) NOT NULL, PRIMARY KEY (firmid) ) TYPE=MyISAM;

/* удалить таблицу types, если она уже существует в БД */ drop table if exists types;

/* создать таблицу types со следующими полями и определить первичный ключ */ CREATE TABLE types ( typeid int(10) unsigned NOT NULL auto_increment,

typename char(40) NOT NULL,

PRIMARY KEY (typeid) ) TYPE=MyISAM;

Чтобы создать в системе базу данных, в среде MySQL потребуется выполнить сценарий sto.sql, имея права привилегированного пользователя (root):

mysql -u root -p < sto.sql

(Следует ввести пароль привилегированного пользователя.) Предварительно необходимо изменить пароль пользователя sto (по

умолчанию он имеет значение password).

2.4 Реализация интерактивного каталога

Это приложение содержит три сценария, связанных с каталогами:

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

Титульная страница сайта генерируется через сценарий index.php. Вывод этого сценария показан на рис. 1.

Рис. 1. Титульная страница сайта

Кроме списка типов оборудования и списка производителей окно содержит кнопки входа в меню администратора базы данных («Вход»), поиска по ключевому слову («Поиск»), а также кнопки, открывающие страницы со списком ссылок («Ссылки») и краткой информации о проекте

(«О проекте»). Эти элементы содержатся на каждой странице, открываемой в процессе просмотра содержимого базы данных.

Когда пользователь выполняет щелчок на одном из типов оборудования или производителе, открывается страница, содержащая список устройств выбранного типа или производителя соответственно. За это отвечают сценарии show_typ.php и show_firm.php. Страница, отображающая все устройства фирмы Zelax показана на рис. 2.

Рис. 2. Страница устройств определенного производителя

Все устройства данного производителя перечислены в виде ссылок. Когда пользователь выполняет щелчок на одной из них, открывается страница информации о соответствующем устройстве (рис. 3).

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

Рис. 3. Страница определенного устройства

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

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

На случай отсутствия установленной программы просмотра PDF-файлов предусмотрена гиперссылка, ведущая на официальный сайт фирмы Adobe, где можно скачать Adobe Acrobat Reader бесплатно для любой операционной системы. Эта гиперссылка также присутствует во всех сценариях сайта.

Рис. 4. Страница подробного описания устройства

Рассмотрим сценарии подробнее.

1. Списки типов и производителей оборудования.

Первый сценарий, index.php, выводит списки всех типов и производителей оборудования из базы данных (листинг 6.2).

Листинг 2. Сценарий вывода титульной страницы сайта (index.php)

<?

// файл титульной страницы сайта

// отображает списки типов оборудования, производителей оборудования // подключение файла функций

require_once("sto_fns.php");

do_html_header("Добро пожаловать в базу данных телекоммуникационного оборудования!");

echo "<center><p>Выберите категорию оборудования или производителя оборудования:</p></center>";

echo "<table width = \"80%\" align=center border = 0>";

echo "<tr><td width = \"50%\" VALIGN=top><ul>"; // извлечение типов оборудования из базы данных $typ_array = get_types();

// отображение ссылок на страницы типов оборудования display_types($typ_array);

echo "</td>";

echo "<td VALIGN=top><ul>";

// извлечение производителей оборудования из базы данных $fir_array = get_firms();

// отображение ссылок на страницы производителей оборудования display_firms($fir_array);

echo "</td></tr>";

echo "</table>"; echo "<hr>";

// отобразить футер do_html_footer();

?>

Сценарий начинается с подключения файла sto_fns.php, который содержит все библиотеки функций для данного приложения.

Сценарий включает вызовы функций вывода HTML-содержимого, таких как do_html_header() и do_html_footer() (обе находятся в файле output_fns.php).

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

Ниже показаны наиболее важные части сценария:

// извлечение типов оборудования из базы данных $typ_array = get_types();

// отображение ссылок на страницы типов оборудования display_types($typ_array);

// извлечение производителей оборудования из базы данных $fir_array = get_firms();

// отображение ссылок на страницы производителей оборудования display_firms($fir_array);

Функции get_types(), get_firms(), display_types() и display_firms() содержатся, соответственно, в библиотеках device_fns.php и output_fns.php. Функця get_types() возвращает массив типов оборудования, который затем передается в функцию display_types(). Функция get_firms() работает аналогичным образом. Код функции get_types() приводится в листинге 6.3.

Листинг 3. Функция get_types() из библиотеки output_fns.php извлекает из базы данных типы оборудования

function get_types() {

// запрос к базе данных на список типов устройств $conn = db_connect();

$query = "select typeid, typename from types"; $result = @mysql_query($query);

if (!$result) return false;

$num_typs = @mysql_num_rows($result); if ($num_typs ==0)

return false;

$result = db_result_to_array($result); return $result;

}

Функция осуществляет соединение с базой данных и извлечение списка

всех идентификаторов и наименований типов. Здесь используется ранее созданная функция db_result_to_array() из файла db_fns.php (листинг 6.4). Функция принимает идентификатор результата от MySQL и возвращает массив строк с числовой индексацией, где каждая строка представляет собой ассоциативный массив.

Листинг 4. Функция db_result_to_array() библиотеки db_fns.php преобразуетидентификатор результата MySQL в массив результатов

futrialn db_result_to_array($result) // функция заносит результат в массив {

$res_array = array();

for ($count=0; $row = @mysql_fetch_array($result); $count++) $res_array[$count] = $row;

return $res_array; }

В нашем случае этот массив возвращается в сценарий index.php, где передается в display_types() из библиотеки output_fns.php. Эта функция отображает каждый тип оборудования в виде ссылки на страницу, отображающую список устройств определенного типа. Код функции показан в листинге 5.

Листинг 5. Функция display_types() из библиотеки output_fns.php отображает массив типов в виде списка ссылок на типы оборудования

function display_types($typ_array) {

if (!is_array($typ_array)) {

echo "<center><br>Типов оборудования нет.<br><br></center>"; }

else {

echo "<br><table width = \"80%\" align=center border = 0>";

foreach ($typ_array as $row) {

$url = "show_typ.php?typid=".($row["typeid"]); echo "<tr><td><ul>";

echo "<li><b>";

$title = $row["typename"]; do_html_url($url, $title); echo "</b></td></tr>";

}

echo "</table><br>"; }

}

Функция преобразует каждый тип оборудования базы данных в ссылку.

Все ссылки передаются в следующий сценарий, show_typ.php, но каждая из

них имеет свой параметр, идентификатор типа (typeid). (Это уникальное число, сгенерированное MySQL и применяемое для идентификации типа).

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

2.Список устройств определенного типа оборудования.

Процесс вывода списка устройств определенного типа аналогичен рассмотренному выше. Вывод осуществляет сценарий show_typ.php, показанный в листинге 6.

Листинг 6. Cценарий, отображающий устройства определенного типа

<?

// файл отображает все устройства определенного типа оборудования

// подключение файла функций require_once("sto_fns.php");

$name = get_type_name($typid);

do_html_header($name);

$device_array = get_devices($typid);

display_devices($device_array);

// если авторизован как администратор, то показать ссылки на редактирование if(session_is_registered("admin_user"))

{

display_button("edit_type_form.php?typid=$typid", "edit-category", "Редактировать категорию");

display_button("index.php", "back", "Назад"); }

else

display_button("index.php", "back", "Назад");

// отобразить футер do_html_footer();

?>

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

С использованием функции get_type_name() передаваемый идентификатор типа преобразуется в имя типа оборудования:

$name = get_type_name($typid);

Эта функция выполняет поиск имени типа оборудования в базе данных. Код функции показан в листинге 7.

Листинг 7. Функция get_type_name() библиотеки device_fns.php

преобразует идентификатор типа в имя типа оборудования

function get_type_name($typid) {

// запрос к базе данных на получение имени типа по его идентификатору $conn = db_connect();

$query = "select typename from types where typeid = $typid"; $result = @mysql_query($query);

if (!$result) return false;

$num_typs = @mysql_num_rows($result); if ($num_typs ==0)

return false;

$result = mysql_result($result, 0, "typename"); return $result;

}

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

$device_array = get_devices($typid);

display_devices($device_array);

Функции get_devices() и display_devices() во многом подобны функциям get_types(), get_firms(), display_firms() и display_types(). Единственное отличие состоит в том, что информация извлекается из таблицы устройств, а не таблицы типов или производителей.

Функция display_devices() предоставляет ссылку на каждое устройство определенного типа или производителя при помощи сценария

show_device.php. Каждая ссылка сопровождается параметром в виде суффикса, который определяет идентификатор конкретного устройства.

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

3. Отображение информации об устройстве.

Сценарий show_device.php принимает идентификатор типа оборудования в качестве параметра, а затем извлекает и отображает сведения о данном устройстве. Код сценария показан в листинге 6.8.

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

$device = get_device_details($devid);

Для вывода данных в формате HTML используется следующий код:

display_device_details($device);

Функция display_device_details() выполняет поиск файла изображения

для устройства, который выглядит как images/devid.jpg. Если файл не существует, изображение не выводится.

Листинг 8. Cценарий отображает данные по определенному устройству

<?

// файл отображает данные по определенному устройству

// подключение файла функций require_once("sto_fns.php");

$device = get_device_details($devid); do_html_header(get_firm_name($device["firmid"])." ".$device["devname"]); display_device_details($device);

// установка ссылки на кнопку "назад" $target = "index.php"; if($device["typeid"])

{

$target = "show_typ.php?typid=".$device["typeid"]; }

// если авторизован как администратор, то показать ссылки на редактирование if( check_admin_user() )

{

display_button("edit_device_form.php?devid=$devid", "edit-item", "Редактирование записи");

display_button($target, "back", "Назад"); }

else {

display_button($target, "back", "Назад"); }

// отобразить футер do_html_footer();

?>

Оставшаяся часть сценария устанавливает средства навигации. Обычному пользователю предоставляется кнопка «Вход» (Вход для администратора), позволяющая войти в систему для администрирования, и кнопка «Назад» для возврата на предыдущую страницу. Если пользователь вошел в систему с правами администратора, ему предлагаются другие опции.

Заключение

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

Была обоснована целесообразность наличия на кафедре ОПДС базы данных «Современное телекоммуникационное оборудование», разработаны требования к базе данных. Рассмотрены возможные способы построения базы данных и выбран наиболее рациональный способ ее построения. Разработана структура базы данных. Для реализации базы данных была выбрана СУБД MySQL и язык сценариев PHP Hypertext Preprocessor. Выполнено начальное информационное наполнение. Приведен порядок работы с базой данных.

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

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

  1. Архитектура и технологии IBM eServer zSeries / В.А. Варфоломеев и др. - М.: Интернет-университет информационных технологий, 2015. - 640 c.
  2. Владимир, Михайлович Илюшечкин Основы использования и проектирования баз данных / Владимир Михайлович Илюшечкин. - М.: Юрайт, 2015. - 516 c.
  3. Голицына, О. Л. Базы данных / О.Л. Голицына, Н.В. Максимов, И.И. Попов. - М.: Форум, 2015. - 400 c.
  4. Зубов, А. В. Основы искусственного интеллекта для лингвистов / А.В. Зубов, И.И. Зубова. - Москва: РГГУ, 2013. - 320 c.
  5. Илюшечкин, В. М. Основы использования и проектирования баз данных / В.М. Илюшечкин. - М.: Юрайт, Юрайт, 2013. - 224 c.
  6. Илюшечкин, В. М. Основы использования и проектирования баз данных. Учебник / В.М. Илюшечкин. - М.: Юрайт, 2014. - 214 c.
  7. Илюшечкин, В. М. Основы использования и проектирования баз данных. Учебник / В.М. Илюшечкин. - М.: Юрайт, 2015. - 214 c.
  8. Исаев, Г. Н. Информационные системы в экономике. Учебник / Г.Н. Исаев. - М.: Омега-Л, 2015. - 464 c.
  9. Карпова, И. П. Базы данных / И.П. Карпова. - М.: Питер, 2013. - 240 c.
  10. Кириллов, В.В. Введение в реляционные базы данных (+ CD-ROM) / В.В. Кириллов. - М.: БХВ-Петербург, 2016. - 318 c.
  11. Комплекснозначные и гиперкомплексные системы в задачах обработки многомерных сигналов / Я.А. Фурман и др. - М.: ФИЗМАТЛИТ, 2015. - 456 c.
  12. Костин, А. Е. Организация и обработка структур данных в вычислительных системах. Учебное пособие / А.Е. Костин, В.Ф. Шаньгин. - М.: Высшая школа, 2014. - 248 c.
  13. Кудрявцев, В.Б. Интеллектуальные системы. Учебник и практикум для бакалавриата и магистратуры / В.Б. Кудрявцев, Э.Э. Гасанов, А.С. Подколзин. - Москва: ИЛ, 2016. - 219 c.
  14. Кузнецов, С. Д. Базы данных. Модели и языки / С.Д. Кузнецов. - М.: Бином-Пресс, 2013. - 720 c.
  15. Кузнецов, С. Д. Основы баз данных / С.Д. Кузнецов. - М.: Бином. Лаборатория знаний, Интернет-университет информационных технологий, 2017. - 488 c.
  16. Латыпова, Р. Р. Базы данных. Курс лекций / Р.Р. Латыпова. - Москва: Высшая школа, 2016. - 177 c.
  17. Мартишин, С. А. Базы данных. Практическое примечание СУБД SQL и NoSOL. Учебное пособие / С.А. Мартишин, В.Л. Симонов, М.В. Храпченко. - М.: Форум, Инфра-М, 2016. - 368 c.
  18. Миркин, Б. Г. Введение в анализ данных. Учебник и практикум / Б.Г. Миркин. - М.: Юрайт, 2015. - 176 c.
  19. Нейрокомпьютеры в системах обработки изображений. - М.: Радиотехника, 2013. - 192 c.
  20. Остроух, А. В. Ввод и обработка цифровой информации / А.В. Остроух. - М.: Академия, 2016. - 288 c.
  21. Персианов, Вячеслав Венедиктович; Технология Проектирования Информационной Базы Для Педагогических Вузов Страны. / Персианов Вячеслав Венедиктович;. - Москва: Огни, 2016. - 594 c.
  22. Персианов, Вячеслав Венедиктович; Электронное Образовательное Пространство Педагогического Университета:Формирование, Применение, Проблемы / Персианов Вячеслав Венедиктович;. - Москва: Гостехиздат, 2013. - 195 c.
  23. Проектирование баз данных. СУБД Microsoft Access. Учебное пособие. - М.: Горячая линия - Телеком, 2013. - 240 c.
  24. Свиридова, М. Ю. Система управления базами данных Access / М.Ю. Свиридова. - М.: Академия, 2016. - 192 c.
  25. Советов, Б. Я. Моделирование систем / Б.Я. Советов, С.А. Яковлев. - М.: Высшая школа, 2015. - 343 c.
  26. Стружкин, Н. П. Базы данных. Проектирование. Учебник / Н.П. Стружкин, В.В. Годин. - М.: Юрайт, 2016. - 478 c.
  27. Фуфаев, Э. В. Базы данных / Э.В. Фуфаев, Д.Э. Фуфаев. - М.: Академия, 2016. - 320 c.
  28. Фуфаев, Э. В. Базы данных. Учебное пособие / Э.В. Фуфаев, Д.Э. Фуфаев. - М.: Академия, 2014. - 320 c.
  29. Хомоненко, А. Работа с базами данных в C++ BUILDER / А. Хомоненко. - М.: Книга по Требованию, 2017. - 488 c.
  30. Цуканова, Н. И. Онтологическая модель представления и организации знаний. Учебное пособие / Н.И. Цуканова. - М.: Горячая линия - Телеком, 2015. - 272 c.
  1. Владимир, Михайлович Илюшечкин Основы использования и проектирования баз данных / Владимир Михайлович Илюшечкин. - М.: Юрайт, 2015. - 516 c.

  2. Илюшечкин, В. М. Основы использования и проектирования баз данных. Учебник / В.М. Илюшечкин. - М.: Юрайт, 2014. - 214 c.

  3. Советов, Б. Я. Моделирование систем / Б.Я. Советов, С.А. Яковлев. - М.: Высшая школа, 2015. - 343 c.

  4. Мартишин, В.Л. Симонов, М.В. Храпченко. - М.: Форум, Инфра-М, 2016. - 368 c.

  5. Кузнецов, С. Д. Основы баз данных / С.Д. Кузнецов. - М.: Бином. Лаборатория знаний, Интернет-университет информационных технологий, 2017. - 488 c.

  6. Кириллов, В.В. Введение в реляционные базы данных (+ CD-ROM) / В.В. Кириллов. - М.: БХВ-Петербург, 2016. - 318 c.

  7. Архитектура и технологии IBM eServer zSeries / В.А. Варфоломеев и др. - М.: Интернет-университет информационных технологий, 2015. - 640 c.

  8. Голицына, О. Л. Базы данных / О.Л. Голицына, Н.В. Максимов, И.И. Попов. - М.: Форум, 2015. - 400 c.

  9. Цуканова, Н. И. Онтологическая модель представления и организации знаний. Учебное пособие / Н.И. Цуканова. - М.: Горячая линия - Телеком, 2015. - 272 c.

  10. Исаев, Г. Н. Информационные системы в экономике. Учебник / Г.Н. Исаев. - М.: Омега-Л, 2015. - 464 c.

  11. Зубов, А. В. Основы искусственного интеллекта для лингвистов / А.В. Зубов, И.И. Зубова. - Москва: РГГУ, 2013. - 320 c.

  12. Латыпова, Р. Р. Базы данных. Курс лекций / Р.Р. Латыпова. - Москва: Высшая школа, 2016. - 177 c.