Автор работы: Пользователь скрыл имя, 06 Марта 2011 в 20:26, курсовая работа
Цель данной курсовой работы — разработка интернет-магазина , который упрощает покупку необходимых товаров.
В качестве средств для реализации поставленной задачи были выбраны: веб-сервер Apache, sql-сервер MySQL и языки программирования Perl и JavaScript.
Введение……………….………………………………………………………...
1 Web-приложение «Сайт системы научных конференций»....…………........
1.1 Анализ требований………………………………………….…................
1.1.1 Анализ предметной области…………………...................................
1.1.2 Анализ функциональных требований………....................................
1.1.3 Анализ требований к интерфейсу пользователя...............................
1.1.4 Выбор технологий и инструментальных программных средств....
1.2. Проектирование……………………………….........................................
1.2.1 Проектирование структуры данных……………………………......
1.2.2 Проектирование структуры программного обеспечения и алгоритмов.........................................................................................
1.2.3 Проектирование пользовательского интерфейса..............................
1.3 Реализация……………………………………...........................................
1.3.1 Программная реализация...................................................................
1.3.2 Кодирование…………….....................................................................
1.4 Тестирование…………………………………...........................................
Заключение…………………………………………………………..…………..
Список использованных источников………………………………..…………
Приложение А. Код приложения ……………………….......……….………...
Приложение Б. Результаты тестирования……………..………………………
<br>
<h2>Заполните поля для поиска</h2>
<form method="POST" action="">
<br>
<div
align="center"><b>Фирма</b></
<br>
<div align="center"><select name="firm" size="1" style="width:30%">
$sel
<option value="0" selected></option>
</select></div>
<br>
<div
align="center"><b>Цена</b></
<br>
<div align="center"> от <input name="otcen" value="" type="text" style="width:25%"> ---- до <input name="docen" value="" type="text" style="width:25%"></div>
<br>
<div align="center"><b>Дата поступления</b>(Вводить в формате гггг-мм-дд)</div>
<br>
<div align="center"> от <input name="otdata" value="" type="text" style="width:25%"> ---- до <input name="dodata" value="" type="text" style="width:25%"></div>
<br>
<div align="center"><input name="action" type="submit" value="Подобрать"></div>
</form>
LINES
}
##########################
sub clocksfind {
my $firm = param('firm');
my $otcen = param('otcen');
my $docen = param('docen');
my $otdata = param('otdata');
my
$dodata = param('dodata');
$firm = $dbh->quote( $firm );
$otcen = $dbh->quote( $otcen );
$docen = $dbh->quote( $docen );
$otdata = $dbh->quote( $otdata );
$dodata
= $dbh->quote( $dodata );
my $sth = $dbh->prepare("SELECT Model.*,Firma.Name_Firma as Nfirma,Pol.name as Pname,Kreplen.name as Kname,Mechanism.name as Mname
FROM Model inner join Firma on Model.id_Firma = Firma.id
inner join Pol on Model.id_Pol = Pol.id
inner join Kreplen on Model.id_Kreplen = Kreplen.id
inner join Mechanism on Model.id_Mechanism = Mechanism.id where ((Model.id_Firma=$firm)or($
and ((Model.Price between $otcen and $docen) or ($otcen=0 and $docen=0))
and ((Model.Data_post
between $otdata and $dodata) or ($otdata=0 and $dodata=0))");
$HTML_SITE{title} = "Выбор часов по параметрам";
$sth->execute();
$sumstr=0;
while (my $ref = $sth->fetchrow_hashref()) {
if
(!($ref->{Name_Model})){$ref->
my
$hd; if ($ref->{ehide}){$hd="_h";}
$HTML_SITE{content}.=<<
<table border=1 cellpadding="3" cellspacing="3" align="center">
<td rowspan=8 align="center">
<img
src="/admin/Photos/$ref->{
</td>
<td
width=100 valign="center" align="center"><b><font
color="#666666">Фирма</font></
</td>
<td
width=150 valign="center" align="center"><b><font
color="blue">$ref->{Nfirma}</
</td>
<tr>
<td
width=100 valign="center" align="center"><b><font
color="#666666">Модель</font><
</td>
<td
width=150 valign="center" align="center"><b><font
color="blue">$ref->{Name_
</td>
<tr>
<td width=100 valign="center" align="center"><b><font color="#666666">Пол</font></b>
</td>
<td
width=150 valign="center" align="center"><b><font
color="blue">$ref->{Pname}</
</td>
<tr>
<td
width=100 valign="center" align="center"><b><font
color="#666666">Ремешок</font>
</td>
<td
width=150 valign="center" align="center"><b><font
color="blue">$ref->{Kname}</
</td>
<tr>
<td
width=100 valign="center" align="center"><b><font
color="#666666">Механизм</
</td>
<td
width=150 valign="center" align="center"><b><font
color="blue">$ref->{Mname}</
</td>
<tr>
<td
width=100 valign="center" align="center"><b><font
color="#666666">Дата поставки<
</td>
<td
width=150 valign="center" align="center"><b><font
color="blue">$ref->{Data_post}
</td>
<tr>
<td
width=100 valign="center" align="center"><b><font
color="#666666">Стоимость</
</td>
<td
width=150 valign="center" align="center"><b><font
color="red">$ref->{Price}</
</td>
<tr>
<td width=100 valign="center" align="center"><b><font color="#666666">Добавить в корзину</font></b>
</td>
<td
width=150 valign="center" align="center"><a
href="javascript:addbasket($
</td>
</table>
<table align="center">
<td height="10">
</td>
</table>
LINES
$sumstr=$sumstr+1;
if
($sumstr==0){$HTML_SITE{
$sth->finish();
}
1;
Basket.pl
1;
if ($action eq 'Оформить_заказ') {&zakaz;}
elsif
($action eq 'Удалить') {&del;}
#viv
if (($action eq 'Оформить_заказ') and ($kvit)){&kvitanc;}
else{&viev;}
sub
viev {
$q = CGI->new();
my
$cookies = $q->cookie('basket');
@ms = split(/:/,$cookies);
$sum=0;
foreach
$ls (@ms){
my
($ss1,$ss2) = split(/-/,$ls);
if (($idd1 eq $ss1) and ($idd2 eq $ss2)){ #условие чтобы не выводить уже удалённую модель. Нужно, т.к. куки не успевают записаться
}else{
my (@db) = $dbh->selectrow_array("
SELECT
Firma.Name_Firma as Nfirma,Model.Name_Model,Model.
FROM Model inner join Firma on Model.id_Firma = Firma.id WHERE Model.id='$ss1'
");
$text.=<<LINES;
<tr><td
align="center"><p>$db[0]</p></
LINES
$sum=$sum+$db[2];
}
$HTML_SITE{title}
= "Корзина";
$HTML_SITE{content}.=<<
<table cellpadding=5 cellspacing=5 width=50% align="center">
<tr>
<td
align="center"><p><b>Фирма</b>
<td
align="center"><b>Модель</b></
<td
align="center"><b>Стоимость</
<td></td>
</tr>
$text
</table>
<HR WIDTH="50%" SIZE="3" color="red">
<table cellpadding=5 cellspacing=5 width=50% align="center">
<td align="center">
Общая сумма заказа равна $sum рублей
</td>
</table>
<form style="display: none" method="POST" action="" id="deletes" name="deletes"><input type="hidden" name="ids" value=""><input type="hidden" name="action" value="Удалить"></form>
<br>
<h2>Пожалуйста заполните форму</h2>
<font
color="red">*</font><small>
<form method="POST" action="">
<br>
<div align="center"><font color="red">*</font>ФИО</div>
<div align="center"><input name="fio" value="" type="text" style="width:50%"></div>
<br>
<div
align="center"><font color="red">*</font>Телефон</
<div align="center"><input name="tel" value="" type="text" style="width:50%"></div>
<br>
<div
align="center"><font color="red">*</font>Email</
<div align="center"><input name="email" value="" type="text" style="width:50%"></div>
<br>
<div align="center"><input name="action" type="submit" value="Оформить_заказ"></div>
</form>
LINES
}
#########################
sub kvitanc {
require "kvit.pm";
my
$kvit = &kvit($idins);
$HTML_SITE{content}="$
}
#########################
sub del {
my $ids = param("ids");
$q = CGI->new();
my $cookies = $q->cookie('basket');
@ms = split(/:/,$cookies);
($idd1, $idd2) = split(/-/,$ids);
foreach $ls (@ms){
my
($ss1,$ss2) = split(/-/,$ls);
if
(($ss1 eq $idd1) and ($ss2 eq $idd2)){
}else{
if ($newcook){
$newcook = "$newcook:$ss1-$ss2";
}else{
$newcook = "$ss1-$ss2";
}
}
}
#Устанавливаем новые куки средствам Perl
$c = new CGI::Cookie(-name=>'basket',
-value=>"$newcook",
);
$c
=~ s/%([a-fA-F0-9][a-fA-F0-9])/
$c =~ s/<!--(.|\n)*-->//g;
print
"Set-Cookie: $c\n";
}
#########################
sub zakaz {
my $fio = param('fio');
my $tel = param('tel');
my $email = param('email');
Информация о работе Web-приложение «Сайт системы научных конференций»