Объектно-ориентированные возможности языка РНР (на примере создания интернет-приложения "Учет оборудования")
Анализ объектно-ориентированных возможностей и управляющих конструкций языка РНР. Иллюстрация передачи параметра по адресной строке. Технология работы с MySQL-сервером, функции MySQL. Проектирование и создание интернет-приложения "Учет оборудования".
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 28.11.2016 |
Размер файла | 1,3 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru
СОДЕРЖАНИЕ
ВВЕДЕНИЕ
1. Необходимые знания по РНР
1.1 Объектно-ориентированные возможности РНР
1.2 Управляющие конструкции РНР
1.3 Передача параметров в РНР-приложение
1.4 Работа с MySQL сервером и функции MySQL
2. Структурная схема ПО web-сервера
2.1 Проектирование и создание базы данных
2.2 Составление web-страниц, с которыми будет работать пользователь
2.3 Написание РНР-кода, обрабатывающего БД
Заключение
Список использованной литературы
Приложение 1. SQL запрос для построения базы данных
Приложение 2. HTML-коды страниц сайта и таблица стилей
Приложение 3. РНР-коды страниц сайта
Приложение 4. Связи между таблицами
Введение
В данной курсовой работе я рассмотрел объектно-ориентированные возможности языка РНР, на примере создания интернет-приложения «Учёт оборудования», используя СУБД MySQL и РНР, который будет служить пользовательским интерфейсом для работы с данной базой данных.
PHP - это серверный (или серверной стороны) язык сценариев, разработанный специально для Web. В HTML-страницу можно внедрить PHP-код, который будет выполняться при каждом её посещении. PHP-код интерпретируется Web-сервером и генерирует HTML-код или другой вывод, наблюдаемый посетителями страницы.
PHP - это продукт с открытым исходным кодом (Open Source), то есть вы имеете доступ к исходному коду. Его можно использовать, изменять и свободно распространять другим пользователям или организациям.
Первоначально PHP являлось сокращением от “Personal Home Page” (“Персональная домашняя страница”), но затем его название было изменено в соответствии с соглашением по рекурсивному именованию GNU (GNU=Gnu's Not Unix) и теперь означает “PHP Hypertext Preprocessor” (“Гипертекстовый препроцессор PHP”).
В настоящее время основной версией PHP является четвёртая. Эта версия характеризуется несколькими существенными языковыми усовершенствованиями.
Язык РНР очень практичен, а так же он способен предоставлять программисту средства для быстрого и эффективного решения поставленных перед ним задач. Еще язык РНР работает на любом типе операционных систем, то есть он поддерживается системами типа Windows и Unix.
Существует также еще одна характеристика, которая делает РНР особенно привлекательным для программистов - это его бесплатное распространение! Наиболее новую версию можно в любой момент выгрузить из сайта по адресу http://www.php.net. рнр язык интернет приложение
MySQL - очень быстрая, надёжная система управления базами данных (СУБД). Вообще говоря, база данных позволяет эффективно хранить, искать, сортировать и получать данные. Сервер MySQL управляет доступом к данным, позволяя работать с ними одновременно нескольким пользователям, обеспечивает быстрый доступ к данным и гарантирует предоставление доступа только пользователям, имеющим на это право. Следовательно, MySQL является многопользовательским, многопоточным сервером. Он применяет SQL (Structured Query Landguage - язык структурированных запросов), используемый по всему миру стандартный язык запросов в базы данных.
Для создания базы данных MySQL я буду использовать такую прикладную программу, как phpMySQL_Admin, так как она имеет простой и понятный каждому интерфейс и позволяет создать базу данных MySQL практически не зная самого языка SQL.
Полученная курсовая работа по теме «Объектно-ориентированные возможности языка РНР» с использованием PHP и СУБД MySQL имеет в своем объеме __ страниц печатного текста, 12 рисунков и 4 приложения.
I. Необходимые знания по РНР
1.1 Обьектно-ориентированные возможности языка PHP.
РНР изобретен Расмусом Лердорфом в конце 1994 года. Первая версия выпущена в 1995 году под именем «Инструментарий Персональных Домашних Страниц», затем она была переработана и названа PHP/FI Version 2 (FI -- модуль обработки данных для форм). Также была добавлена поддержка баз данных mSQL. С этого момента в разработке стали принимать участие добровольцы.
Статистика используемости РНР приблизительна, но, согласно исследованию, проведенному Netcraft, в начале 2001 года РНР использовался на более чем 5 300 000 сайтах по всему миру. Для сравнения: в это время число IIS серверов было примерно таким же (5 млн). Разработка интерпретатора РНР приняла форму организованного командного процесса, ядро интерпретатора разрабатывает компания Zend.com. При этом РНР распространяется свободно: его последнюю версию можно загрузить с сайта PHP.net. Модули РНР поставляются в комплекте с сервером Apache, в комплектах систем Linux.
Изначально аббревиатура РНР означала Preprocessor of Home Pages -- препроцессор домашних страниц. Это язык внедряемых в HTML-страницы сценариев, исполняемых на сервере. По большей части его синтаксис заимствован из таких языков, как С, Perl, Java, и при этом добавлена масса возможностей, которых этим языкам недостает. Проще говоря, синтаксис РНР -- это разумная альтернатива и строгости С, и «беспредельности» Perl.
РНР наделен практически полным набором функциональности, о которой (до появления РНР) мог только мечтать web-программист. Его цель -- позволить максимально быстро создавать динамически генерируемые web-страницы. С полным основанием можно заявить, что изучение и использование РНР будет выгодно как начинающим, так и профессиональным программистам.
Основными конкурентами РНР являются технологии JSP (Java Server Pages и Java Scriptlets), ASP (Active Server Pages), Perl, SSI (Server Side Includes), Cold Fusion Server Pages.
Рассмотрим те недостатки, которые присущи указанным технологиям. JSP -- достаточно сложный для изучения и использования язык. ASP, основанный на синтаксисе VBScript (Visual Basic), имеет всего несколько десятков собственных функций и поэтому вынужден использовать СОМ-объекты; кроме того, он ориентирован исключительно на работу под Windows. Perl -- язык головоломный, и его вольности затрудняют его понимание. SSI позволяет всего лишь компоновать HTML-страницу из нескольких файлов. CF -- коммерческий продукт, что является его основным недостатком.
Основные достоинства РНР:
· бесплатен; постоянно совершенствуется; работает на UNIX и Windows платформах;
· допускает работу с большинством СУБД;
· имеет широкий набор функций (более 3 тыс.);
· допускает объектно-ориентированное программирование;
· способен использовать протоколы HTTP, FTP, ШАР, SNMP, NNTP, РОРЗ, net sockets и другие;
· позволяет выполнять все операции, что и перечисленные его конкуренты, и даже работать с файлами графики. Можно также запускать РНР-скрипты как интерпретируемые файлы и компилировать исполняемые приложения (в том числе с поддержкой графического интерфейса GTK).
Если вы обнаружите, что РНР не способен на что-то (или работает не так, как вам хотелось бы), никто не будет препятствовать вам вносить в исходный код РНР (написанный на С) желаемые изменения. РНР является программным продуктом с открытым исходным кодом, и внесение в него улучшений и дополнений путем создания собственных модулей расширения всегда приветствуется.
Для начала, чтобы сервер знал, в каком из файлов используются РНР-команды и, следовательно, мог передать такую страничку для дальнейшей обработки, необходимо изменить расширение файла с *.html на *.php3. Поэтому, когда вы видите файлы с таким расширением, можно с почти полной уверенностью утверждать, что при их создании использовался РНР.
Каждая команда РНР обычно начинается с тэга <?php и заканчивается ?>. Если вы используете несколько команд подряд, они могут быть объединены внутри одной пары тэгов - в этом случае каждую команду необходимо отделять друг от друга символом ;. В любом месте РНР-скрипта можно размещать комментарии. Для начала комментария используется символы /*, а для его завершения - */. Если комментарий небольшой, удобней использовать символы // - тогда все, что следует за ними до конца строки, будет игнорироваться, подобно лишним символам пробела, табуляции и новой строки.
РНР позволяет использовать переменные - при этом их не нужно описывать так, как это делается в Visual Basic или Pascal. Вы просто вводите необходимую переменную там, где вам нужно и тогда, когда вам это нужно. Имена переменных начинаются с символа $.
Переменные могут быть трех типов: целые, с плавающей запятой и символьные строки. Хотя разделение на типы скорее условное, и каждая функция стремится использовать правильный тип автоматически. Например:
<?php
$a = 7;
$b = 9.5;
$c = "Hello"; ?>
Здесь переменной а присваивается значение 7, и она приобретает тип целочисленной. Переменная b обретает вещественный тип и становится равной 9,5. Строка Hello присваивается переменной с, в результате чего она становится строковой.
Для отображения переменных или результатов работы скрипта используется команда echo. Вот небольшой пример рабочей страницы, для того, что бы можно было оценить, как просто включить PHP-скрипт в обычный html-документ:
<html> <head>
<title>Пример</title>
</head> <body>
<?php $d = date(d.m.Y);
echo "Последние обновления: $d "; ?>
</body></html>
В результате загрузки такой страницы, РНР обработает все команды, которые находятся между специальными тэгами, и вы увидите, в данном случае, строку вроде Последние обновления: 2.08.2000. Браузер получает чистый HTML-код и если просмотреть его, вы не найдете там никаких следов пребывания РНР. Таким образом, вы создадите "вечно обновленную" страницу J.
Встроенная функция date() способна выводить текущие время и/или дату - в любом необходимом для вас виде.
С помощью PHP очень просто обрабатывать данные, полученные из форм, так как для каждого поля ввода в вашей форме автоматически создается переменная. Предположим, например, что у вас есть форма:
<form action="thanx.php3" method=post>
<input type="text" name="name">
< input type="text" name="email">
< input type="submit"> </form>
Тогда в файле thanx.php3 можно написать что-нибудь вроде:
<?php echo "Спасибо вам, $name, за регистрацию. Мы только что отправили на $email 10Mb рекламных проспектов. Заходите к нам еще.";?>
Тем самым вы порадуете посетителей своей странички такой оперативной работой, и они наверняка захотят вернуться к вам еще разок.
Письмо можно действительно послать, и это делается одной строкой. Если вы добавите в тот же thanx.php3 нижеследующее:
<?php mail($email, "Тема сообщения",
"Простите, проспекты уже закончились");?>
Письмо уйдет на адрес, который пользователь еще минуту назад неосмотрительно вводил в вашу форму.
РНР поддерживает HTTP-cookies. Cookies - это механизм для сохранения данных в удаленном браузере. Таким образом можно отслеживать или идентифицировать пользователя. Для того, чтобы сохранить переменную на компьютере посетителя вашей странички, используется функция SetCookie(). Любое значение cookies, сохраненное таким образом, автоматически превращается в переменную, так же как и в случае с формами. Например:
<?php SetCookie("TrojanHorse","Я вас где-то видел ");
echo $TrojanHorse; ?>
На экране появится строка: Я вас где-то видел. Все достаточно просто, сохранять можно любые переменные, а затем их использовать.
Именно поэтому в формах, которые вы хотя бы раз заполняли, при их последующих загрузках вы можете увидеть ваши имя, электронный адрес и прочую подобную информацию в соответствующих полях.
В РНР присутствует достаточно большой набор функций для работы с файлами. Причем можно работать как с локальными файлами, так и с теми, что расположены на удаленных серверах.
Процедура записи/чтения осуществляется очень просто.
<?PHP $fp = fopen("counter.txt","r+"); $c = fgets($fp, 10);
$c = c + 1; rewind($fp); fputs($fp,$c); fclose($fp); echo $c; ?>
Этот пример демонстрирует принцип создания на РНР, простейшего счетчика посещений вашей страницы. Функция fopen() открывает файл counter.txt для чтения и записи. В переменную с с помощью функции fgets() считывается строка длиной 10 байт. Затем значение счетчика увеличиваем на единицу. Здесь хорошо видно, как переменная с, которая вначале имела строковый тип, становится целочисленной: $c = c + 1. Функция rewind($fp) перемещает файловый указатель на начало файла. Новое значение счетчика записывается в файл fputs($fp,$c), после чего он закрывается fclose($fp). В том месте страницы, где будет расположен этот скрипт, всегда можно будет видеть, сколько раз эта страница посещалась.
Интересные возможности открываются при использовании HTTP-заголовков. Частным случаем их использования может служить такой пример. Допустим, вы имеете каталог ссылок и хотите знать, какие из них пользуются наибольшей популярностью. В этом случае можно использовать функцию header(). Например:
<?PHP header("Location: http://www.php.net/"); ?>
В данном случае пользователь будет перенаправлен на сайт РНР. При этом можно увеличить значение счетчика, которое-то вам и расскажет, что именно интересует ваших посетителей. Заголовки (как, впрочем, и cookies) необходимо использовать до вывода данных командой echo или ей подобными функциями - иначе ничего не получится.
Чтобы больше узнать о ваших посетителях (а именно для этого, как вы теперь знаете, в начале и создавался этот язык), можно использовать предопределенные переменные, доступ к которым предоставляет РНР. Например, с помощью переменной REMOTE_ADDR вы узнаете IP-адрес, с которого пользователь просматривает вашу страничку. Переменная HTTP_USER_AGENT расскажет вам о том, какие браузеры и операционные системы используют ваши посетители. Существует еще множество других переменных, которые можно использовать для изучения аудитории посетителей вашего сайта или страницы.
1.2 Управляющие конструкции РНР
Управляющие конструкции обычно проверяют условия на истинность или ложность, и в зависимости от результата проверки выполняется то или иное действие. Различают следующие конструкции: проверка условий и циклы.
Проверка условий
Команда if представляет собой разновидность команды выбора, которая вычисляет значение выражения и в зависимости от того, будет ли полученный результат истинным или ложным, выполняет (или не выполняет) блок программного кода. Существует две общих формы команды if:
if (выражение) { блок }
и
if (выражение) { блок }
else { блок }
Если в результате проверки условия выполняется всего одна команда, фигурные скобки не обязательны.
elseif
Команда elseif добавляет в управляющую конструкцию if дополнительный уровень проверки и увеличивает количество условий, на основании которых принимается решение:
if (выражение) { блок }
elseif (выражение) { блок }
В РНР существует альтернативное представление команды elseif -- в виде двух отдельных слов else if. Оба варианта приводят к одинаковым результатам, а альтернативное представление поддерживается исключительно для удобства. Команда elseif особенно полезна в тех случаях, когда происходит последовательное уточнение проверяемых условий. Обратите внимание: условие elseif вычисляется лишь в том случае, если все предшествующие условия if и elseif оказались ложными.
Необходимо отметить, что проверку условий можно вкладывать друг в друга, т.е. в одном блоке операторов условия проверять другое и т.д. Также можно проверять несколько условий одновременно, просто связывая условия операторами AND (&&) и OR(||).
switch
Принцип работы конструкции switch отчасти напоминает if -- результат, полученный при вычислении выражения, проверяется по списку потенциальных совпадений.
Это особенно удобно при проверке нескольких значений, поскольку применение switch делает программу более наглядной и компактной. Общий формат команды switch:
switch (выражение) {
case (условие): блок
case (условие): блок
...
default: блок
}
Проверяемое условие указывается в круглых скобках после ключевого слова switch. Результат его вычисления последовательно сравнивается с условиями в секциях case. При обнаружении совпадения выполняется блок соответствующей секции. Если совпадение не будет обнаружено, выполняется блок необязательной секции default.
Циклы
Циклы - это операторы управления, тело которых периодически выполняется определенное количество раз. Циклы бывают с предусловием, с постусловием и с изменяемым параметром.
Рассмотрим циклы с предусловием. Это циклы, в которых условие выхода из них проверяется до выполнения самого тела цикла. Синтаксис данных циклов выглядит следующим образом:
while (условие) :
тело цикла
endwhile;
Также можно использовать фигурные скобки для ограничения тела цикла.
Циклы с постусловием. Это циклы, условие выхода из которых проверяется после выполнения тела цикла. Ниже приведен синтаксис данного типа циклов:
do
{ тело цикла}
while (условие);
Теперь давайте рассмотрим циклы с изменяемым параметром. Среди данных циклов выделяют две формы их написания: это for и foreach. Общая форма конструкции циклов for и foreach выглядит так:
for:
for (инициализация: условие; приращение) { блок }
foreach:
Существует две разновидности команды foreach, предназначенных для разных типов массивов:
foreach (массив as $элемент) { блок }
foreach (массив as $ключ => $элемент) { блок }
Первая разновидность применяется для численно-индексированных массивов, а вторая для ассоциативных массивов.
1.3 Передача параметров в РНР-приложение
Параметры могут передаваться в РНР-приложение из адресной строки и могут быть получены из формы, вызвавшей это приложение.
Рассмотрим пример иллюстрирующий передачу параметра по адресной строке. Пусть в строке адреса написано: http://localhost/programma1.php? name=”Дмитрий”, тогда для того чтобы получить доступ к параметру name записанному в адресной строке необходимо написать следующий код к РНР-приложении:
$name = $HTTP_GET_VARS[`name'];
Теперь если написать код echo `Имя = `.$name; , браузер отобразит строку «Имя = Дмитрий».
Так же можно получить доступ к любому полю формы, как к переменной по имени этого поля. Для этого можно использовать 3 способа доступа: короткий, средний и длинный.
Короткий стиль наиболее удобен в работе, для того, чтобы получить доступ к полю, нужно просто создать переменную с таким же именем, как и поле формы. Но этот стиль требует установление параметра register_globals = on в ini файле php.
Средний стиль не требует дополнительных настроек, впрочем как и длинный. Но средний стиль работает только с версией РНР 4.0 и выше. Его синтаксис: $имя_переменной = $ _POST(GET) [`имя_поля'];
Длинный стиль наиболее практичный, т.к. он работает на любой версии РНР: $имя_переменной = $HTTP_POST(GET)_VARS[`имя_поля'];
1.4 Работа с MySQL сервером и функции MySQL
Для корректной работы РНР и MySQL вначале требуется подключиться к серверу MySQL. Это выполняет функция, общий вид которой выглядит следующим образом:
resource mysql_connect ([string server [, string username [, string password [, bool new_link]]]]);
Затем нужно выбрать базу данных, с которой будет работать приложение:
bool mysql_select_db (string database_name [, resource link_identifier]);
После выбора базы данных строим SQL-запрос и выполняем его при помощи функции: resource mysql_query (string query [, resource link_identifier [, int result_mode]]).
Потом обрабатываем результаты запроса. Для этого я буду использовать 2 функции, одна из которых считает количество записей, возвращенных запросом, а вторая записывает возвращаемые данные в нумерованный массив:
int mysql_num_rows (resource result);
array mysql_fetch_array (resource result [, int result_type]);
II. Структурная схема ПО web-сервера
Посетитель Интернет-сайта может просматривать только коды HTML страниц, он не видит работы РНР и MySQL. Работу с РНР-приложениями и базами данных MySQL осуществляет сервер, на котором установлен РНР-интерпритатор и СУБД MySQL. После выполнения какого-либо РНР-кода, сервер возвращает посетителю сайта HTML страницу, сам РНР-код посетитель просмотреть не может.
Для того чтобы работать с базами данных MySQL, нужен РНР-интерпритатор. Без него сервер не сможет работать с базами данных MySQL.
Ниже показана схема взаимодействия посетителя с базами данных и РНР-приложениями.
Рисунок 1. Взаимодействие посетителя сайта с РНР-приложениями и базами данных MySQL.
2.1 Проектирование и создание базы данных
В будущую базу данных, которая будет называться “ db_06_ob” необходимо включить следующие данные об оборудовании и заказщиках.
Для того чтобы хранить выше перечисленные данные в базе данных необходимо создать следующие таблицы: “obor” - для хранения данных об оборудовании: идентификатор оборудования, идентификатор фирмы производителя, идентификатор типа оборудования, марка и цена; “zak” - для хранения данных о заказщиках: идентификатор заказщика, Ф.И.О., адрес, телефон и количество приобретаемого оборудования; “firma” - для хранения данных о фирме производителе: идентификатор фирмы, идентификатор страны и название фирмы; “strana” - для хранения данных о стране производителе: идентификатор страны и название страны; “tip” - для хранения данных о типе оборудования: идентификатор типа оборудования и тип оборудования.
Для создания базы данных необходимо на главной странице программы phpMySQL_Admin в поле «создать новую БД» ввести имя базы данных и нажать кнопку «Создать». Рисунок 2 иллюстрирует эту операцию.
Рисунок 2. Создание новой БД.
В открывшемся окне вводим название новой таблицы:
Рисунок 3. Создание таблицы “obor”.
Потом открывается окно, в котором создаем поля этой таблицы:
Рисунок 4. Создание полей таблицы “obor”.
Создание остальных таблиц и полей в них не имеет смысла рассматривать, т.к. они создаются абсолютно аналогичным образом.
В Приложении 1 приведен SQL-запрос, при помощи которого можно проделать всю вышеописанную работу по созданию таблиц и полей в них, просто создав базу данных и выполнив в ней этот запрос.
2.2Составление web-страниц, с которыми будет работать пользователь
Итак, мы имеем базу данных, с которой пользователь будет выполнять определенные действия посредством приложений РНР. Сначала создадим HTML страницы, с которых будут вызываться приложения РНР.
Главная страница (Index.html)
На этой странице будут помещены приветствие и четыре ссылки на определённом фоне. Именно с нее и будут вызываться приложения РНР. Здесь и далее будут использоваться фон и шрифты из файла style.css.
<h1>Учёт оборудования</h1>
<br>
<h3>Добро пожаловать на наш сайт!!! На этом сайте Вы можете просмотреть списки имеющегося в наличии оборудования и заказать его. Доставка по Белгороду БЕСПЛАТНО!!!</h3>
<br>
<h3><a href='looko.php?part=look'>Оборудование</a></h3>
<h3><a href='lookf.php'>Фирмы производители</a></h3>
<h3><a href='lookz.php?part=start'>Список Ваших заказов</a></h3>
<br>
<h4>С предложениями по улучшению сайта и с различными вопросами обращайтесь к <a href='sozd.html'>создателю сайта</a>.</h4>
В результате получилась страничка, которая показана на рисунке 5.
Рисунок 5. Интерфейс главной страницы сайта.
Страница «О создателе» (sozd.html)
Создадим страницу «О создателе». Пусть она будет называться sozd.html. На ней разместим данные о создателе данного сайта и ссылку для перехода на главную страничку.
<h1>О создателе</h1>
<br>
<h3>Создателем данного сайта является студент второго курса группы 140606 факультета Компьютерных Наук и Телекоммуникаций Бредихин Александр Владимирович.</h3>
<br>
<h3><a href = "index.html">Вернуться на главную</a></h3>
В результате получится страничка, которая показана на рисунке 6.
Рисунок 6. Страничка О создателе.
2.3 Написание РНР-кода, обрабатывающего БД
Просмотр записей в БД
Рассмотрим алгоритм вывода записей из таблиц базы данных в окно браузера. Сначала необходимо подключиться к СУБД MySQL и выбрать базу данных, затем выполнить запрос, который выберет требуемые записи из базы данных, и, наконец, отобразить результаты этого запроса в браузере.
Процедура вывода в окно браузера записей реализована в файлах lookf.php (фирмы-изготовители), looko.php (список оборудования) и lookz.php (заказы посетителей сайта).
Я рассмотрю отображение записей обо всех имеющихся в базе данных об оборудовании. Для того чтобы просмотреть весь список оборудований, посетителю сайта нужно просто щелкнуть по ссылке «Оборудование» и ему будет показан полный список записей об оборудовании, имеющегося в базе данных.
При этом загружается файл looko.php, в который передается по строке адреса параметры part=look.
Сначала подключаемся к СУБД MySQL и выбираем базу данных, с которой будем работать:
$connection = @mysql_connect("localhost", "root") or die("Could not connect to MySQL server!");
$bd_name = @mysql_select_db("db_06_ob") or die ("Ошибка открытия базы данных");
Затем запоминаем значение переменной part, полученной по строке адреса. Эта переменная используется для выбора фрагмента кода, который необходимо выполнить.
После подключения к базе данных и запоминания значения переменной part, проверяем значение этой переменной, а также строим и выполняем запрос, который возвращает требующиеся нам записи.
$sql = 'SELECT firma.firma, obor.marka, tip.tip, obor.price, obor.ido FROM obor, firma, tip WHERE firma.idf = obor.idf AND tip.idt = obor.idt LIMIT 0,100';
$result = mysql_query($sql);
Затем строим таблицу и, обрабатывая в цикле результаты выполнения запроса, заполняем ее.
$i=1;
echo '<table width = 100% border = 1><tr>
<td><p class = "header">№ п.п</p></td>
<td><p class = "header">Фирма</p></td>
<td><p class = "header">Марка</p></td>
<td><p class = "header">Тип</p></td>
<td><p class = "header">Цена</p></td></tr>';
while ($row=mysql_fetch_array($result))
{
echo '<tr>
<td><p>'.$i.'</p></td>
<td><p>'.$row[0].'</p></td>
<td><p>'.$row[1].'</p></td>
<td><p>'.$row[2].'</p></td>
<td><p>'.$row[3].'</p></td>
<td><p><a href = "add.php?part=start&ido='.$row[4].'">Заказать</a></p></td></tr>';
$i++;
};
echo '</table>';
В результате работы в окне браузера появится таблица, в которую будут внесены все имеющиеся записи в базе данных:
Рисунок 7. Таблица всего имеющегося оборудования.
Добавление записи в БД
Если посетитель щелкнет по ссылке «Заказать» из таблицы оборудования, которая показана на рисунке 7, запустится РНР-приложение add.php, в котором добавляется запись о новом заказе в базу данных. При этом передаются параметры part=start и идентификатор записи оборудования.
$part = $_GET['part'];
$ido = $_GET['ido'];
Сначала создадим новую переменную, которой присвоим значение текстовое значение кода на HTML, генерирующего нужную нам форму для ввода пользователем своих данных:
$form = "<form action = 'add.php' method = get>
<table width = 100%>
<tr><td width = 20%><p>Ф. И. О.</p></td>
<td><input type = 'text' size = 50 maxlength = 50 name = 'fio'></td></tr>
<tr><td><p>Адрес</p></td>
<td><input type = 'text' size = 50 maxlength = 50 name = 'adres'></td></tr>
<tr><td><p>Номер телефона</p></td>
<td><input type = 'text' size = 25 maxlength = 50 name = 'tel'></td></tr>
<tr><td><p>Количество</p></td>
<td><input type = 'text' size = 15 maxlength = 50 name = 'kol' value = '1'></td></tr>
<tr><td></td>
<td><br><input type = 'submit' value = 'Заказать'></td></tr>
<input type = hidden name = part value = 'go'>
<input type = hidden name = ido value = '$ido'>
</table>
</form>";
Рисунок 8. Форма для ввода данных посетителем.
Подключаемся к СУБД и выбираем базу данных:
$connection = @mysql_connect("localhost", "root") or die("Ошибка подключение к СУБД MySQL!");
$bd_name = @mysql_select_db("db_06_ob") or die ("Ошибка открытия базы данных");
Затем выводим в окно браузера форму ввода данных
if ($part=="start")
{
echo "<h2>Введите свои персональные данные</h2><br>$form";
}
После того, как пользователь заполнит форму и нажмет кнопку «Заказать», снова загрузится файл add.php, которому на этот раз переданы следующие параметры: part=go, идентификатор записи выбранного оборудования и данные, введенные пользователем.
В начале запоминаются переданные данные и проверяется заполнение формы, если форма заполнена не полностью - снова отображаем ее:
if ($part == "go")
{
$fio = $_GET['fio'];
$adres = $_GET['adres'];
$tel = $_GET['tel'];
$kol = $_GET['kol'];
$ido = $_GET['ido'];
if (($fio == "") or ($adres=="") or ($tel == ""))
{
echo '<h2>Вы не полностью заполнили форму</h2>'.$form;
}
Если пользователь заполнил все поля, то подключаемся к СУБД MySQL, выбираем базу данных и выполняем запрос, добавляющий запись в базу данных:
else
{
$sql = 'INSERT INTO `zak` ( `idz` , `ido` , `fio` , `adres` , `tel` , `kol` )
VALUES (\'\', \''.$ido.'\', \''.$fio.'\', \''.$adres.'\', \''.$tel.'\', \''.$kol.'\');';
$result = mysql_query($sql);
echo '<h2>Заказ добавлен</h2>';
echo '<h3>Мы благодарим Вас за то, что Вы выбрали нас.</h3>';
}
В результате добавления новой записи, в браузере будет отображено соответствующее сообщение:
Рисунок 9. Окно браузера в результате успешного добавления новой записи.
Удаление записей из БД
Если посетитель захочет просмотреть список своих заказов, то, после того как он, перейдя по ссылке «Список ваших заказов», введет свои данные в появившуюся форму, ему будет представлен список его заказов. Пример такого списка показан на рисунке 10.
Рисунок 10. Список заказов одного из клиентов.
В случае если пользователь решит удалить какой-либо свой заказ, ему просто потребуется щелкнуть по ссылке «Снять заказ» и эта запись будет удалена из базы данных.
Рисунок 11. Удаление записи
Рассмотрим более подробно процедуру удаления записи.
При переходе по ссылке загружается файл delete.php, которому передается идентификатор выбранной записи и название таблицы, из которой необходимо произвести удаление. Затем выполняется запрос, который удаляет запись из таблицы с этим идентификатором, и в конце выводится сообщение о том, что запись удалена.
Подключаемся к MySQL и выбираем базу данных:
$conn = @mysql_connect("localhost","root") or die ("Ошибка соединения с MySQL");
$db = @mysql_select_db("db_06_ob") or die ("Ошибка подключения к базе данных");
Запоминаем идентификатор записи, которую надо удалить, и название таблицы, из которой будет удалена запись.
$idz = $_GET['idz'];
$tab = $_GET['tab'];
Удаляем запись, идентификатор которой был передан по строке адреса:
$sql = 'DELETE FROM '.$tab.' WHERE idz = \''.$idz.'\' LIMIT 1';
$result = mysql_query($sql);
Заключение
В процессе выполнения данного курсового проекта я улучшил свои навыки по работе с РНР и MySQL, также я улучшил навыки и умения по работе с методической и справочной литературой.
В результате проделанной работы, я изучил основы работы MySQL баз данных и языка программирования для Интернет PHP и научился с ними работать. Так же я разработал Интернет-приложение «Учёт оборудования», используя СУБД MySQL и язык программирования для Интернет РНР, который будет служить пользовательским интерфейсом для работы с данной базой данных.
В ходе разработки я также улучшил свои знания и умения по работе с HTML страницами. Также я научился передавать различные параметры РНР-приложению через адресную строку.
Еще я убедился в том, что РНР и MySQL на самом деле очень мощные среды программирования и хранения данных, и они очень быстро работают, и занимаю очень мало места на жестком диске.
Список использованной литературы
1. «Разработка Web-приложений с помощью PHP и MySQL». Л.Веллинг и Л.Томсон
2. Справочники по РНР и MySQL. http://www.php.su/books/
3. Файлы справок по phpMySQL_Admin
4. Сайт http://www.php.ru
5. Сайт http://www.mysql.ru
Приложение 1. SQL запрос для построения базы данных
-- phpMyAdmin SQL Dump
-- version 2.6.1
-- http://www.phpmyadmin.net
-- Хост: localhost
-- Время создания: Дек 21 2007 г., 22:16
-- Версия сервера: 4.1.8
-- Версия PHP: 4.3.10
--
-- БД: `db_06_ob`
--
-- --------------------------------------------------------
--
-- Структура таблицы `firma`
--
CREATE TABLE `firma` (
`idf` int(11) NOT NULL auto_increment,
`ids` int(11) NOT NULL default '0',
`firma` text NOT NULL,
PRIMARY KEY (`idf`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=6 ;
--
-- Дамп данных таблицы `firma`
--
INSERT INTO `firma` VALUES (1, 1, 'Tumen');
INSERT INTO `firma` VALUES (2, 2, 'Samsung');
INSERT INTO `firma` VALUES (3, 3, 'Stinol');
INSERT INTO `firma` VALUES (4, 1, 'Podolsk');
INSERT INTO `firma` VALUES (5, 3, 'Grand');
-- --------------------------------------------------------
--
-- Структура таблицы `obor`
--
CREATE TABLE `obor` (
`ido` int(11) NOT NULL auto_increment,
`idf` int(11) NOT NULL default '0',
`idt` int(11) NOT NULL default '0',
`marka` text NOT NULL,
`price` int(11) NOT NULL default '0',
PRIMARY KEY (`ido`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=11 ;
--
-- Дамп данных таблицы `obor`
--
INSERT INTO `obor` VALUES (1, 1, 1, 'mexan.torgovie 6 kg', 2000);
INSERT INTO `obor` VALUES (2, 2, 1, 'elektr.torgovie 10 kg', 3500);
INSERT INTO `obor` VALUES (3, 2, 1, 'elektr.porcionnie', 2500);
INSERT INTO `obor` VALUES (4, 1, 1, 'mexan.fasovochnie', 1500);
INSERT INTO `obor` VALUES (5, 3, 2, 'xolodilnaia RGW', 7000);
INSERT INTO `obor` VALUES (6, 3, 2, 'prilavok', 8000);
INSERT INTO `obor` VALUES (7, 4, 3, 'Merkurij', 3000);
INSERT INTO `obor` VALUES (8, 4, 3, 'Minika-100F', 5000);
INSERT INTO `obor` VALUES (9, 5, 3, 'EKR-2102K', 8000);
INSERT INTO `obor` VALUES (10, 5, 3, 'ER 250 RF', 6000);
-- --------------------------------------------------------
--
-- Структура таблицы `strana`
--
CREATE TABLE `strana` (
`ids` int(11) NOT NULL auto_increment,
`strana` text NOT NULL,
PRIMARY KEY (`ids`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=4 ;
--
-- Дамп данных таблицы `strana`
--
INSERT INTO `strana` VALUES (1, 'Rossia');
INSERT INTO `strana` VALUES (2, 'China');
INSERT INTO `strana` VALUES (3, 'Germania');
-- --------------------------------------------------------
--
-- Структура таблицы `tip`
--
CREATE TABLE `tip` (
`idt` int(11) NOT NULL auto_increment,
`tip` text NOT NULL,
PRIMARY KEY (`idt`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=4 ;
--
-- Дамп данных таблицы `tip`
--
INSERT INTO `tip` VALUES (1, 'vesi');
INSERT INTO `tip` VALUES (2, 'vetrina');
INSERT INTO `tip` VALUES (3, 'kassovij apparat');
-- --------------------------------------------------------
--
-- Структура таблицы `zak`
--
CREATE TABLE `zak` (
`idz` int(11) NOT NULL auto_increment,
`ido` int(11) NOT NULL default '0',
`fio` text NOT NULL,
`adres` text NOT NULL,
`tel` int(11) NOT NULL default '0',
`kol` int(11) NOT NULL default '0',
PRIMARY KEY (`idz`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=5 ;
--
-- Дамп данных таблицы `zak`
--
INSERT INTO `zak` VALUES (1, 2, 'Ivanov Ivan Ivanovich', 'Gubkin Lenina 15 kv 17', 547854, 3);
INSERT INTO `zak` VALUES (2, 1, 'qwerty', 'qwerty', 123, 5);
Приложение 2. HTML-коды страниц сайта и таблица стилей
Каскадная таблица стилей «style.css»
body {background-image : url("image/fon.jpg")} H1 {text-align:center; font style:60pt; color:blue} H2 {text-align:center; font style:30pt; color:green} H3 {text-align:center; font style:20pt; color:red} H4 {text-align:center; font style:15pt} p {text-align:center; font-size:14pt; text-indent:15pt; font-family:Comic Sans MS; color:black} .header {text-align:center; font-size:14pt; font-weight:bold;}
Index.html
<html><head>
<title>Учёт оборудования</title>
<link rel="stylesheet" type="text/css" href="style.css"></head><body>
<h1>Учёт оборудования</h1><br>
<h3>Добро пожаловать на наш сайт!!! На этом сайте Вы можете просмотреть списки имеющегося в наличии оборудования и заказать его. Доставка по Белгороду БЕСПЛАТНО!!!</h3> <br>
<h3><a href='looko.php?part=look'>Оборудование</a></h3>
<h3><a href='lookf.php'>Фирмы производители</a></h3>
<h3><a href='lookz.php?part=start'>Список Ваших заказов</a></h3><br>
<h4>С предложениями по улучшению сайта и с различными вопросами обращайтесь к <a href='sozd.html'>создателю сайта</a>.</h4></body></html>
sozd.html
<html><head>
<title>Учёт оборудования</title>
<link rel="stylesheet" type="text/css" href="style.css"></head><body>
<h1>О создателе</h1><br>
<h3>Создателем данного сайта является студент второго курса группы 140606 факультета Компьютерных Наук и Телекоммуникаций Бредихин Александр Владимирович.</h3><br>
<h3><a href = "index.html">Вернуться на главную</a></h3></body></html>
Приложение 3. РНР-коды страниц сайта
add.php
<html><head>
<title>Учёт оборудования</title>
<link rel='stylesheet' type='text/css' href='style.css'>
</head><body>
<h1>Добавление нового заказа</h1>
<?php
$conn = @mysql_connect("localhost","root") or die ("Ошибка соединения с MySQL");
$db = @mysql_select_db("db_06_ob") or die ("Ошибка подключения к базе данных");
$part = $_GET['part'];
$ido = $_GET['ido'];
$form = "<form action = 'add.php' method = get>
<table width = 100%>
<tr><td width = 20%><p>Ф. И. О.</p></td>
<td><input type = 'text' size = 50 maxlength = 50 name = 'fio'></td></tr>
<tr><td><p>Адрес</p></td>
<td><input type = 'text' size = 50 maxlength = 50 name = 'adres'></td></tr>
<tr><td><p>Номер телефона</p></td>
<td><input type = 'text' size = 25 maxlength = 50 name = 'tel'></td></tr>
<tr><td><p>Количество</p></td>
<td><input type = 'text' size = 15 maxlength = 50 name = 'kol' value = '1'></td></tr>
<tr><td></td>
<td><br><input type = 'submit' value = 'Заказать'></td></tr>
<input type = hidden name = part value = 'go'>
<input type = hidden name = ido value = '$ido'>
</table></form>";
if ($part == "start")
{echo '<h2>Заполните форму:</h2><br>'.$form;}
if ($part == "go")
{$fio = $_GET['fio'];
$adres = $_GET['adres'];
$tel = $_GET['tel'];
$kol = $_GET['kol'];
$ido = $_GET['ido'];
if (($fio == "") or ($adres=="") or ($tel == ""))
{echo '<h2>Вы не полностью заполнили форму</h2>'.$form;}
else
{$sql = 'INSERT INTO `zak` ( `idz` , `ido` , `fio` , `adres` , `tel` , `kol` )
VALUES (\'\', \''.$ido.'\', \''.$fio.'\', \''.$adres.'\', \''.$tel.'\', \''.$kol.'\');';
$result = mysql_query($sql);
echo '<h2>Заказ добавлен</h2>';
echo '<h3>Мы благодарим Вас за то, что Вы выбрали нас.</h3>';}}?>
<br><h3><a href = "index.html">Вернуться на главную</a></h3>
</body></html>
delete.php
<html><head>
<title>Учёт оборудования</title>
<link rel = 'stylesheet' type = 'text/css' href = 'style.css'>
</head><body>
<h1>Удаление заказа</h1>
<?php
$conn = @mysql_connect("localhost","root") or die ("Ошибка соединения с MySQL");
$db = @mysql_select_db("db_06_ob") or die ("Ошибка подключения к базе данных");
$idz = $_GET['idz'];
$tab = $_GET['tab'];
$sql = 'DELETE FROM '.$tab.' WHERE idz = \''.$idz.'\' LIMIT 1';
$result = mysql_query($sql);
echo '<h2>Запись удалена</h2>';?>
<br><h3><a href = "index.html">Вернуться на главную</a></h3>
</body></html>
lookf.php
<html><head>
<title>Учёт оборудования</title>
<link rel = 'stylesheet' type = 'text/css' href = 'style.css'>
</head><body>
<h1>Фирмы производители</h1>
<?php
$conn = @mysql_connect("localhost","root") or die ("Ошибка соединения с MySQL");
$db = @mysql_select_db("db_06_ob") or die ("Ошибка подключения к базе данных");
$sql = 'SELECT firma.firma, strana.strana, firma.idf FROM firma, strana WHERE strana.ids = firma.ids LIMIT 0,100';
$result = mysql_query($sql);
$i = 1;
echo '<table width = 100% border = 1><tr>
<td><p class = "header">№ п.п</p></td>
<td><p class = "header">Фирма</p></td>
<td><p class = "header">Страна</p></td></tr>';
while ($row=mysql_fetch_array($result))
{echo '<tr>
<td><p>'.$i.'</p></td>
<td><p>'.$row[0].'</p></td>
<td><p>'.$row[1].'</p></td>
<td><p><a href = "looko.php?part=firm&idf='.$row[2].'">Товары</a></p></td></tr>';
$i++;};
echo '</table>';?>
<br><h3><a href = "index.html">Вернуться на главную</a></h3>
</body></html>
looko.php
<html><head>
<title>Учёт оборудования</title>
<link rel = "stylesheet" type = "text/css" href = "style.css">
</head><body>
<h1>Список оборудования</h1>
<?php
$conn = @mysql_connect("localhost","root") or die ("Ошибка соединения с MySQL");
$db = @mysql_select_db("db_06_ob") or die ("Ошибка подключения к базе данных");
$part = $_GET['part'];
if ($part=="look")
{$sql = 'SELECT firma.firma, obor.marka, tip.tip, obor.price, obor.ido FROM obor, firma, tip WHERE firma.idf = obor.idf AND tip.idt = obor.idt LIMIT 0,100';
$result = mysql_query($sql);
$i=1;
echo '<table width = 100% border = 1><tr>
<td><p class = "header">№ п.п</p></td>
<td><p class = "header">Фирма</p></td>
<td><p class = "header">Марка</p></td>
<td><p class = "header">Тип</p></td>
<td><p class = "header">Цена</p></td></tr>';
while ($row=mysql_fetch_array($result))
{echo '<tr>
<td><p>'.$i.'</p></td>
<td><p>'.$row[0].'</p></td>
<td><p>'.$row[1].'</p></td>
<td><p>'.$row[2].'</p></td>
<td><p>'.$row[3].'</p></td>
<td><p><a href = "add.php?part=start&ido='.$row[4].'">Заказать</a></p></td></tr>';
$i++;};
echo '</table>';}
if ($part=="firm")
{$idf = $_GET['idf'];
$sql = 'SELECT firma.firma, obor.marka, tip.tip, obor.price, obor.ido FROM obor, firma, tip WHERE firma.idf = obor.idf AND tip.idt = obor.idt AND obor.idf = '.$idf.' LIMIT 0,100';
$result = mysql_query($sql);
$i=1;
echo '<table width = 100% border = 1><tr>
<td><p class = "header">№ п.п</p></td>
<td><p class = "header">Фирма</p></td>
<td><p class = "header">Марка</p></td>
<td><p class = "header">Тип</p></td>
<td><p class = "header">Цена</p></td></tr>';
while ($row=mysql_fetch_array($result))
{echo '<tr>
<td><p>'.$i.'</p></td>
<td><p>'.$row[0].'</p></td>
<td><p>'.$row[1].'</p></td>
<td><p>'.$row[2].'</p></td>
<td><p>'.$row[3].'</p></td>
<td><p><a href = "add.php?part=start&ido='.$row[4].'">Заказать</a></p></td></tr>';
$i++;};
echo '</table>';}?>
<br><h3><a href = "index.html">Вернуться на главную</a></h3>
</body></html>
lookz.php
<html><head>
<title>Учёт оборудования</title>
<link rel = 'stylesheet' type = 'text/css' href = 'style.css'>
</head><body>
<h1>Просмотр заказов</h1>
<?php
$conn = @mysql_connect("localhost","root") or die ("Ошибка соединения с MySQL");
$db = @mysql_select_db("db_06_ob") or die ("Ошибка подключения к базе данных");
$part = $_GET['part'];
$form = "<form action = 'lookz.php' method = get>
<table width = 100%>
<tr><td width = 20%><p>Ф. И. О.</p></td>
<td><input type = 'text' size = 50 maxlength = 50 name = 'fio'></td></tr>
<tr><td><p>Адрес</p></td>
<td><input type = 'text' size = 50 maxlength = 50 name = 'adres'></td></tr>
<tr><td><p>Номер телефона</p></td>
<td><input type = 'text' size = 25 maxlength = 50 name = 'tel'></td></tr>
<tr><td></td>
<td><br><input type = 'submit' value = 'Показать'></td></tr>
<input type = hidden name = part value = 'go'>
</table>
</form>";
if ($part == "start")
{echo '<h2>Введите свои данные</h2>'.$form;}
if ($part == "go")
{$fio = $_GET['fio'];
$adres = $_GET['adres'];
$tel = $_GET['tel'];
if (($fio == "") or ($adres=="") or ($tel == ""))
{echo '<h2>Вы не полностью заполнили форму</h2>'.$form;}
else
{echo '<h2>Заказанные товары</h2><br>';
echo '<h3>Мы благодарим Вас за то, что Вы выбрали нас. Если Вы решили отказаться от заказа нажмите "Снять заказ"</h3>';
$sql = 'SELECT firma.firma, obor.marka, obor.price, zak.kol, zak.idz, obor.ido FROM zak, obor, firma WHERE firma.idf = obor.idf AND obor.ido = zak.ido AND zak.fio = \''.$fio.'\' AND zak.adres = \''.$adres.'\' AND zak.tel = \''.$tel.'\' LIMIT 0,100';
$result = mysql_query($sql);
$i = 1;
echo '<table width = 100% border = 1><tr>
<td><p class = "header">№ п.п</p></td>
<td><p class = "header">Фирма</p></td>
<td><p class = "header">Марка</p></td>
<td><p class = "header">Цена</p></td>
<td><p class = "header">Количество</p></td></tr>';
$s = 0;
while ($row=mysql_fetch_array($result))
{$sum = $row[2]*$row[3];
echo '<tr><td><p>'.$i.'</p></td>
<td><p>'.$row[0].'</p></td>
<td><p>'.$row[1].'</p></td>
<td><p>'.$row[2].'</p></td>
<td><p>'.$row[3].'</p></td>
<td><p><a href = "delete.php?idz='.$row[4].'&tab=zak">Снять заказ</a></p></td></tr>';
$i++;
$s = $s + $sum;};
echo '<tr><td colspan = 6><p>Общая цена = '.$s.'</p></td></tr></table><br>';}}?>
...Подобные документы
Основные технологии веб-программирования. Методы отправки данных на сервер с помощью HTML-формы. PHP - Препроцессор Гипертекста. Сохранение данных в базе данных MySQL. Клиент-Сервер и технология CGI. Примеры использования PHP совместно с MySQL.
лекция [2,9 M], добавлен 27.04.2009Характеристика и технические возможности СУБД MySQL. Трехуровневая структура MySQL. Требования к аппаратному обеспечению. Создание таблицы, триггеров, генераторов, хранимых процедур в MySQL. Разработка приложения для базы данных с помощью Borland Delphi.
курсовая работа [940,7 K], добавлен 20.12.2011Основы Web-программирования. Сервер баз данных MySQL. Язык сценариев PHP. Язык гипертекстовой разметки HTML. Назначение и цели разработки сайта. Форма входа и регистрации, обратная связь интернет–магазина. Требования к структуре сайта, описание контента.
курсовая работа [754,5 K], добавлен 02.06.2014Разработка приложения для работы с базой данных с использованием объектно-ориентированного и визуального программирования. Обзор языка элементов языка программирования Delphi. Проектирование базы данных автозаправки. Клиентская система приложения.
курсовая работа [2,3 M], добавлен 31.01.2016Отличительные особенности языков программирования PHP и CSS. Возможности компактного многопоточного сервера баз данных MySQL. Системный анализ предметной области, проектирование ее инфологической модели. Создание базы данных и web-страниц сайта магазина.
курсовая работа [1,0 M], добавлен 15.01.2013Обзор используемых веб-технологий: языка HTML и PHP, таблиц CSS, базы данных MySQL. Написание веб-приложения для продвижения и распространения информации об ученом, а так же создания диалога с людьми, не имеющими возможности связаться с ученым в живую.
курсовая работа [504,5 K], добавлен 02.06.2015Функции, позволяющие работать с базой данных MySQL средствами РНР. Соединение с сервером и его разрыв. Создание и выбор базы данных. Доступ к отдельному полю записи. Комплексное использование информационных функций. Запросы, отправляемые серверу MySQL.
лекция [3,5 M], добавлен 27.04.2009Создание процедурно-ориентированной и объектно-ориентированной реализации конкретного приложения и сравнительный анализ их вычислительной эффективности. Определение попадания точки внутрь фигуры. Возможности улучшения характеристик качества приложений.
курсовая работа [1,5 M], добавлен 04.12.2021Средства, используемые при разработке интернет-приложения. Язык обработки сценариев на стороне web-сервера. Система управления базами данных MySQL. Проектирование front-offiсe. Проектирование ER модели данных с использованием модели "сущность-связь".
курсовая работа [3,5 M], добавлен 15.01.2014История возникновения глобальной компьютерной сети интернет. Компьютеры-серверы и компьютеры-клиенты. Провайдеры интернет и их сети. Доступ в интернет из локальной сети. Взаимодействие между клиентом и сервером. Приложения-серверы и приложения-клиенты.
реферат [53,5 K], добавлен 13.10.2011Приемы и правила объектно-ориентированного программирования с использованием языка С++. Общие принципы разработки объектно-ориентированных программ. Основные конструкции языка С++. Разработка различных программ для Windows с использованием WIN32 API.
учебное пособие [1,6 M], добавлен 28.12.2013Разработка приложения, позволяющего вести полноценный учет оборудования, использующегося на предприятии: отслеживать движение оборудования по отелам предприятия, просматривать перечень оборудования и его цену, добавлять, удалять, редактировать записи.
курсовая работа [4,4 M], добавлен 01.07.2011Использование объектно-ориентированного программирования - хорошее решение при разработке крупных программных проектов. Объект и класс как основа объектно-ориентированного языка. Понятие объектно-ориентированных языков. Языки и программное окружение.
контрольная работа [60,1 K], добавлен 17.01.2011Анализ объектно-ориентированной технологии программирования на примере языка Java. Методы, инструменты разработки web-приложений. Применение их при создании Интернет-магазина для ООО "Компас". Разработка апплета для его страницы в виде стрелочных часов.
курсовая работа [2,7 M], добавлен 31.01.2014Анализ предметной области, функциональные части и этапы создания web-приложения, которое будет осуществлять интернет-торговлю по схеме "Предприятие – клиенты". Разработка вспомогательного web-приложения, необходимое для работы с базой данных основного.
курсовая работа [3,3 M], добавлен 05.06.2011Особенности исследования методик объектно-ориентированного проектирования программ с помощью языка UML по формализации, решению поставленной задачи, технологических приемов разработки объектно-ориентированных программ на языке Си++. Разработка программы.
контрольная работа [188,9 K], добавлен 22.10.2014Возможности автоматизации в сфере бытового обслуживания, в частности в фотоателье. Автоматизация работы с клиентами. Апробации возможностей языка SQL. Реализация информационной системы, создание программы средствами объектно-ориентированного языка Delphi.
курсовая работа [28,5 K], добавлен 30.11.2009Исследование возможностей всемирной компьютерной сети Интернет и используемых в ней технологий. Приемы эффективного поиска информации по теме "Учет амортизации основных средств" в сетевых ресурсах. Основы языка HTML и методы создания Web-документов.
курсовая работа [42,6 K], добавлен 09.11.2010C++ как компилируемый статически типизированный язык программирования общего назначения. История стандартов и необъектно-ориентированные возможности. Объектно-ориентированные особенности языка. Константные функции-члены, наследование и инкапсуляция.
курсовая работа [192,9 K], добавлен 27.07.2014Описание системы управления реляционными базами данных MySQL. Изучение факторов влияющих на пропускную способность в беспроводных сетях. Особенности применения языка Java Script. Методы тестирования web-приложений. Разработка пользовательского интерфейса.
дипломная работа [2,1 M], добавлен 24.06.2015