Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МУ к лаб раб web-программирование.doc
Скачиваний:
450
Добавлен:
07.06.2015
Размер:
4.4 Mб
Скачать

Insert.Php

<?php

$name=$_REQUEST["name_c"];

$price=$_REQUEST["price_c"];

$firma=$_REQUEST["firma_c"];

$db=mysql_connect(localhost,'root','');

mysql_select_db("Coffee");

if ($but=insert_c)

{$sql1="INSERT INTO name_coffee VALUES('','$name','$price','$firma')";

mysql_query($sql1);

}

print "Кофе $name $firma добавлено";

?>

poisk.php

$a=$_REQUEST["price_c"];

{print " кофе по цене < $a грн: <br>"; }

$conn=mysql_connect(localhost,'root','');

mysql_select_db("Coffee");

$sql="SELECT * FROM info_coffee where price=".$a;

$result=mysql_query($sql);

for ($i=1; $i<=mysql_num_rows($result);$i++)

{$row=mysql_fetch_object($result);

print "Кофе $row->name $row->firma стоит $row->price грн. <br>";

}

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

<form action=poisk.php method=post>

введите цену <input type=text name=price_c> <br>

<input type=submit name=ok value=search>

</form>

Примечание. БД и таблицы хранятся на сервере по следующему пути:

Webserver\usr\local\mysql5\data\coffee

Задание к работе:

  1. Ознакомиться с теоретическим материалом.

  2. Создать БД согласно варианту (предметную область взять из табл. 2)

  3. Разработать структуру таблиц

  4. Создать скрипт на php для просмотра записей таблиц, поиска по критерию, добавления информации, удаления записей и изменения информации

  5. Оформить отчет согласно требованиям.

Таблица 2 – Индивидуальное задание

Каталог напитков

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

Каталог медицинских препаратов

Каталог аудио дисков

Каталог продуктов питания

Каталог автомобилей

Каталог бытовых приборов

Каталог осветительных приборов

Каталог оборудования на складе

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

Отчет должен содержать:

  1. Название и цель работы.

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

  3. Экранные формы браузера с загруженными страницами.

  4. Выводы о проделанной работе.

Вопросы для подготовки к защите работы:

  1. Взаимодействия PHP и СУБД MySql

  2. Как происходит установка соединения с базой данных

  3. Функциям отправки запросов и обработке ответов

  4. Обработка ошибок при подключении к БД

Лабораторная работа №4 Разработка сайта с использованием mvc фреймворка

Цель работы: получить практические разработки модулей приложений с помощью Фреймворка CodeIgniter.

Теоретические сведения

MVC Фреймворк

Model-view-controller (Паттерн модель-представление-контроллер) используется очень давно. Еще в 1979 году его описал Тригве Реенскауг в своей работе «Разработка приложений на Smalltalk-80: как использовать Модель-представление-контроллер». С тех пор паттерн зарекомендовал себя как очень удачная архитектура программного обеспечения.

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

На данный момент паттерн MVC реализован в том или ином виде для большинства языков программирования используемых для разработки web-приложений. Самое большое количество реализаций имеет PHP, но и для Java, Perl, Python, Ruby есть свои варианты.

«M» или модель – часть MVC-системы, которая отвечает за запросы к базе данных (или другому внешнему источнику) и предоставление информации контроллеру. Можно было бы загружать необходимую модель в зависимости от запроса, но возможно немного стереть границы между моделью и контроллером, т.е. контроллер работает с БД непосредственно через библиотеку взаимодействия с БД, нежели чем через отдельную модель.

Codeigniter

CodeIgniter — открытый фреймворк написанный на PHP для разработки полноценных веб-систем и приложений. Разработан компанией EllisLab, а также Риком Эллисом (Rick Ellis) и Полом Бурдиком (Paul Burdick).

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

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

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

  • используется модель MVC (Модель-Отображение-Контроллер), хорошо зарекомендовавшая себя при разработке приложений самой разной направленности;

  • поддерживается множество баз данных (MySQL, PostgreSQL, MSSQL, SQLite, Oracle);

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

  • CodeIgniter очень быстр в работе. Его считают эталоном скорости генерации страниц.

Пример разработка с помощью CodeIgniter простого приложения вывода строки приветствия

Создание контроллера welcome.php:

<?php

class Welcome extends Controller {

function Welcome()

{

parent::Controller();

$this->load->model('User_model', 'users'); // указание подключаемой модели

}

function index()

{

$this->load->view(welcome_message'); // указание файла отображения приветствия codeigniter

}

function say_hello($id=1) {

$data['name'] = $this->users->name($id);

$this->load->view('hello', $data); // указание файла отображения views и данных

}

}

Создание модели user_model.php:

<?php

class User_model extends Model {

function name($key) {

$names = $this->names();

return $names[$key];

}

function names() {

return array(1 => "Admin", 2 => "User"); // в зависимости от переданного параметра будет

} вывод имени соответствующего пользователя

}

?>

Создание view hello.php:

<html>

<head>

<title>Welcome to CodeIgniter</title> </head>

<body>

<h1><font color=red> Hello, <?=$name?></h1>

</body>

</html>

Запуск приложения:

Задание к работе:

  1. Ознакомиться с теоретическим материалом.

  2. Создать приложение согласно варианту (использовать элементы из таблицы 1 первого задания)

  3. Разработать структуру приложения

  4. Создать скрипт на php для ввода и выдачи результата, используя MVC

  5. Оформить отчет согласно требованиям.

Отчет должен содержать:

  1. Название и цель работы.

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

  3. Экранные формы браузера с загруженными страницами.

  4. Выводы о проделанной работе.

Вопросы для подготовки к защите работы:

  1. Особенности реализация взаимодействия модулей согласно концепции MVC

  2. Структура фреймфорка

  3. Особенности существующих фреймворков для php.