Разработка и внедрение интернет-магазина с использованием динамически обновляемой баннерной рекламы
Суть требований заказчика к создаваемому интернет магазину с использованием динамически обновляемой баннерной рекламы. Анализ информационных технологий, применяемых для создания сайтов коммерческих фирм. Проектирование структуры и базы данных веб-сайта.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 07.08.2018 |
Размер файла | 2,2 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Некоторые платные хостинговые компании предоставляют бесплатный тест на определённый период, по истечении которого пользователь должен определиться подходит ли для него выбранная хостинговая компания, и имеет ли смысл оплачивать большие периоды. Как правило, такие тесты предоставляются только владельцам доменов второго уровня во избежание спекуляций с тестовыми аккаунтами.
Помимо платных хостеров существуют также и бесплатные хостинг компании, поддерживающие большинство описанных веб-технологий. Однако в России они распространены в основном с большим рекламным обременением, поэтому серьёзные компании пользуются в основном услугами платного хостинга.
Хостинг как услугу сравнивают, описывают и оценивают по количественным ограничениям:
· размер дискового пространства под файлы пользователя;
· количество месячного трафика;
· количество сайтов, которые можно разместить в рамках одной учетной записи;
· количество FTP пользователей;
· количество E-Mail ящиков и объём дискового пространства, предназначенного для почты;
· количество баз данных и размер дискового пространства под базы данных;
· количество одновременных процессов на пользователя;
· количество ОЗУ, и максимальное время исполнения, выделяемое каждому процессу пользователя.
И по качественным ограничениям делятся:
· свободные ресурсы CPU, оперативной памяти, которые влияют на быстродействие сервера;
· пропускная способность каналов, которая влияет на загрузку информации;
· удаленность оборудования провайдера от целевой аудитории сайта, которая влияет на загрузку информации.
Хостинг базы данных, размещение файлов, хостинг электронной почты, услуги DNS могут предоставляться отдельно как самостоятельные услуги, либо входить в комплексную услугу.
Возможности бесплатного хостинга обычно урезаны относительно платных вариантов, поэтому данный способ в большей степени подходит для домашних страниц пользователей и других некоммерческих сайтов. Хотя, сегодня уже появляются провайдеры предлагающие бесплатный хостинг на уровне платного, ориентирующиеся на старт начинающих проектов, с перспективой, что затем эти проекты будут пользоваться сопутствующими платными услугами.
Для размещения интернет-магазина ООО «Фармбокс» в глобальной сети интернет был выбран платный хостинг - www.sprinthost.ru.
Короткая информация о хостинге:
· свободного места: 5000 Мб;
· ежемесячный трафик: 100 Гб в месяц;
· поддержка PHP, MySQL, SSI;
· загрузка по FTP и FTP менеджер;
· панель управления AdminPanel;
· возможность использовать предоставляемый бесплатный домен или подключить свой;
· MyPhpAdmin;
· полное отсутствие рекламы или баннеров;
· возможность устанавливать любую свою рекламу или баннеры.
Выбор данного хостинга обусловлен тем, что он соответствует требованиям заказчика и предоставляет максимальное количество услуг и возможностей для создания и размещения интернет магазина ООО «Фармбокс».
Хостинг, кроме перечисленных возможностей позволяет работать с базой данных и со скриптом напрямую на сервере, без установки локально виртуальных серверов на компьютер.
При помощи админ панели хостинга создаем базу данных MySql, как показано на рис. 3.1.
Рис. 3.1 - Админ панели хостинга
После создания базы данных как показано на рис. 3.2 - 3.3 через админ-панель хостинга, она становиться доступна для редактирования через MyPhpAdmin, как показано на рис. 3.4.
Рис. 3.2 - Созданная база данных
Рис. 3.3 - Созданная база данных
Далее как показано на рисунке 3.4 осуществляем вход по паролю и логину доступа к базе данных, из аккаунта хостинга полученного при регистрации.
Рис. 3.4 - Вход в PhpAdmin
Далее осуществляем создание таблиц в соответствие с ранее разработанной моделью базы данных при помощи PhpAdmin, как показано на рис. 3.5.
Рис. 3.5 - Редактирование таблиц базы данных PhpAdmin
После создания всех таблиц мы дорабатываем базу данных, используя возможности хостинга (админ панель, MySql, и т. д.).
Разрабатываем запросы, сценарии, функции и формы к базе данных интернет магазина ООО «Фармбокс». Для этого используется как возможности админ панели хостинга, так и Php-кодирование. Так как невозможно создавать базу данных в отрыве отнаписания скрипта страниц интернет магазина ООО «Фармбокс». Ниже приведены фрагменты кодов некоторых запросов к таблицам базы данных.
Сначала был разработан сценарий входа в систему администратора. Идентификация администратора после входа в систему осуществляется через переменную сеанса admin_user и функцию check_admin_user(). Как только администратор вошел на сайт, он тут же получает возможность изменять свой пароль или выйти из системы. Когда требуется добавить новую категорию товара или конкретный товар, вызываются соответствующие сценарии:
Добавление категории:
<?php
// Включить библиотеки функций для этого приложения
require_once ('tovar_sc_fns.php');
session_start();
do_html_header ('Добавление новой категории');
if (check_admin_user())
{
display_category_form();
do_html_url ('admin.php', 'Назад в меню администрирования');
}
else
echo 'Вам не разрешен доступ в область администратора.';
do_html_footer();
?>
Данные, введенные в форму обрабатываются сценарием:
<?php
// Включить библиотеки функций для этого приложения
require_once(' tovar_sc_fns.php');
session_start();
do_html_header('Добавление новой категории');
if (check_admin_user())
{
if (filled_out($_POST))
{
$catname = $_POST['catname'];
if(insert_category($catname))
echo "Категория '$catname' добавлена в базу данных.<br />";
else
echo "Категория '$catname' не может быть добавлена в базу данных. <br />";
}
else
echo 'Вы ввели не все данные. Пожалуйста, повторите попытку.';
do_html_url ('admin.php', 'Назад в меню администрирования');
}
else
echo 'Вам не разрешен доступ в область администратора.';
do_html_footer();
?>
Добавление конкретного товара - (по аналогии, сначала форма, затем сценарий обработки).
<?php
// Включить библиотеки функций для этого приложения
require_once(' tovar_sc_fns.php');
session_start();
do_html_header('Добавление нового товара');
if (check_admin_user())
{
display_ tovar_form();
do_html_url ('admin.php', 'Назад в меню администрирования');
}
else
echo 'Вам не разрешен доступ в область администратора.';
do_html_footer();
?>
сценарий обработки данный формы:
<?php
// Включить библиотеки функций для этого приложения
require_once(' tovar_sc_fns.php');
session_start();
do_html_header('Добавление товара');
if (check_admin_user())
{
if (filled_out($_POST))
{
$cen = $_POST['cen'];
$title = $_POST['title'];
$proiz = $_POST['proiz'];
$catid = $_POST['catid'];
$price = $_POST['price'];
$description = $_POST['description'];
if(insert_tovar ($cen, $title, $proiz, $catid, $price, $description))
echo "Товар '".stripslashes($title)."' добавлен в базу данных.<br />";
else
echo "Товар '".stripslashes($title).
"' не может быть добавлен в базу данных. <br />";
}
else
echo 'Вы заполнили не все поля формы. Пожалуйста, повторите попытку.';
do_html_url ('admin.php', 'Назад в меню администрирования');
}
else
echo 'У вас нет прав для доступа на страницу администрирования.';
do_html_footer();
?>
Особого внимания заслуживает разработанная функция function display_tovar _form($tovar = '').
function display_ tovar _form($tovar = '')
// Отображает форму для товара.
// Эта форма во многом подобна форме для категорий.
// Форма может применяться для вставки и редактирования информации о товаре.
// Для вставки передавать параметр не нужно. В результате $edit
// получит значение false и форма вызовет сценарий insert_ tovar.php.
// Для обновления данных следует передать массив, содержащий данные о товаре.
// Форма отобразит предыдущие данные и кнопку, приводящую к вызову update_tovar.php.
// Кроме того, добавляется кнопка удаления товара.
{
// Если передается существующий товар, перейти в "режим редактирования"
$edit = is_array($tovar);
// Большая часть формы представляет собой простой HTML-код
// с небольшими вставками PHP-кода.
?>
<form method='post'
action="<?php echo $edit?'edit_ tovar.php':'insert_ tovar.php';?>">
<table border="0">
<tr>
<td>cen:</td>
<td><input type='text' name='cen'
value="<?php echo $edit?$ tovar ['cen']:''; ?>"></td>
</tr>
<tr>
<td>Название:</td>
<td><input type='text' name='title'
value="<?php echo $edit?$tovar['title']:''; ?>"></td>
</tr>
<tr>
<td>Производитель:</td>
<td><input type='text' name='proiz'
value="<?php echo $edit?$tovar['proiz']:''; ?>"></td>
</tr>
<tr>
<td>Категория:</td>
<td><select name='catid'>
<?php
// Прочитать из базы данных список возможных категорий
$cat_array=get_categories();
foreach ($cat_array as $thiscat)
{
echo '<option value="';
echo $thiscat['catid'];
echo '"';
// Если книга существует, поместить ее в текущую категорию
if ($edit && $thiscat['catid'] == $tovar['catid'])
echo ' selected';
echo '>';
echo $thiscat['catname'];
echo "</option>\n";
}
?>
</select>
</td>
</tr>
<tr>
<td>Цена:</td>
<td><input type='text' name='price'
value="<?php echo $edit?$tovar['price']:''; ?>"></td>
</tr>
<tr>
<td>Описание:</td>
<td><textarea rows='3' cols='50'
name='description'>
<?php echo $edit?$tovar['description']:''; ?>
</textarea></td>
</tr>
<tr>
<td <?php if (!$edit) echo 'colspan=\'2\''; ?> align="center">
<?php
if ($edit)
// Если был обновлен cen, для поиска товара
// в базе данных понадобится старый номер cen
echo '<input type="hidden" name="oldcen"
value="'.$tovar['cen'].'">';
?>
<input type='submit'
value="<?php echo $edit?'Обновить':'Добавить'; ?> njdfh">
</form></td>
<?php
if ($edit)
{
echo '<td>';
echo '<form method="post" action="delete_tovar.php">';
echo '<input type="hidden" name="cen"
value="'.$tovar['cen'].'">';
echo '<input type="submit"
value="Удалить товар">';
echo '</form></td>';
}
?>
</td>
</tr>
</table>
</form>
<?php
}
Если передается массив с данными о товаре, то форма «переходит» в режим редактирования и ее поля заполняются существующими уже на данный момент данными:
<input type='text' name='price'
value="<?php echo $edit?$tovar['price']:''; ?>">
При этом используется другая кнопка отправки формы. По сути, при редактировании видны две кнопки - одна существует для редактирования данных о товаре, другая несет в себе функцию полного удаления товара вообще. Именно с этими кнопками связаны вызовы соответствующих по описанной функциональности сценариев:
<?php
// Включить библиотеки функций для этого приложения
require_once('tovar_sc_fns.php');
session_start();
do_html_header('Обновление сведений о товаре');
if (check_admin_user())
{
if (filled_out($_POST))
{
$oldcen = $_POST['oldcen'];
$cen = $_POST['cen'];
$title = $_POST['title'];
$proiz = $_POST['proiz'];
$catid = $_POST['catid'];
$price = $_POST['price'];
$description = $_POST['description'];
if(update_tovar($oldcen, $cen, $title, $proiz, $catid,
$price, $description))
echo 'Сведения о товаре обновлены.<br />';
else
echo 'Невозможно обновить сведения о товаре.<br />';
}
else
echo 'Вы ввели не все данные. Пожалуйста, повторите попытку.';
do_html_url ('admin.php', 'Назад в меню администрирования');
}
else
echo 'Вам не разрешен доступ на эту страницу.';
do_html_footer();
?>
и для полного удаления:
<?php
// Включить библиотеки функций для этого приложения
require_once('tovar_sc_fns.php');
session_start();
do_html_header('Удаление товара');
if (check_admin_user())
{
if (isset($_POST['cen']))
{
$cen = $_POST['cen'];
if(delete_tovar($cen))
echo 'товар '.$cen.' удален.<br />';
else
echo 'товар '.$cen.' не может быть удален.<br />';
}
else
echo 'Для удаления товара необходимо ввести CEN.
Пожалуйста, повторите попытку. <br />';
do_html_url ('admin.php', 'Назад в меню администрирования');
}
else
echo 'Вам не разрешен доступ на эту страницу.';
do_html_footer();
?>
В случае категорий все происходит аналогичным образом. При попытке удаления категории проверяется наличие товаров в ней. Если это имеет место, то удалить категорию невозможно. И в противном случае - в случае пустой категории ее возможность удаления не вызывает сомнений. При этом минимизируется опасность случайного удаления информации, что недопустимо в принципе. Но если все же удалить категорию, содержащую товары, то статус товаров окажется неопределенным и переход к ним окажется невозможным, поскольку с ними не связана ни одна категория.
Таким образом, была разработана и размещена на хостинге база данных интернет магазина компании ООО «Фармбокс».
3.2 Разработка и внедрение скриптов интернет магазина ООО "Фармбокс"
После создания и соединения таблиц базы данных, а также разработки запросов, форм, сценариев и функций с использованием возможностей хостинга возможно приступать к полноценной разработке скрипта страниц интернет магазина ООО «Фармбокс».
В предыдущей подглаве были рассмотрены основные технологии по созданию базы данных под проект многофункционального динамического интернет магазина с использованием PHP и MySQL. В этой подглаве, будут рассмотрены технологии, применяемые для создания покупательской корзины (shopping cart) или корзины для покупок (shopping basket) - а именно онлайн-каталог товаров с разбивкой его по категориям.
В первой подглаве третьей главы подробно рассмотрен механизм построения базы данных под интернет магазин ООО «Фармбокс». Приведен соответствующий PHP и SQL код, реализующий описываемые части базы данных. Все этапы разработки разбиты на 5 этапов:
· база данных продукции для продажи в онлайн магазине;
· онлайн-каталог товаров с разбивкой по категориям;
· покупательская корзина, позволяющая фиксировать товар, отбираемый заказчиком по мере изучения ассортимента;
· главный расчетный сценарий, обрабатывающий детали платежа и поставки отобранного товара;
· интерфейс администрирования интернет магазина.
Рассмотрим подробно процесс создания онлайн-каталога. После добавления таблиц базы данных на главной странице сайта появился список категорий, окно вызова покупательской корзины в правом верхнем углу, а также информация по содержимому корзины.
При выборе пользователем одной из категорий, открывается соответствующая страница, которая генерируется следующим кодом:
<?php
require ('book_sc_fns.php');
// Для покупательской корзины необходимо запустить сеанс
session_start();
$catid = $_GET['catid'];
$name = get_category_name($catid);
do_html_header($name);
// Извлечь из базы данных информацию о товаре
$book_array = get_tovars($catid);
display_tovars($tovar_array);
// Если пользователь вошел в систему как администратор, вывести
// ссылки на добавление и удаление ссылок на товары
if(isset($_SESSION['admin_user']))
{
display_button('index.php', 'continue', 'Продолжить покупки');
display_button('admin.php', 'admin-menu', 'Меню администрирования');
display_button("edit_category_form.php?catid=$catid",
'edit-category', 'Редактировать категорию');
}
else
display_button('index.php', 'continue-shopping', 'Продолжить покупки');
do_html_footer();
?>
При выборе одной из категорий становится виден перечень товаров по данной тематике и имеется возможность просмотра подробной информации по каждому товару.
Сценарий начинается с включения файла tovar_sc_fns.php, содержащего все библиотеки функций данного приложения. Для начала работы требуется запустить сеанс, который должен работать для нормального функционирования покупательской корзины. При этом, сеанс используется каждой страницей сайта.
Функция get_categories() и display_categories() возвращают массив категорий, существующих в системе, который затем передается в функцию display_categories ($cat_array). Описание всех функций выходит за рамки данной выпускной квалификационной работы, но код самых важных функций представлен ниже по тексту вместе с описанием их работы. Остальные функции хорошо прокомментированы и понятны при ближайшем рассмотрении.
function get_categories()
{
// Эапросить в базе данных список категорий
$conn = db_connect();
$query = 'select catid, catname
from categories';
$result = @$conn->query($query);
if (!$result)
return false;
$num_cats = $result->num_rows;
if ($num_cats == 0)
return false;
$result = db_result_to_array($result);
return $result;
}
Функция get_categories() подключается к базе данных и затем извлекает оттуда список состоящий из идентификаторов и имен категорий. Функция db_result_to_array($result) принимает идентификатор результата из MySQL и возвращает массив строк с числовой индексацией, где каждая строка представляет собой ассоциативный массив.
function db_result_to_array($result)
{
$res_array = array();
for ($count = 0; $row = $result->fetch_assoc(); $count++)
$res_array[$count] = $row;
return $res_array;
}
Затем этот массив возвращается в сценарий index.php где передается в функцию display_categories($cat_array).
function display_categories($cat_array)
{
if (!is_array($cat_array))
{
echo 'В настоящий момент нет доступных категорий <br />';
return;
}
echo '<ul>';
foreach ($cat_array as $row)
{
$url = 'show_cat.php?catid='.($row['catid']);
$title = $row['catname'];
echo '<li>';
do_html_url($url, $title);
echo '</li>';
}
echo '</ul>';
echo '<hr />';
}
Функция display_categories ($cat_array) отображает массив категорий в виде списка ссылок на категории. При этом она преобразует каждую категорию базы данных в ссылку. Причем, все ссылки передаются в следующий сценарий show.cat.php, при этом каждая из них имеет свой собственный параметр - идентификатор catid (это уникальное число, которое сгенерировано MySQL и служащее для такой идентификации). Этот параметр и определяет, какая категория должна отображаться в конечном итоге.
Вывод списка товаров для заданной категории. Данный сценарий, в общем, аналогичен по логике тем процессам, которые были описаны выше. Вывод списка осуществляет код, представленный ниже:
<?php
require ('tovar_sc_fns.php');
// Для покупательской корзины необходимо запустить сеанс
session_start();
$catid = $_GET['catid'];
$name = get_category_name($catid);
do_html_header($name);
// Извлечь из базы данных информацию о товаре
$tovar_array = get_tovars($catid);
display_tovars($tovar_array);
// Если пользователь вошел в систему как администратор, вывести
// ссылки на добавление и удаление ссылок на товары
if(isset($_SESSION['admin_user']))
{
display_button('index.php', 'continue', 'Продолжить покупки');
display_button('admin.php', 'admin-menu', 'Меню администрирования');
display_button("edit_category_form.php?catid=$catid",
'edit-category', 'Редактировать категорию');
}
else
display_button('index.php', 'continue-shopping', 'Продолжить покупки');
do_html_footer();
?>
Сначала запускается сеанс с помощью функции session_start (), затем с помощью функции get_category_name ($catid) передаваемый идентификатор категории преобразуется в имя категории.
unction get_category_name($catid)
{
// Запросить в базе данных имя категории для данного идентификатора категории
$catid = intval($catid);
$conn = db_connect();
$query = "select catname
from categories
where catid = $catid";
$result = $conn->query($query);
if (!$result)
return false;
$num_cats = $result->num_rows;
if ($num_cats == 0)
return false;
$row = $result->fetch_object();
return $row->catname;
}
Библиотека функций, отвечающая за обработку логики хранения и извлечения данных о товарах, приведена ниже. Здесь же представлена описываемая функция function get_tovars($catid).
<?php
function calculate_shipping_cost()
{
// Поскольку доставка осуществляется по всей РФ
//посредством собственного транспорта ООО «Фармбокс», стоимость доставки не фиксирована
return 20.00;
}
function get_categories()
{
// Эапросить в базе данных список категорий
$conn = db_connect();
$query = 'select catid, catname
from categories';
$result = @$conn->query($query);
if (!$result)
return false;
$num_cats = $result->num_rows;
if ($num_cats == 0)
return false;
$result = db_result_to_array($result);
return $result;
}
function get_category_name($catid)
{
// Запросить в базе данных имя категории для данного идентификатора категории
$catid = intval($catid);
$conn = db_connect();
$query = "select catname
from categories
where catid = $catid";
$result = $conn->query($query);
if (!$result)
return false;
$num_cats = $result->num_rows;
if ($num_cats == 0)
return false;
$row = $result->fetch_object();
return $row->catname;
}
function get_tovars($catid)
{
// Выполняет запрос в базу данных товаров определенной категории
if (!$catid || $catid=='')
return false;
$conn = db_connect();
$query = "select * from tovars where catid='$catid'";
$result = @$conn->query($query);
if (!$result)
return false;
$num_tovars = @$result->num_rows;
if ($num_tovars ==0)
return false;
$result = db_result_to_array($result);
return $result;
}
function get_tovar_details($cen)
{
// Выполняет запрос в базу данных детальной информации о товаре
if (!$cen || $cen=='')
return false;
$conn = db_connect();
$query = "select * from tovars where cen='$cen'";
$result = @$conn->query ($query);
if (!$result)
return false;
$result = @$result->fetch_assoc();
return $result;
}
function calculate_price($cart)
{
// Вычисляет общую стоимость всех элементов корзины
$price = 0.0;
if(is_array($cart))
{
$conn = db_connect();
foreach($cart as $cen => $qty)
{
$query = "select price from tovars where cen='$cen'";
$result = $conn->query($query);
if ($result)
{
$item = $result->fetch_object();
$item_price = $item->price;
$price +=$item_price*$qty;
}
}
}
return $price;
}
function calculate_items($cart)
{
// Подсчитывает общее количество элементов в тележке
$items = 0;
if(is_array($cart))
{
$items=array_sum($cart);
}
return $items;
}
?>
Обе функции get_tovars() и display_tovars() похожи на их практические аналоги get_categories() и display_categories(). Основное отличие между ними заключается в том, что в случае использования этих функций информация извлекается из таблиц товаров, а не категорий. Функция display_tovars() создает ссылку на каждый товар в данной категории, используя при этом сценарий, отображающий товары определенных категорий (был рассмотрен выше). При этом, как и прежде, каждая ссылка сопровождается параметром в виде суффикса. Этот суффикс в этот раз представляет собой номер в списке в базе (cen) конкретного товара. В конце фрагмента этого сценария содержится код для отображения дополнительных функциональных возможностей. Они появляются на странице в том случае, если в систему входит администратор и представляют собой инструменты администрирования - добавления и удаления товаров, категорий и тд.
Функция display_tovars($tovar_array) имеет вид:
function display_tovars($tovar_array)
{
// Выводит все товары, переданные в массиве
if (!is_array($tovar_array))
{
echo '<br />В настоящий момент нет доступных товаров в этой категории<br />';
}
else
{
// Создать таблицу
echo '<table width = \"100%\" border = 0>';
// Создать строку таблицы для каждой товары
foreach ($tovar_array as $row)
{
$url = 'show_tovar.php?cen='.($row['cen']);
echo '<tr><td>';
if (@file_exists('images/'.$row['cen'].'.jpg'))
{
$title = '<img src=\'images/'.($row['cen']).'.jpg\' border=0 />';
do_html_url($url, $title);
}
else
{
echo ' ';
}
echo '</td><td>';
$title = $row['title'].' by '.$row['author'];
do_html_url($url, $title);
echo '</td></tr>';
}
echo '</table>';
}
echo '<hr />';
}
Сценарий, показывающий информацию о конкретном товаре. Сценарий, приведенный ниже, в качестве параметра принимает номер cen, после чего извлекает и отображает детальные сведения о выбранной товаре. Он тоже очень похож на приводимые ранее сценарии, что облегчает сопровождение и поддержку кода в целом.
<?php
require ('tovar_sc_fns.php');
// Для покупательской корзины необходимо запустить сеанс
session_start();
$cen = $_GET['cen'];
// Извлечь из базы данных информацию о конкретном товаре
$tovar = get_tovar_details($cen);
do_html_header($tovar['title']);
display_tovar_details($tovar);
// Установить url для кнопки "Продолжить"
$target = 'index.php';
if($tovar['catid'])
{
$target = 'show_cat.php?catid='.$tovar['catid'];
}
// Если пользователь вошел в систему как администратор, вывести
// ссылку на редактирование информации о товаре
if( check_admin_user() )
{
display_button("edit_tovar_form.php?cen=$cen",
'edit-item', 'Редактировать элемент');
display_button('admin.php', 'admin-menu', 'Меню администрирования');
display_button($target, 'continue', 'Продолжить');
}
else
{
display_button("show_cart.php?new=$cen", 'add-to-cart', 'Добавить '
.$tovar['title'].' в мою тележку');
display_button($target, 'continue-shopping', 'Продолжить покупки');
}
do_html_footer();
?>
С самого начала, как и в других сценариях, запускается сеанс, а затем с помощью строки:
$tovar = get_tovar_details($tovar);
из базы данных извлекается информация о конкретном товаре. Для вывода данных в HTML формате используется следующая форма вызова:
display_tovar_details($tovar);
Функция display_tovar_details($tovar) выполняет поиск файла изображения для товара, имя которого выглядит как images/$cen.jpg. Если при этом такого файла нет, то изображение не выводится вообще. Остальная часть сценария устанавливает средства навигации по имеющемуся функционалу. Простому пользователю предлагается использовать кнопку “Continue Shopping” (продолжить покупки), которая возвращает его на исходную страницу категорий. Кроме этого, предлагается кнопка “Add to Cart” (добавить в корзину) для добавления товаров в покупательскую корзину. В том случае, когда вошедший в систему пользователь обладает правами администратора, ему предлагается несколько иные, расширенные опции для администрирования.
Таким образом, в подглаве рассмотрена реализация онлайн-каталога товаров под интернет-магазин ООО «Фармбокс» средствами PHP, MySQL и AdminPanel, предоставленных хостингом. Подробно описан созданный скрипт единой торговой системы, позволяющей обслуживать клиентов в режиме онлайн.
Последовательно изложены механизмы работы скриптов, генерирующих стартовую страницу интернет - магазина с категориями и товарами, отсортированными по категориям. Показана работа функций, поддерживающих описанную логику работы скриптов. При этом все функции собраны в соответствующие библиотеки, и их работа наглядно представлена. Четкая организация кода и пояснения к нему, дают возможность легко поддерживать работающие программы, видоизменять их и при необходимости, переносить на любые другие платформы.
3.3 Разработка динамически обновляемой баннерной рекламы
После запуска готового интернет магазина компании ООО «Фармбокс» в тестовый режим и заполнения тестовым контентом необходимо провести разработку баннера на принципах динамического обновления.
Потенциальные покупатели пользуются интернетом не для того, чтобы разглядывать баннеры -- они общаются с друзьями, читают новости, смотрят видео, играют в онлайн-игры.
Но это не означает, что баннерная реклама не может способствовать продвижению продукции и, как следствие, увеличению объема продаж. На самом деле, ее присутствие способствует большей узнаваемости бренда, а также пробуждает у пользователей желание совершить покупку.
Так, во второй половине 2016 года креативы в рамках рекламной кампании для Android Wear увеличили популярность бренда и количество совершенных покупок на 15,8% и 9,4% соответственно. Считается также, что данный вид рекламы создает у пользователей ощущение срочности. Баннерная реклама является сравнительно недорогой, и у нее широкие возможности таргетинга: текстово-графические объявления могут быть эффективным средством, если есть четко поставленная цель.
Ниже приведены три принципа, которыми будем руководствоваться при создании своих баннерных рекламных кампаний:
· Баннер должен быть максимально привлекательным. Реклама должна бросаться в глаза и привлекать внимание пользователя. Только тогда можно отвлечь человека от его основной цели на сайте и донести рекламное послание. Чтобы выделиться на общем фоне, можно использовать анимацию, изображения человеческих лиц, фирменные цвета и понятный, различимый текст.
· Баннер должен быть лаконичным. В любой момент пользователь может посмотреть на рекламу, и есть всего пара мгновений, чтобы «зацепить» его взгляд. В связи с этим, нужно выражать оффер максимально кратко.
· Баннер должен быть понятным. Рекламное объявление обычно имеет небольшой размер. Не будет использовано множество деталей, ведь иначе баннер будет выглядеть загроможденным. Призыв к действию также должен быть ясным и легко читаемым.
Однако стоит помнить, что баннеры -- это не универсальный инструмент, и их стоит чередовать с другими видами медийной рекламы.
Создадим баннер для интернет магазина компании ООО «Фармбокс» при помощи технологии динамического креатива (Dynamic Creative) [17].
Технология динамического создания баннеров позволяет моделировать уникальный пользовательский опыт для каждого представителя целевой аудитории. Dynamic Creative подразумевает, что придется проделать довольно сложную интеллектуальную работу, но в результате рекламная кампания не только вызовет зависть конкурентов, но и привлечет больше потенциальных клиентов.
Одно из главных свойств данной технологии заключается в том, что осуществляется так называемый персонализированный маркетинг. При помощи современных маркетинговых инструментов многие специалисты уже научились тщательно сегментировать аудиторию. Динамический креатив позволяет применять уникальную информацию о пользователях, чтобы демонстрировать баннеры в зависимости от их предпочтений. Преимуществом метода является;
· удобство применения;
· Dynamic Creative особенно эффективен для мобильных устройств.
Dynamic Creative технология - очень хорошо интегрирована в программное обеспечение Magic Banner 2.0. Для создания программного обеспечения Magic Banner 2.0 была использована улучшенная технология. Маркетологи постарались задействовать информацию о предпочтениях пользователей (исходя из поисковых запросов и прочей информации, например, время суток, погода, местонахождение и т. д.), чтобы предоставить релевантную, интересную и полезную рекламу. Таким образом, целевая аудитория получала актуальную информацию в нужное время и в нужном месте. При помощи программного обеспечения Magic Banner 2.0 был разработан динамически обновляемый баннер интернет магазина компании ООО «Фармбокс», как показано на рис. 3.6.
Рис.3.6 - Динамически обновляемый баннер интернет магазина компании ООО «Фармбокс»
В целях лучшей визуализации данный баннер размещен на главной странице, в дальнейшем компания будет размещать его уменьшенную копию в рекламных целях.
Также были выполнены три дополнительных банера которые отображены на рис. 3.7
Рис.3.7 - дополнительные баннеры интернет магазина компании ООО «Фармбокс»
Оригинальный баннер и грамотное тестирование помогут значительно увеличить отдачу от такой рекламной кампании, для фирмы ООО «Фармбокс».
Заключение
Актуальность выполненной выпускной квалификационной работы имеет весьма высокий статус поскольку разработанный интернет магазин реальной фирмы ООО «Фармбокс» уже работает.
Все поставленные в выпускной квалификационной работе задачи выполнены в полном объеме: рассмотрена деятельность фирмы ООО «Фармбокс» и выделены требования заказчика к создаваемому интернет магазину с использованием динамически обновляемой баннерной рекламы, проанализированы информационные технологии, применяемые для разработки сайтов коммерческих фирм, спроектирована структура интернет магазина фирмы ООО «Фармбокс», спроектирована база данных интернет магазина фирмы ООО «Фармбокс», разработаны и внедрены база данных и скрипты интернет магазина ООО «Фармбокс», разработана динамически обновляемая баннерная реклама, заполнен интернет магазин фирмы ООО «Фармбокс» тестовыми группами товаров.
При этом использованы языки HTML и PHP, MySQL, редакторы Adobe Photoshop, Notepad++, а также технологии разработки динамического креатива Dynamic Creative.
В дальнейшем будут использованы методы SEO - продвижения, в целях поднятия средства электронной коммерции - интернет магазина ООО «Фармбокс» в поисковых системах и использования коммерческой платной контекстной рекламы.
Цель выпускной квалификационной работы достигнута в полном объеме - интернет магазин ООО «Фармбокс» с динамически обновляемой баннерной рекламой разработан, внедрен и работает о чем свидетельствует акт о внедрении.
Размещено на Allbest.ru
...Подобные документы
Разработка интернет-магазина для реального заказчика. Проведение анализа и выбор интернет-технологий для разработки интернет-магазина. Проектирование предметной области. Разработка динамических web-страниц интернет-магазина, управляемых базой данных.
дипломная работа [1,7 M], добавлен 08.06.2013Анализ сравнения интернет-магазина и электронного магазина. Проектирование структуры web-сайта. Обработка заказа. Основное понятие языка php. Средства безопасности системного уровня приложения. Разработка структуры базы данных и структуры web-сайта.
курсовая работа [1,4 M], добавлен 31.03.2014Разработка, внедрение, адаптация, сопровождение программного обеспечения и информационных ресурсов. Наладка и обслуживание оборудования отраслевой направленности. Наполнение базы данных интернет-магазина. Публикация и оптимизация сайта в сети интернет.
отчет по практике [2,7 M], добавлен 18.05.2015Проектирование книжного интернет-магазина для реализации книжной продукции через Интернет. Анализ и обоснование выбора языков программирования и средств разработки сайта. Затраты внедрение сайта, его программное обеспечение, тестирование и отладка.
дипломная работа [2,1 M], добавлен 06.06.2013Проектирование архитектуры и разработка веб-сайта для магазина строительных материалов. Анализ ключевых процессов работы интернет-магазинов, составление схем работы сервиса и схем товарооборота. Проектирование базы данных и бизнес-логики приложения.
курсовая работа [826,4 K], добавлен 09.09.2022Знакомство с организационно-функциональной структурой и хозяйственной деятельностью предприятия. Сравнительный анализ интернет-магазинов. Формирование требований к интернет-магазину. Обоснование экономической эффективности разработки интернет-магазина.
курсовая работа [1,4 M], добавлен 15.04.2012CRM-системы: разновидности, проблемы реализации, их преимущества и недостатки. Критические характеристики CRM-систем для работы через Интернет (WEB-CRM). Разработка содержания и структуры WEB-сайта интренет-магазина "Vinil", создание схемы и базы данных.
курсовая работа [2,6 M], добавлен 19.05.2013Разработка интернет-магазина, который специализируется на продаже книг. Сравнение технологий и средств разработки: языки программирования и программное обеспечение. Социальные сети и система управления контентом. Проектирование модели базы данных.
курсовая работа [3,6 M], добавлен 25.06.2012Моделирование и разработка web-сайтов. Обзор СУБД, применяемых в программировании. Обзор и сравнительный анализ систем управления сайтами. Интернет-магазины в сфере автомобильного бизнеса, их функциональные возможности. Разработка прототипа магазина.
курсовая работа [3,0 M], добавлен 07.11.2013Технологии создания web-страниц. Появление Active Server Pages. Разработка динамического web-сайта на asp.net. Создание дизайна и каркаса сайта с использованием стандартных HTML таблиц. Проектирование базы данных на основе ado.net и подключение к ней.
контрольная работа [2,4 M], добавлен 24.05.2019Организационная структура управления деятельностью ООО "Стройинвест". Создание интернет-магазина для организации: определение аппаратных и программных средств разработки продукта, реализация информационных страниц, анализ требований к хостингу сайта.
дипломная работа [8,7 M], добавлен 27.09.2011Специфика создания базы данных "On-line магазин", содержащей информацию о работе интернет-магазина. Проектирование логического и физического уровней с использованием CASE-средства Erwin. Реализация базы данных в архитектуре "клиент-сервер" на языке Java.
курсовая работа [1,2 M], добавлен 26.06.2012Разработка и внедрение Интернет-магазина, соответствующего требованиям заказчика. Усовершенствование исследуемого бизнес-процесса. Оценка и обоснование экономической эффективности магазина. Управление проектами по созданию программного обеспечения.
дипломная работа [2,6 M], добавлен 20.06.2017Общая характеристика концептуального проектирования. Особенности проектирования базы данных и структуры "Оnly for you". Расчет текущих и капитальных затрат, характеристика экономического эффекта на примере интернет-магазина женской одежды "Оnly for you".
курсовая работа [963,8 K], добавлен 23.06.2012Анализ функционирования интернет-сайтов по предоставлению услуг. Обзор методологий проектирования интернет-представительства. Инструментальные средства разработки и реализации системы управления сайтом. Разработка интерфейса пользователя и web-сайта.
дипломная работа [1,2 M], добавлен 03.08.2014Характеристика основных программных средств построения электронного магазина. Разработка структуры построения электронного магазина. Безопасность платежей в Интернете. Разработка алгоритма работы интернет-магазина. Разработка системы оплаты и доставки.
дипломная работа [1,9 M], добавлен 10.03.2014Основные технологии разработки ресурсов Интернет. Процесс разработки веб-сайта. Понятие Web-сайта и классификация Web-сайтов. Основные этапы разработки Web-сайта. Использование HTML, CSS, JavaScript, FLASH, PHP и реляционной базы данных MySQL.
презентация [1,3 M], добавлен 28.11.2015Анализ средств информации консалтингового бизнеса: обзор языков программирования и программных средств для создания сайтов, информационных систем и сайтов консалтинговых фирм. Моделирование бизнес-процессов. Разработка интернет-представительства.
дипломная работа [2,9 M], добавлен 11.04.2012Интернет-магазин как одно из перспективных средств ведения бизнеса, технологические подходы и решения, применяемые при его построении. Проектирование базы данных и интернет-магазина для компьютерного салона "Стоик". Выбор средств разработки и реализации.
дипломная работа [4,7 M], добавлен 21.05.2013Принципы построения СУБД, их достоинства. Архитектура распределенной информационной системы. Разработка интернет-магазина рынка книг: построение физической модели данных на языке SQL, проектирование схемы базы данных с использованием веб-интерфейса.
курсовая работа [2,3 M], добавлен 01.11.2011