Разработка сайта интернет-магазина

Автор работы: Пользователь скрыл имя, 30 Сентября 2013 в 10:37, курсовая работа

Краткое описание

Доставка заказа. После отправки заказа с покупателем связывается продавец и уточняет место и время, в которое следует доставить заказ. Доставка осуществляется либо собственной курьерской службой, либо компанией, предоставляющей услуги доставки, либо по почте - посылкой или бандеролью.

Содержание

Введение 3
1. Постановка задачи 4
2. База данных 5
3. Функционал сайта 6
3.1. Главная страница 6
3.2. Регистрация 9
3.3. Просмотр списка товаров 11
3.4. Просмотр товара 13
3.5. Отправка в корзину 14
3.6. Личный кабинет 15
3.7. Панель менеджера 16
3.7.1. Управление типами товаров 16
3.7.2. Управление товарами 18
3.7.3. Новые заказы 19
3.7.4. Выполненные заказы 21
3.7.5. Статистика 23
3.8. Панель администратора 26
4. Права доступа 27
Заключение 29
Список литературы 30
Приложение А 31
Приложение Б 37
Приложение В 42

Вложенные файлы: 1 файл

Курсовая работа ТИП.doc

— 2.04 Мб (Скачать файл)

 

В результате выполнения данной курсовой работы был разработан интернет-магазин  по продаже компьютерных комплектующих.

В качестве основы были взяты PHP и MYSQL, а так же JavaScript.

Были разработаны различные интерфейсы для различных групп пользователей:

- Для покупателей.

- Для менеджеров.

- Для администратора.

Функционал сайта достаточно полон  для выполнения возложенных на него действий, предусмотрены различные  фильтры для более удобного поиска товаров и управления сайтом.

Тестирование производилось в  браузерах Firefox 13.0, Firefox 3.6.6, Opera 11.6, а так же в Internet Explorer 8. Работоспособность в каждом из браузеров сохранялась полностью, различия во внешнем виде незначительны. Права доступа работают корректно.

Из ограничений, касающихся бесплатных хостингов, необходимо отметить, что  использование таблиц InnoDB поддерживается только с MYSQL версии 5, которую на данный момент широко используют лишь на платных хостингах.

 

Список литературы

 

1. Самоучитель PHP 5. - Издание 2-е – СПб.: Наука и техника, 2005. – 576 с.: ил.

2. Ржеуцкая С.Ю., Андрианов И.А.  Структуры и алгоритмы обработки  данных. Часть 1. Учеб. Пособие. –  Вологда: ВоГТУ, 2005. – 232с.

3.  Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. Базы данных. Учебник для вузов. – М.: Корона-принт, 2004.

4. http://www.denwer.ru/

5. http://ru.wikipedia.org

6. http://www.php.su/

7. http://htmlbook.ru/

8. http://html.manual.ru/

 

Приложение А

actions.php

 

<?

session_start();

 

//udalenie

if(isset($_POST['del']))

{

include "dbconnect.php";

$type = $_POST['arr'];

$tname = $_POST['tablename'];

$idname = $_POST['idname'];

$number = $_POST['number'];

$id_korzini = $_POST['id_korzini'];

$met = $_POST['met'];

if(!empty($type))

{

$r=1;

$query = "(" ;

foreach($type as $val) $query.= "$val,";

$query = substr($query, 0, strlen($query) - 1 ). ")" ;

if ($met==3)

{

$price="select cena,kolichestvo from tovari_korz where id_tovara_korz in ".$query;

$summ=0;

$price_rez=mysql_query($price);

while($row=mysql_fetch_row($price_rez))

$summ=$summ+$row[0]*$row[1];

mysql_query("update korzina set summa=summa-'".$summ."' where id_korzini='".$id_korzini."'");

}

if ($met==5)

{

$query2=mysql_query("select `izobrajenie` from izobrajenia where id_izobrajenia in ".$query);

while($row_iz = mysql_fetch_row ($query2))

unlink($row_iz[0]);

}

$query = "DELETE FROM $tname WHERE $idname IN ".$query;

if(!mysql_query($query))

{

?>

<script>

window.alert("Нельзя удалить: удаляемым типам соответствуют товары");

window.location.href='goodsdb_tip.php';

</script>

<?

}

}

else $r=0;

switch ($met)

{

case 0: {header('Location: goodsdb_tip.php?r='.$r); break;}

case 1: {header('Location: goodsdb_tovar.php?r='.$r.'&number='.$number); break;}

case 2: {header('Location: goodsdb_stat.php?r='.$r); break;}

case 3: {header('Location: cabinet.php?r='.$r); break;}

case 4: {header('Location: admin.php?r='.$r); break;}

case 5: {header('Location: about_tovar.php?id='.$number.'&r='.$r); break;}

}

}

 

