Файл: Разработка Web-представительства строительной компании.pdf
Добавлен: 03.07.2023
Просмотров: 1016
Скачиваний: 12
СОДЕРЖАНИЕ
1. Цели и концепция Web-ресурса
1.2. Обоснование необходимости создания Web-ресурса
1.3. Описание свойств Web-ресурса, требуемых для решения выбранной задачи
1.4. Характеристика целевой аудитории
2. Параметры и внешний вид Web-ресурса
2.1. Обоснование выбора имени и названия Web-ресурса
2.2. Обоснование лингвистического обеспечения Web-ресурса
2.3. Обоснование выбора графического режима Web-ресурса
2.4. Обоснование принятых решений по цветовой схеме Web-ресурса
2.5. Обоснование принятых решений по размеру и виду шрифта
2.6. Обоснование принятых решений по формированию фирменного стиля
3. Обоснование выбора инструментария для создания Web-ресурса
3.1. Обоснование технологии получения и размещения информационного наполнения Web-ресурса
3.3. Обоснование выбора программного обеспечения для создания Web-ресурса
3.3.1. Обоснование выбора программных продуктов для создания графики
3.3.2. Обоснование выбора программных продуктов для создания анимации
3.3.3. Обоснование выбора СУБД
3.3.4. Обоснование выбора программных продуктов для создания программного кода
3.4. Обоснование выбора способа размещения Web-ресурса в Интернет
4. Структура и содержание сайта
4.1.Разделы сайта и система навигации
5. Разработка рекламной кампании по продвижению Web-ресурса в Интернет
5.1. Формирование массива ключевых слов для поиска Web-ресурса в поисковых системах
Список литературы
- Алексунин В.А., Родигина В.В. Электронная коммерция и маркетинг в Интернет.- Учебное пособие. - М.: «Дашков и К0», 2005.
- Быков В.А. Электронный бизнес и безопасность /.-М.:Радио и связь,2000.-200 с.:ил.
- Завалеев В. Курс ЦИТ «Internet-технологии в проектах с пластиковыми карточками», Центр Информационных Технологий ,2007.
- Информатика: Учебник для вузов (Гриф МО РФ) / Острейковский В.А., М: Высшая школа, 2010.- 511 с.
- Информатика: Учебник для вузов / Козырев А.А.- СПб: издательство Михайлова В.А., 2010.- 511 с.
- Кавторева Я. Интернет магазин. Организация, налогообложение, учет. – Фактор, 2009 – 119 с.
- Киселев Ю.Н. Электронная коммерция: практическое руководство.- СПб: ООО «ДиаСофтЮП», 2010.
- Маршавин Р.А., Ляпунов С.И. Глобальный бизнес и информационные технологии, Учебное пособие. М.:2009 г.
- Орлов Л. Как создать электронный магазин в Интернет, 2_е изд., М.: Бук.пресс, 2009. - 384 с.
- Эффективная работа с СУБД А. Рубен, А. Горев, С. Макшарипов СПб.: Питер, 2009. – 822 с.
- Алексеев А. Будущее электронной коммерции //Инфобизнес,2009. № 48
- Ашманов И. С. Национальные особенности поисковых систем // Журнал «Компьютер в школе», № 01, 2009 год // Издательство «Открытые системы»
- Ездаков А. Российские электронные витрины // Сети. 2008. № 9
- Малевский П., Чернышев А., Дубина А. Системы электронной коммерции для операторов связи // ПаРаДис. 2009. № 1
- Создание и поддержка Интернет-магазина на базе WWWB Сервера Журнал «Главбух», 2009. №4
- Ивашов А. Электронные магазины: от сельпо до супермаркета - http:// archives. maillist.ru/ 72200/ 181108. html
- Малышева Н. Виртуальные покупки Электронная версия еженедельника «Аргументы и факты» - http://www.aif.ru
- Методика создания Интернет-магазина - http://www.delna.ru/ page/ shop. html
- Сайт Fodex - Этапы разработки Интернет-магазина - http://www.fodex.ru
Приложение
DB_Data.php – параметры для соединения с базой данных
<?php
#############################################################################
define("DB_HOST", "localhost" ); // адрес сервера баз данных #
define("DB_USER", "zao175" ); // имя пользователя #
define("DB_PWD", "zao175" ); // пароль к бд #
define("DB_NAME", "control_clients_BUILD"); // имя базы данных #
define("DB_MODE", 2); // 0 - в ручную откр/закр, #
#############################################################################
?>
control_clients_BUILD.sql – SQL-код генерации базы данных control_clients_build.
-- phpMyAdmin SQL Dump
-- version 3.5.2.2
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Generation Time: Mar 19, 2013 at 10:37 AM
-- Server version: 5.1.63-0ubuntu0.10.04.1
-- PHP Version: 5.3.2-1ubuntu4.18
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
CREATE TABLE IF NOT EXISTS `Clients` (
`Id_Client` char(10) NOT NULL,
`Client_Nm` char(60) NOT NULL,
`Client_Adr` char(60) NOT NULL,
`Client_Con` char(80) DEFAULT NULL,
`Client_Ph` char(14) DEFAULT NULL,
`Client_Em` char(40) DEFAULT NULL,
`Client_Com` char(80) DEFAULT NULL,
PRIMARY KEY (`Id_Client`)
CREATE TABLE IF NOT EXISTS `Departments` (
`Id_Dep` char(10) NOT NULL,
`Dep_Nm` char(60) NOT NULL,
`Dep_Loc` char(60) DEFAULT NULL,
`Dep_Ph` char(14) DEFAULT NULL,
`Dep_Chief` char(60) DEFAULT NULL,
`Dep_Com` char(80) NOT NULL,
PRIMARY KEY (`Id_Dep`)
CREATE TABLE IF NOT EXISTS `Orders` (
`Id_Ord` char(10) NOT NULL,
`Id_Client` char(10) NOT NULL,
`Ord_Date` date NOT NULL,
`Id_Serv` char(10) NOT NULL,
`Ord_Qu` int(10) NOT NULL,
`Ord_Pr` int(10) NOT NULL,
`Id_Dep` char(10) DEFAULT NULL,
`Ord_Com` char(80) DEFAULT NULL,
PRIMARY KEY (`Id_Ord`)
CREATE TABLE IF NOT EXISTS `Payments` (
`Id_Pay` char(10) NOT NULL,
`Pay_Date` date NOT NULL,
`Id_Client` char(10) NOT NULL,
`Id_Ord` char(10) NOT NULL,
`Pay_Amt` int(10) NOT NULL,
PRIMARY KEY (`Id_Pay`)
CREATE TABLE IF NOT EXISTS `Services` (
`Id_Serv` char(10) NOT NULL,
`Serv_Nm` char(60) NOT NULL,
`Serv_Detail` char(80) NOT NULL,
`Serv_1` char(4) DEFAULT NULL,
`Serv_Cost` int(8) DEFAULT NULL,
`Serv_Com` char(80) DEFAULT NULL,
PRIMARY KEY (`Id_Serv`)
CREATE TABLE IF NOT EXISTS `Staff` (
`Id_Staff` char(10) NOT NULL,
`Staff_Full` char(80) NOT NULL,
`Staff_Date` date NOT NULL,
`Staff_INN` char(10) NOT NULL,
`Staff_Adr` char(60) NOT NULL,
`Staff_Ph` char(14) NOT NULL,
`Staff_Em` char(40) NOT NULL,
`Staff_Com` char(80) NOT NULL,
`Id_Dep` char(10) NOT NULL,
PRIMARY KEY (`Id_Staff`)
DB_Class.php - класс для работы с базой данных
<?php
class MySQL_DB
{
private $dbObj = null;
private $result = null;
/* Для конструктора - адрес, имя пользователя, пароль, имя базы данных, порт,
/*а также кодировку для соединения.
/* По умолчанию используется utf8 */
public function __construct($host, $user, $password, $base, $port = null, $charset = 'utf8')
{
$this->dbObj = new mysqli($host, $user, $password, $base, $port);
$this->dbObj->set_charset($charset);
}
/*основная и единственная функция, которая выполняет запрос и возвращает результат его работы*/
public function query($query)
{
if(!$this->dbObj)
return false;
/*очищаем предыдущий результат*/
if(is_object($this->result))
$this->result->free();
/*выполняем запрос*/
$this->result = $this->dbObj->query($query);
/*если есть ошибки - выводим их*/
if($this->dbObj->errno)
#!!!# die("mysqli error #".$this->dbObj->errno.": ".$this->dbObj->error);
return $this->dbObj->error;
/*если в результате выполнения запроса (например SELECT...) получены данные - возвращаем их.
/* данные всегда возвращаются в массиве, даже если запрос возвращает одну запись.*/
if(is_object($this->result))
{
while($row = $this->result->fetch_assoc())
$data[] = $row;
return $data;
}
/*если результат отрицательный - возвращаем false */
else if($this->result == FALSE)
return false;
/*если запрос (например UPDATE или INSERT) затронул какие-либо строки - возвращаем их количество*/
else return $this->dbObj->affected_rows;
}
}
include 'DB_data.php';
$dbObj = new MySQL_DB(DB_HOST, DB_USER, DB_PWD, DB_NAME);
include 'DB_Coding.php';
?>
Any_Table_HTML_New.php – класс представления таблиц базы данных
<?php
class Any_Table
{
var $table_array = array();
var $headers = array();
var $domns;
function Any_Table ($headers)
{
$this->headers = $headers;
$this->domns = count($headers);
}
function AddRow ($row)
{
If ( count ($row) != $this->domns)
return false;
array_push( $this -> table_array, $row);
return true;
}
function SetArr($Arr)
{
$this -> table_array = $Arr;
return true;
}
function AddRowAssArr ($row_ass)
{
$row=array();
foreach ($this -> headers as $header)
{ if (!isset($row_ass[$header]))
$row_ass[$header]='';
$row[ ]=$row_ass[$header];
}
array_push( $this -> table_array, $row);
return true;
}
function PrintArr ()
{
print "<pre>";
foreach ($this -> headers as $header)
print ' '."<strong>$header</strong>".' ';
print "\n";
foreach ($this -> table_array as $string)
{
foreach ($string as $elemnt)
print ' '."$elemnt".' ';
print "\n";
}
}
}
class HTML_Table extends Any_Table
{
var $bgcolor;
var $bgcolor_h = "#FFCCCC";
var $bgcolor_c = "#FFFFFF";
var $cellpadding = "1";
function HTML_Table($headers, $bg='#ffffff' )
{
Any_Table::Any_Table($headers);
$this->bgcolor=$bg;
}
function SetCellPadding ($padding)
{
$this -> cellpadding = $padding;
}
function PrintArr()
{
print "<table bgcolor=\"#999999\" cellspacing=\"1\" cellpadding=\"$this->cellpadding\" border=0>";
print "<tr>";
foreach ($this -> headers as $header)
print "<td align=\"center\" bgcolor=\"$this->bgcolor_h\">$header</td>";
print "</tr>";
foreach ($this -> table_array as $row=>$cells)
{
print "<tr>";
foreach ($cells as $elemnt)
print "<td align='center' bgcolor=\"$this->bgcolor_c\" >$elemnt</td>";
print "</tr>";
}
print '</table>';
}
function OutForm($handler)
{
$width_h = array(170, 360);
print "<form name='uniform' action='".$handler.".php' method=post>";
print "<table bgcolor=\"#999999\" cellspacing=\"1\" cellpadding=\"$this->cellpadding\" border=0>";
print "<tr>";
$i=0;
foreach ($this -> headers as $header){
print "<td width='".$width_h[$i]."' align=\"left\" bgcolor=\"$this->bgcolor_h\"> $header</td>";
$i++;
}
print "</tr>";
$i=0;
foreach ($this -> table_array as $row=>$cells)
{
print "<tr>";
foreach ($cells as $elemnt)
{
print "<td width='".$width_h[$i]."' align='left' bgcolor=\"$this->bgcolor_c\" >$elemnt</td>";
if ($i==0) $i++; else $i--;
}
print "</tr>";
}
print '</table>';
print '</form>';
}
}
?>
All_Tables.php – формирует веб-представление всех таблиц базы данных.
<?php
####################################################################################
# Модуль выводит на экран содержимое базы данных 'conrol_clients_build' по-таблично. #
# Полностью все данные не выводятся на экран, а только первые строки, чтобы показать #
# возможные действия с таблицами базы данных. #
####################################################################################
#
require_once 'FormTypes.php';
$Arr_acc = array();
$Row = array();
$dbtable = $FormTypes;
//$head_color = 'silver';
# Класс для построения таблиц по заголовкам и содержанию таблиц
require_once 'Any_Table_HTML_New.php';
# Класс для работы с базой данных MySQL, описание в теле модуля
require_once 'DB_Class.php';
# Объект класса работы с базой данных создается внутри модуля DB_Class.php
# $dbObj = new MySQL_DB(DB_HOST, DB_USER, DB_PWD, DB_NAME);
###
# Так мы делаем софт более независимым от конкретных таблиц БД
#
# Заголовки всех таблиц веб проекта, которые появляются на экране
require_once 'Table_Headers.php';
#
# Заголовки всех таблиц БД проекта, на английском
require_once 'Table_Headers_DB.php';
#
require_once 'Header.php'; // заголовок для страниц проекта
require_once 'FormMsgs.php'; // все сообщения программ проекта
#
#
$f=0; // номер элемента $FormType
foreach ($dbtable as $value) {
#
$headers = $Table_Headers [$FormTypes[$f]];// наименования столбцов таблицe
$headers_db = $Table_Headers_DB[$FormTypes[$f]];// наименования доменов в таблице
# // БД и <input name's в формах
###
# Создаем объекты класса для вывода таблиц, вызываем конструктор
# $handler = $FormType.'_Handler'; // обработчик настоящей формы
$Table_view = new HTML_Table($headers , $heard_color);
#
#запрос на выдачу всей таблицы
$QueryResult = $dbObj->query("SELECT * FROM $dbtable[$f] LIMIT 0,2");
# возвращает массив ассоциативных массивов (см. класс DB_Class.php)
# по сути двумерный массив, поэтому используем конструкцию foreach
# это можно увидеть убрав знак # перед print см. ниже. Таким образом
# формируются массивы для вывода на экран для каждой таблицы
#
if ($QueryResult==false)
{
$msg = 'Нет записей в базе данных!';
}
else
{
$NA = count($QueryResult);
//print '$NA='.$NA;
//print '<pre>'; print_r($QueryResult); print '</pre>';
}
foreach ($QueryResult as $row => $Arr_acc)
{
$i=0;
foreach ($headers_db as $element)
{
$Row = array_merge($Row, array($headers[$i] => $Arr_acc[$headers_db[$i]]) );
$i++;
}
$Table_view -> AddRowAssArr($Row);
}
print "<p></p><font color= \"blue\" ><strong>$All_Tables_Names[$f]</strong></font>"
."$Comment_to_Table_up[$f]";
$Table_view -> PrintArr();
print "<a href=\"Tables_Handler.php?FormType=$FormTypes[$f]\">
Все данные Таблицы \"$All_Tables_Names[$f]\"</a>"
.'<p></p>';
//print "<a href=\"$FormType[$f]_Handler.php?FormType=$FormType[$f]\">
// Все данные Таблицы \"$All_Tables_Names[$f]\"</a>"
#
$f++; // новое значение $FormType, новая таблица
}
#
include 'Footer.php'; // стандартная нижняя строка каждой страницы
#
?>
FormTypes.php – файл содержащий наименования всех таблиц базы данных
<?php
############################################################
# Наименования таблиц базы данных в алфавитном порядке #
############################################################
$FormTypes = array('Clients',
'Departments',
'Groups',
'Orders',
'Payments',
'Services',
'Staff'
);
?>
Table_Headers_DB.php – файл, содержащий все наименования полей базы данных
<?php