Материал: Разработка сайта

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Подгрузка шаблонов выполняется в нужном файле (к примеру sboard.php) оператором «include», которому в качестве параметров передаются переменные имена файлов.

Картинки для категорий и подкатегорий хранятся в виде отдельных файлов в графическом формате.

Так же в сайте испоьлзовано динамическое изменение заголовка страницы, что бы поисковые системы могли лучше распознать, где какой раздел, и так же сайт имеет удобные для людей URL. Тоесть вместо #"869286.files/image002.gif">

Рис. 5.2.1 кнопка для добавления объявления

Рис. 5.2.2 пуская форма для добавления объявления

Рис. 5.2.3 заполненная форма для добавления объявления

Рис. 5.2.4 страница, отображённая после того как пользователь добавит объявление

Структура таблицы «board», базы данных данного сайта, хранит в себе объявления и имеет следующую структуру:

- уникальный номер объявления_category - уникальный номер категории, берётся из таблицы board_cat- автор объявления- заголовок- email адрес посетителя, который оставил объявление- адресс посетителя- телефон- сообщение, указанное в объявлении- количество просмотров- тип_mess - поле, которое показывает устарело объявление или нет_top - поле, при определённом значении, которого, объявление будет в топе - выводится не смотря на дату добавления.- дата добавления_delete - дата удаления_edit - дата последнего редактирования

А структура таблицы «board_cat» слудующая:

- уникальный номер категории_category - здесь указывается 0 если категория является корневой или id из board_cat что бы указать что это подкатегория категории с уникальным номером id_cat - название категории- описание категории- картинка для категории

5.3 Раздел отображаемый при выборе какой-либо категории

Рис. 5.3.1. список категорий на сайте

Рис. 5.3.2. список объявлений в категории

5.4 Раздел «Администрирование»

Для того, что бы попасть в раздел администирования, нужно набраться в адресе #"869286.files/image008.gif">

Появится форма ввода пароля:

Рис. 5.4.1 форма ввода пароля

Если пароль был введён правильно, то будет открыта система администрирования, на главной странице, которой, будут отображены новые объявления, которые ещё не были просмотрены администратором:

Рис. 5.4.2 новые объявления

Рис. 5.4.3 редактирование объявления в системе администрирования

Рис. 5.4.5 список категорий в системе администрирования

Рис. 5.4.6 список объявлений в категории, отображаемый в системе администрирования

Рис. 5.4.7 изменение категории в системе администрирования

Рис. 5.4.8 личные данные администратора в системе администрирования

Рис. 5.4.9 изменение личных данных администратора в системе администрирования

Заключение

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

Созданная система является сложным программным комплексом, построенным по технологии «клиент-сервер». Информация формируется динамически. Графическая оболочка сайта должна подстраиваться под различные разрешения экрана.

Разработка среды велась «с нуля», и на этапе проектирования было учтено множество пожеланий со стороны заказчика. Это позволило создать проект, максимально удовлетворяющий потребностям заказчика.

В результате проделанной работы был получен Web-сайт, полностью пригодный для размещения в глобальной сети Internet.

Также был произведен обзор существующих Web-технологий, разработан дизайн сайта, реализована разметка Web-страниц и написаны сценарии для их загрузки. Целью работы ставилась разработка Web-сайта, с функциями доски объявлений. По итогам работы можно сделать вывод, что с поставленной задачей удалось успешно справиться.

 


Список использованных источников

 

1    Macromedia Dreamweaver MX [Электронный ресурс]: учебное пособие / Дронов В. - Электрон. дан. и прогр. - [Россия], [2004-2007]. - Режим доступа: http://www.vgi.volsu.ru

2       JavaScript [Electronic resource]: Einfuehrung, Programmierung und Referenz / Stefan Koch. - Electronic data and program. - [German]: dpunkt.verlag, 1996-1997. - Mode of access: http://rummelplatz.uni-mannheim.de/~skoch/js/