//tip_tovara

if (isset($_POST['add_tip']))

{

if (trim($_POST['add_tip_text']))

{

$name=$_POST['add_tip_text'];

include "dbconnect.php";

$STR="insert into tip_tovara (nazvanie) values ('".$name."')";

mysql_query($STR);

header('Location: goodsdb_tip.php?a=1');

}

else header('Location: goodsdb_tip.php');

}

 

//tovar

if (isset($_POST['add_tovar']))

{

$number = $_POST['number'];

if ((trim($_POST['add_tovar_text']))

&& (trim($_POST['add_tovar_cena']))

&& (trim($_POST['add_tovar_sklad']))

&& (trim($_POST['add_tovar_izm'])))

{

$name=$_POST['add_tovar_text'];

$cena = $_POST['add_tovar_cena'];

$sklad = $_POST['add_tovar_sklad'];

$izm = $_POST['add_tovar_izm'];

include "dbconnect.php";

$STR="insert into tovari (nazvanie,id_tipa,cena,ed_izmerenia,kol_sklad) values ('".$name."','".$number."','".$cena."','".$izm."','".$sklad."')";

mysql_query($STR);

header('Location: goodsdb_tovar.php?a=1&number='.$number);

}

else header('Location: goodsdb_tovar.php?number='.$number);

}

 

//opisanie

if ((isset($_POST['op_accept'])) || (isset($_POST['op_upd'])))

{

$id_op=$_POST['hiddp'];

if ((trim($_POST['garantia']))

&& (trim($_POST['proizvoditel']))

&& (trim($_POST['tech_dannie'])))

{

$garantia=$_POST['garantia'];

$proizvoditel=$_POST['proizvoditel'];

$tech_dannie=mysql_escape_string($_POST['tech_dannie']);

include "dbconnect.php";

if (isset($_POST['op_accept']))

$STR="insert into opisanie (id_tovara,tech_dannie,garantia,proizvoditel) values ('".$id_op."','".$tech_dannie."','".$garantia."','".$proizvoditel."')";

if (isset($_POST['op_upd']))

$STR="update opisanie set tech_dannie='".$tech_dannie."', garantia='".$garantia."', proizvoditel='".$proizvoditel."' where id_tovara='".$id_op."'";

mysql_query($STR);

header('Location: about_tovar.php?a=1&id='.$id_op);

}

else header('Location: about_tovar.php?id='.$id_op);

}

 

//korzina

if (isset($_GET['basket']))

{

$count=$_GET['count'];

$id=$_GET['id'];

$goodsid=$_GET['goodsid'];

$id_klienta=$_SESSION['id_klienta'];

if ($count>0)

{

include "dbconnect.php";

$testing=mysql_query("select * from korzina where id_klienta='".$id_klienta."' and status='nabor'");

if (count(mysql_fetch_row($testing))==1)

{

$data_pok=date("d.m.y H:i");

mysql_query("insert into korzina (id_klienta,data_pok,summa,status) values ('".$id_klienta."','".$data_pok."','0','nabor')");

}

$query_k=mysql_query("select id_korzini from korzina where id_klienta='".$id_klienta."' and status='nabor'");

while($row_k=mysql_fetch_row($query_k))

$id_korzini=$row_k[0];

$query_t=mysql_query("select nazvanie,cena,ed_izmerenia,kol_sklad from tovari where id_tovara='".$goodsid."'");

while($row_t=mysql_fetch_row($query_t))

{

$nazvanie=$row_t[0];

$cena=$row_t[1];

$ed_izmerenia=$row_t[2];

$kol_sklad=$row_t[3];

}

if ($kol_sklad>=$count)

{

mysql_query("insert into tovari_korz (id_korzini,nazvanie,cena,ed_izmerenia,kolichestvo,id_tovara) values ('".$id_korzini."','".$nazvanie."','".$cena."','".$ed_izmerenia."','".$count."','".$goodsid."')");

$itog_cena=$cena*$count;

mysql_query("update korzina set summa=summa+'".$itog_cena."' where id_korzini='".$id_korzini."'");

header('Location: index.php?id='.$id.'&goodsid='.$goodsid.'&res=1');

}

else header('Location: index.php?id='.$id.'&goodsid='.$goodsid.'&res=3');

}

else header('Location: index.php?id='.$id.'&goodsid='.$goodsid.'&res=2');

}

 

//korzina otpravit manageram

if (isset($_POST['accept']))

{

include "dbconnect.php";

$id_korzini=$_POST['id_korzini'];

$testing=mysql_query("select * from tovari_korz where id_korzini='".$id_korzini."'");

if (count(mysql_fetch_row($testing))>1)

{

$data_pok=date("d.m.y H:i");

mysql_query("update korzina set status='podtverjden', data_pok='".$data_pok."' where id_korzini='".$id_korzini."'");

header('Location: cabinet.php?r=2');

}

}

 

