Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ТП лаба 3

.docx
Скачиваний:
25
Добавлен:
15.03.2015
Размер:
385.55 Кб
Скачать

Санкт Петербургский государственный университет телекоммуникаций имени профессора М.А. Бонч-Бруевича.

Факультет Информационных Систем и Технологий.

Отчет по лабораторной работе №3.

Тема: разработка фрагмента сайта интернет – магазина.

Дисциплина: Технологии программирования

Выполнил: студент 2 курса, группы ИСТ-03

Першин А.И.

г. Санкт Петербург

2012 г.

Задание

  1. Создать страницу Web-сайта с формами ввода данных:

    1. Фамилия заказчика

    2. Телефон заказчика

    3. Список из 10-ти предлагаемых товаров с указанием цены каждого изделия.

  2. Создать счетчик количества посещений страницы сайта.

  3. Используя функции PHP низкоуровневого доступа к файлам (fopen, fwrite или fputs), записать в файл данные о произведенных заказах.

  4. Создать Web-страницу для оформления запроса на получение информации о суммарной выручке по всем оформленным заказам, используя при этом функции fopen, fread или fgets.

Содержание файла index.php

<?php include_once('head.php'); ?>

<div id="ShopInfo">

<?php

$filename = 'LoadCounter.txt';

$handle = fopen($filename, 'r');

$current = fread($handle, filesize($filename));

fclose($handle);

$current++;

$handle = fopen($filename, 'w');

fwrite($handle, $current);

fclose($handle);

echo 'Просмотров: ' . $current;

?>

<!--- =Log in -->

<form id="AdminForm" action="admin.php" method="GET">

<h5>Форма учета магазина</h5>

<label for="Login">Логин: </label>

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

<br>

<label for="Password">Пароль: </label>

<input type="password" name="Password" id="Password">

<br>

<button>Войти</button>

</form>

<!--- /Log in -->

</div>

<div id="container">

<font class="help">Для оформления заказа, просто заполните форму ниже.</font>

<!-- =Shop -->

<form id="MarketForm" action="Form.php" method="POST">

<h5>Форма заказа</h5>

<label for="FName">Фамилия: </label>

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

<br>

<label for="Number">Телефон: </label>

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

<br>

<span class='help'>Щелкните по товару, чтобы добавить его в корзину</span>

<br>

<?php

for($i=0; $i<10; $i++){

echo "\t\t<div class='Merch'>

<img src='img/{$i}.png'>

<textarea readonly='1' name='M{$i}' id='M{$i}'>0</textarea>

<span>Не возьму</span>

</div>\n";

}

echo "<br><button type='reset'>Передумал</button>";

?>

<button>Отправить</button>

</form>

<!-- /Shop -->

</div>

<?php include_once('footer.php'); ?>

Содержание файла head.php

<!DOCTYPE html>

<html>

<head>

<meta http-equiv="content-type" content="text/html; charset=ANSI">

<meta name="copyright" content="Pershin A.I. IST-03">

<title>Лабораторная работа 3</title>

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

<script type="text/javascript" src="js/jquery-1.7.1.js"></script>

<script type="text/javascript" src="js/script.js"></script>

</head>

<body>

<h1>Разработка фрагмента сайта Интернет-магазина</h1>

Содержание файла script.js

$(document).ready(function(){

$('div.Merch textarea').text('0');

$('div.Merch span').click(function(){

$(this).siblings('textarea').text('0');

});

$('div.Merch img').click(function(){

var merch = $(this).siblings('textarea').text();

merch++;

$(this).siblings('textarea').text(merch);

});

});

Содержание файла admin.php

<?php include_once('head.php'); ?>

<?php

if($_GET['Login'] == "root" and $_GET['Password'] == "1111"){

$filename = 'Summary.txt';

$handle = fopen($filename, 'r');

$current = fread($handle, filesize($filename));

fclose($handle);

echo "<span id='ShopSummery'>В нашем магазине приобрели товара на <strong>" . $current . "$</strong></span>";

}else{

echo "<h5 style='color: red'>Ошибка в логине или пароле</h5>";

}

?>

<?php include_once('footer.php'); ?>

Содержание файла form.php

<?php include_once('head.php'); ?>

<?php

$Items = array(

5 => 'мышка', 12 => 'клавиатура', 500 => 'HDD', 6 => 'CD', 8 => 'DVD',

10 => 'Blu-ray', 50 => 'сканер', 40 => 'принтер', 600 => 'ext-drive', 1 => 'флопик'

);

/*

=Buyer

*/

$FName = ucfirst(trim(chop($_POST['FName'])));

$Number = trim(chop($_POST['Number']));

$Goods = "Приобрел: ";

$Price = 0;

$i = 0;

foreach($Items as $key => $item){

if($_POST["M{$i}"] != '0') {

$Goods = $Goods . $item . " " . $_POST["M{$i}"] . " штук "; $Price += $key * $_POST["M{$i}"];

};

$i++;

}

$filename = 'Merch.html';

$current = file_get_contents($filename);

$current = $current . date('j.m.Y') . " Клиент - " . $FName . "</span> Номер: " . $Number . " " . $Goods . " Выручка: " . $Price . "$<br>";

$handle = fopen($filename, 'w');

fwrite($handle, $current);

fclose($handle);

/*

=Summary

*/

$filename = 'Summary.txt';

$handle = fopen($filename, 'r');

$Price += fread($handle, filesize($filename));

fclose($handle);

$handle = fopen($filename, 'w');

fwrite($handle, $Price);

fclose($handle);

?>

<h5><?php echo $FName; ?>, Ваш заказ успешно принят.</h5>

<?php include_once('footer.php'); ?>

Содержание файла footer.php

<div id="Paper">

<div id="skotch"></div>

<p>Лабораторная работа №3<br>

Тема: разработка фрагмента сайта интернет – магазина.<br>

Дисциплина: "Технологии программирования"</p>

<hr>

<p>Выполнил студент учебной группы ИСТ-03<br>

Першин Аркадий Игоревич</p>

<hr>

<p>г. Санкт Петербург<br>

2012 г.</p>

</div>

</body>

</html>

Результат главной страницы

Результат работы формы учета магазина

Результат работы формы заказа

Результатом работы формы заказа является вывод сообщения об успешно выполненной покупки. Однако на стороне сервера файл-обработчик заполняет два файла:

  • Merch.html – файл хранения данных о совершенной покупки, в виде:

[текущая дата] “Клиент - ” [фамилия заказчика] “Номер: ” [телефонный номер заказчика] “Приобрел” [приобретенный товар] “Выручка: ” [сумма денег за приобретенный товар]

  • Summery.txt – файл хранения суммарной выручки магазина в целочисленном виде.