3       Википедия [Электронный ресурс]: свободная энциклопедия. - Электрон. дан. - [Россия], [1999-2000]. - Режим доступа: http://ru.wikipedia.org

4       MySQL. Одобрено лучшими российскими программистами [Электронный ресурс]: Справочное руководство по MySQL. - Электрон. дан. - [Россия], [2001-2002]. - Режим доступа: http://www.mysql.ru

Приложение А

Фрагменты кода, отвечающие за дизайн web-сайта

require_once («mysql.php»);_once («func.php»);_once («admin/config.php»);

?>

<html>

<head>

<title>

<? if (isset($title)) echo $title; else echo «test1.ru»;?>

</title>

<meta http-equiv= «Content-Language» content= «ru»>

<meta http-equiv= «Content-Type» content= «text/html; charset=windows-1251»>

<meta content= «index, follow, all» name= «robots»>

<meta content= «5 days» name= «revisit-after»>

<meta name= «keywords» content="<? if (isset($keywords)) echo $keywords; else echo «test1.ru»;?>">

<meta name= «description» content="<? if (isset($description)) echo $description; else echo «test1.ru»;?>">

<LINK REL=STYLESHEET TYPE= «text/css» HREF="<? echo «http:// »; echo $_SERVER ['HTTP_HOST']; echo»/»;?>images/style.css»>

</head>

<body onLoad= «loadclock()»>

<table width= «100%» align= «center» border= «0» cellpadding= «0» cellspacing= «10» bgcolor= "#FFFFFF»>

<tr>

<td width= «75%» valign= «top»>

<?(date(H) >= «5» && date(H) < «12») $now = «Доброе утро»;(date(H) >= «12» && date(H) < «19») $now = «Добрый день»;(date(H) >= «19» && date(H) <= «23») $now = «Добрый вечер»;(date(H) >= «0» && date(H) < «5») $now = «Доброй ночи»;

(isset ($_ENV['USERNAME']) &&! empty ($_ENV['USERNAME'])) echo «<font size=\» - 1\»>

?><font size=» - 1»>

<SCRIPT language=JavaScript>

makeArray() {args = makeArray.arguments;(var i = 0; i < args.length; i++) {[i] = args[i];

}.length = args.length;

}

fixDate(date) {base = new Date(0);skew = base.getTime();(skew > 0).setTime (date.getTime() - skew);

}

getString(date) {months = new makeArray («Января», «Февраля», «Марта»,

«Апреля», «Мая», «Июня»,

«Июля», «Августа», «Сентября»,

«Октября», «Ноября», «Декабря»);

date.getDate()+ " " + months [date.getMonth()];

}

cur = new Date();(cur);str = getString(cur);.write(str);

</SCRIPT>, </font>

<script>

<!-show2 () {Digital=new Date()hours=Digital.getHours()minutes=Digital.getMinutes()seconds=Digital.getSeconds()dn=»»(hours>24) {=»»=hours-24

}(hours==0)=24(minutes<=9)= «0»+minutes(seconds<=9)= «0»+secondsctime="<font face='Verdana' size='-2'> «+hours+»: «+minutes+»: «+seconds+» «+dn+»</font>»(! document.all).write(ctime).innerHTML=ctime

}loadclock() {(document.all)(«show2 ()», 1000)

}(! document.all)()

// ->

</script>

<span id=tick2></span>

</td>

<td width= «25%» align= «right» valign= «top»>&nbsp; <a href= «Добавить в избранное» onClick=«window.external.addFavorite ('<? echo «http:// ».$_SERVER ['HTTP_HOST'];?>/', 'test1.ru'); return false;» title= «Добавить в избранное»>В избранное</a>&nbsp; <a href=»<? echo «http:// ».$_SERVER ['HTTP_HOST'];?>/» title= «На главную»>На главную</a></td>

</tr>

</table>

<table width= «100%» align= «center» bgcolor= "#F4F4F4» border= «0» cellpadding= «0» cellspacing= «10»>