//otmenit zakaz

if (isset($_POST['del_zak']))

{

include "dbconnect.php";

$id_korzini=$_POST['id_korzini'];

$delete=mysql_query("delete from korzina where id_korzini='".$id_korzini."'");

header('Location: orders_new.php?r=1');

}

 

//otpravit so sklada

if (isset($_POST['send_zak']))

{

include "dbconnect.php";

$id_korzini=$_POST['id_korzini'];

$data_otpr=date("d.m.y H:i");

mysql_query("update korzina set status='otpravlen', data_pok='".$data_otpr."' where id_korzini='".$id_korzini."'");

$tovar_minus=mysql_query("select kolichestvo,id_tovara from tovari_korz where id_korzini='".$id_korzini."'");

while($row_tovar=mysql_fetch_row($tovar_minus))

mysql_query("update tovari set kol_sklad=kol_sklad-'".$row_tovar[0]."' where id_tovara='".$row_tovar[1]."'");

header('Location: orders_new.php?r=2');

}

 

//registracia

if (isset($_GET['register']))

{

include "dbconnect.php";

$login=$_GET['login'];

$parol=$_GET['password'];

$iniciali_klienta=$_GET['fio'];

$adres=$_GET['target_address'];

$email=$_GET['email'];

$telephone=$_GET['phone_number'];

$query="select count(`id_klienta`) from `klient` where `login`='".$login."'";

$test=mysql_query($query);

while($row=mysql_fetch_row($test))

$c=$row[0];

if ($c==0)

{

mysql_query("insert into klient (`iniciali_klienta`,`login`,`parol`,`telephone`,`email`,`adres`) values ('".$iniciali_klienta."','".$login."','".$parol."','".$telephone."','".$email."','".$adres."')");

header('Location: index.php?registered=1');

}

else header('Location: register.php?loginerr=1');

}

 

//kartinki

if (isset($_POST['upload']))

{

$id=$_POST['hideid'];

if ($_FILES['userfile']['tmp_name']!="")

{

include "dbconnect.php";

$uploaddir = 'images/';

$apend=date('YmdHis').rand(100,1000).'.jpg';

$uploadfile = "$uploaddir$apend";

if($_FILES['userfile']['size']!=0 and $_FILES['userfile']['size']<=1024000)

{

if($_FILES['userfile']['type']=="image/jpeg")

{

if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile))

{

mysql_query("insert into izobrajenia (id_tovara,izobrajenie) values ('".$id."','".$uploadfile."')");

header("Location: about_tovar.php?upl=1&id=".$id);

}

else

header("Location: about_tovar.php?uplerr=3&id=".$id);

}

else

header("Location: about_tovar.php?uplerr=1&id=".$id);

}

else

header("Location: about_tovar.php?uplerr=2&id=".$id);

}

else

header("Location: about_tovar.php?id=".$id);

}

 

 

//dobavit kolichestvo tovara

if (isset($_POST['updcnt']))

{

include "dbconnect.php";

$updname=$_POST['updname'];

$updnumber=$_POST['updnumber'];

mysql_query("update tovari set kol_sklad=".$updnumber." where id_tovara='".$updname."'");

header('Location: goodsdb_stat.php?r=2');

}

 

//prava managera i uzera

if (isset($_POST['addprivileges']))

{

include "dbconnect.php";

$userid=$_POST['userid'];

$numpage=$_POST['numpage'];

$sort=$_POST['sort'];

if ($_POST['priv']=="Отменить")

mysql_query("update klient set metka='' where id_klienta=".$userid."");

if ($_POST['priv']=="Добавить")

mysql_query("update klient set metka='manager' where id_klienta=".$userid."");

header('Location: admin.php?numpage='.$numpage.'&sort='.$sort.'');

}

?>

 

 

Приложение Б

scripts.php

 

<?

session_start();

function ShowTable($tname,$idname,$met,$number,$method,$numpage,$rcount)

{

include "dbconnect.php";

switch ($met)

{

case 0: {$query = "select * from $tname order by ".$method." limit ".($numpage*10).",10" ; break;}

case 1: {$query = "select * from $tname where id_tipa=$number order by ".$method." limit ".($numpage*10).",10"; break;}

case 2: {$query = "select * from $tname where kol_sklad=0 order by ".$method." limit ".($numpage*10).",10"; break;}

case 4: {$query = "select * from $tname where metka!='administrator' order by ".$method." limit ".($numpage*10).",10"; break;}

Информация о работе Разработка сайта интернет-магазина