Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛАБ.РАБ.№4.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
195 Кб
Скачать
☆

2 Задание

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

  1. Магазин автозапчастей

  2. Мебельный магазин

  3. Магазин продуктовый

  4. Магазин игрушек

  5. Магазин бытовой техники

  6. Компьютерный магазин

  7. Аптека

  8. Магазин канцтоваров

2.1 Работа с файлами

Изменить форму заказа, созданную на предыдущей лабораторной работе так, чтобы каждый из поступающих заказов записывался в файл. Форму заказа для покупателей (orderform.php) книжного магазина можно представить следующим образом:

<html>

<head> <title>КНИЖНЫЙ МАГАЗИН</title></head>

<body>

<h1> КНИЖНЫЙ МАГАЗИН </h1><h2>Форма заказа</h2>

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

<table border=0><tr bgcolor=#cccccc>

<td width=150>Название</td> <td width=15>Количество</td></tr>

<tr> <td> Сказки Андерсона</td>

<td align=left><input type="text" name="scazki" size=3 maxlength=3></td></tr>

<tr> <td> Стихи А.С.Пушкина</td>

<td align=left><input type="text" name="ctixi" size=3 maxlength=3></td></tr>

<tr> <td> Журнал «Бизнес» </td>

<td align=left><input type="text" name="zurnal" size=3 maxlength=3></td></tr>

<tr> <td> Адрес доставки </td>

<td align=left><input type="text" name="address" size=50 maxlength=50></td></tr>

<tr><td colspan=2 align=center><input type=submit value="Отправить заказ"></td></tr>

</table>

<table border = 0 cellpadding = 3>

<tr> <td bgcolor = "#CCCCCC" align = center>Расстояние до </br> места доставки</td>

<td bgcolor = "#CCCCCC" align = center>Стоимость</td></tr>

<?

$distance = 50;

while ($distance <= 250 ){

echo "<tr>\n <td align = right>$distance</td>\n";

echo " <td align = right>". $distance / 10 ."</td>\n</tr>\n";

$distance += 50;

}?>

</table></form> </body></html>

Для обработки формы можно создать файл, аналогичный processorder.php:

<html><head>

<title>Книжный магазин – Результаты заказа</title>

</head><body>

<h1> КНИЖНЫЙ МАГАЗИН </h1>

<h2> РЕЗУЛЬТАТЫ ЗАКАЗА </h2>

<?

$scazki=$_REQUEST[scazki];

$ctixi =$_REQUEST[ctixi];

$zurnal =$_REQUEST[zurnal];

$address= $_REQUEST[address];

$totalqty = 0;

$totalqty += $scazki;

$totalqty += $ctixi;

$totalqty += $zurnal;

$totalamount = 0.00;

define("zena1", 100);

define("zena2", 10);

define("zena3", 4);

$date=date("H:i, jS F");

echo "<p>Результаты заказа";

echo $date;

echo "<br>";

echo "<p>В форме заказа было выбрано:";

echo "<br>";

if( $totalqty == 0 ) {

echo "Вы ничего не выбрали в заказе!<br>";

}

else {

if ( $scazki>0 )

echo $scazki." книг со сказками Андерсона<br>";

if ( $ctixi>0 )

echo $ctixi." Книг со стихами Пушкина<br>";

if ( $zurnal>0 )

echo $zurnal." журналов<br>";

}

$total = $scazki * zena1 + $ctixi * zena2 + $zurnal * zena3;

$total = number_format($total, 2);

echo "<br>\n";

echo "Всего заказано: ".$totalqty."<br>\n";

echo "На сумму: ".$total."<br>\n";

echo "<P>Адрес доставки ".$address."<br>";

$outputstring = $date."\t".$scazki." сказок Андерсона\t".$ctixi." Книг со стихами Пушкина\t"

.$zurnal." журналов\t".$total."\t". $address."\n";

// открываем файл для записи

@$fp = fopen("orders.txt", "a");

flock($fp, 2);

if (!$fp) {

echo "<p><strong> Заказ не может быть записан сейчас. "

."Пожалуйста, попробуйте еще раз позже.</strong></p></body></html>";

exit;

}

fwrite($fp, $outputstring);

flock($fp, 3);

fclose($fp);

echo "<p>Заказ записан.</p>";

?></body> </html>

Убедитесь, что на диске появился файл с именем orders.txt и в нем записаны все сделанные заказы. Создайте файл, позволяющий сотрудникам компании читать этот файл с заказами. Для книжного магазина этот файл (vieworders.php) может выглядеть следующим образом:

<html><head>

<title>Книжный магазин – Результаты заказа</title>

</head><body>

<h1> КНИЖНЫЙ МАГАЗИН </h1>

<h2> РЕЗУЛЬТАТЫ ЗАКАЗА </h2>

<?

$fp = fopen("orders.txt", "r");

flock($fp, 1);

if (!$fp) {

echo "<p><strong> Заказ не может быть прочитан. "

."Пожалуйста, попробуйте еще раз позже.</strong></p></body></html>";

exit;

}

while (!feof($fp)) {

$order= fgets($fp, 100);

echo $order."<br>";

}

flock($fp, 3);

fclose($fp);

?>

</body></html>

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]