<tr>

<td>

<center><strong>

</td>

<td><div align= «right»>

<form method=post action= «http:// <? echo $_SERVER ['HTTP_HOST']?>/search/»>

<span>

<input name=search_in value=title type=hidden>

<input type=submit value=Искать>

</form>

</div></td>

</tr>

</table>

<TABLE WIDTH= «100%» align= «center» BORDER= «0»>

<TR>

<TD valign= «top»><table width= «100%» border= «0» align= «center» cellpadding= «0» cellspacing= «20»>

<tr>

<td width= «25%» valign= «top» style= «padding-bottom:5px; padding-left:5px; padding-right:5px»>

</td>

</tr>

</table>

</td>

</tr>

</table>

</TD>

</TR>

</TABLE>

<table width= «100%»>

<TR>

<TD valign= «top»>

<div align= «center»><? echo «<span>

</TR>

</TABLE>

</BODY>

</HTML>

Файл sboard

<?(«mysql.php»);(«func.php»);(«admin/config.php»);

$time_now = time ();

$a = mysql_query («SELECT * from board WHERE».$time_now.» > ((time_delete * 86400) + time) ORDER by id»);

$b = mysql_num_rows($a);($qwe = mysql_fetch_array($a))

{

$data_udaleniya_iz_bazy = $qwe ['time_delete'] * 86400 + $qwe['time'];(time () > $data_udaleniya_iz_bazy)

{

$del_sus = mysql_query («DELETE from board LIMIT 1»);

}{}

}(! empty ($_GET['id_cat']) && intval ($_GET['id_cat']) > 0 &&! empty ($_GET['id_mess']) && intval ($_GET['id_mess']) > 0)

{

$hits = mysql_query («UPDATE board SET hits = hits + 1 WHERE id=».$_GET ['id_mess']. "»);

$query = mysql_query («SELECT A.id as board_id, A.*, B.*board as A, board_cat as BA.id =». $_GET ['id_mess'].»       B.id =». $_GET ['id_cat']. "»);(mysql_num_rows ($query) > 0)

{($message = mysql_fetch_array($query))

{

$message['title'] = str_replace («'», «&quot», $message['title']);

$message['title'] = str_replace («`», «&quot», $message['title']);

$title = $message['title'];

$keywords = $message['title'];

$description = $message ['name_cat'].» | Заголовок:».$message['title'];(«design/itop.inc.php»);

echo «<table border=1 bordercolor=#EEEEEE bgcolor=#FAFAFA cellpadding=5 cellspacing=2 align=center><tr valign=middle title='».$message['title']. «'><td align=center>»;»<table border=0><tr>»;«<td align=center><font>

$time_actual = (($message['time'] + $message ['time_delete'] * 86400) - time()) / 86400 + 1;«</tr></table><br>»;

«<strong>

»<table border=0><tr>»;

$date = date («d.m.y», $message['time']);«<font>

»<table border=0 bgcolor=#FFFFFF cellpadding=15 cellspacing=12 ><tr>»;«<td title='».$message['text']. «'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font>

}

}

else

{

$title = «Доска объявлений»;

$keywords = «Доска объявлений.»;

$description = «Доска объявлений»;

include («design/itop.inc.php»); // выводим шапчёнку

echo «<strong><center>Нет запрашиваемых данных.</center></strong><br><br><br>»;«<a href=\ «http:// ». $_SERVER ['HTTP_HOST']. "/board/add/\» title=\ «Добавить объявление\"><center>Добавить объявление</a> |»;

echo «<a href=\ «http:// ». $_SERVER ['HTTP_HOST']. "/board/\» title=\ «На главную страницу Доски объявлений\">На главную страницу Доски объявлений</a></center><br>»;

exit();

}

}(! empty ($_GET['id_cat']) && intval ($_GET['id_cat']) > 0 && empty ($_GET['id_mess']))

{

$query = mysql_query («SELECT *board as A, board_cat as BA.id_category = B.idA.id_category =». intval ($_GET['id_cat']). "»);

(mysql_num_rows ($query) > 0)

{

$echo_cat = mysql_fetch_array($query);

$num = mysql_num_rows ($query);

@$start = page_list ($_GET['page'], $num, $COUNT_SHOW_BOARD);

$query = mysql_query («SELECT A.id as board_id, A.*, B.* FROM board as A, board_cat as B WHERE A.id_category = B.id AND A.id_category =». $_GET ['id_cat'].» AND A.checkbox_top > 0 ORDER by time DESC LIMIT $start, $COUNT_SHOW_BOARD»);

$title = «Доска объявлений | Категория».$echo_cat ['name_cat'];

$keywords = «Доска объявлений. Категория».$echo_cat ['name_cat'].» |».$echo_cat['description'];

$description = «Доска объявлений | Категория».$echo_cat['description'];(«design/itop.inc.php»);«<a href=\ «http:// ». $_SERVER ['HTTP_HOST']. "/board/add/\» title=\ «Добавить объявление\"><center>Добавить объявление</a> |»;

echo «<a href=\ «http:// ». $_SERVER ['HTTP_HOST']. "/board/\» title=\ «Вернуться на главную страницу Доски объявлений\">Вернуться</a> на главную страницу Доски объявлений</center><br>»;

echo»<div align=center>»;«Категория: <a href = \ «http:// ». $_SERVER ['HTTP_HOST']. "/board/».$echo_cat ['id_category']. "/\">».$echo_cat ['name_cat']. «</a> | Всего объявлений в данной категории: [».$num.»]»;

echo «</div><br><br>»;

($top_board = mysql_fetch_array($query))

{»<table style=\ «BORDER-BOTTOM: #FF9900 2px dashed; border-top: #FF9900 2px dashed\» bordercolor=#990000 bgcolor=#FFFEF4 align=center border=0 cellpadding=\ «0\» cellspacing=\ «10\»>

<tr title='».$top_board['title']. "'>

<td><img src=\» http:// ». $_SERVER ['HTTP_HOST']. "/images/att.gif\» alt=\ «Статус: Прикрепленное объявление\»></td>

<td>»;($top_board['type'] == «P») {$type = «&nbsp; Предложение&nbsp;»;} else $type = «&nbsp; Спрос&nbsp;»;«<font size=2 color=#888888>Тип объявления:».$type.» &nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;»;

$date = date («d.m.y», $top_board['time']);«Дата добавления:».$date.» &nbsp;&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;»;«Просмотров: [».$top_board['hits'].»]</font><br>»;«<font size=4 style=\» font-family: Tahoma\» >

<br />

<strong><a href =\» http:// ». $_SERVER ['HTTP_HOST']. "/board/category/».$top_board ['id_category']. "/message/».$top_board ['board_id']. "/\» title='».$top_board['title']. «'><center>».$top_board['title'].» </center></a></strong>

</font>

<br>»;«<strong>Автор:».$top_board['autor']. «</strong>»;»</td></tr></table><br />»;

}

$query = mysql_query («SELECT A.id as board_id, A.*, B.* FROM board as A, board_cat as B WHERE A.id_category = B.id AND A.id_category =». $_GET ['id_cat'].» AND A.checkbox_top = 0 ORDER by time DESC LIMIT $start, $COUNT_SHOW_BOARD»);                          ($board = mysql_fetch_array($query))

{»<table style=\ «BORDER-BOTTOM: #E9E9E9 2px dashed; border-top: #E9E9E9 2px dashed\» bordercolor=#EEEEEE bgcolor=#F8F8F8 align=center cellpadding=\ «0\» cellspacing=\ «10\»>

<tr title='».$board['title']. "'>

<td><img src=\» http:// ». $_SERVER ['HTTP_HOST']. "/images/other_message.gif\» height=50 alt=\ «Статус: Обычное объявление\»></td>

Источник: https://www.bibliofond.ru/view.aspx?id=869286