Создание интерактивного Web-сайта (игра "Tetravex")

Система игры Tetravex. Характеристика технологии ее разработки и языков программирования. Особенности и этапы проектирования интерактивной системы игры Tetravex с поддержкой регистрации пользователей. Руководство разработчика, ведение статистики.

Рубрика Программирование, компьютеры и кибернетика
Вид контрольная работа
Язык русский
Дата добавления 07.07.2012
Размер файла 556,0 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Создание интерактивного Web-сайта (игра "Tetravex")

Содержание

  • игра интерактивная система
  • Введение
  • Постановка задачи
  • Используемые технологии
  • Руководство пользователя
  • Руководство администратора
  • Руководство разработчика
    • Игра
    • Подсчет статистики игры
  • Заключение
  • Список литературы

Введение

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

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

Постановка задачи

Система игры Tetravex:

· система идентификации пользователей. Необходима для регистрации нового пользователя в системе и обеспечивает возможность просмотра рейтинга;

· игровое поле, разделённое на 2 части - левая часть является игровым полем, правая содержит паззлы при создании игры;

· система рейтинга, содержащая таблицу статистики по каждому игроку: общее количество игр, количество успешно завершённых игр, суммарное время.

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

1) модуль идентификации пользователей;

2) модуль игры;

3) рейтинговый модуль;

4) модуль редактирования информации о пользователях (изменения базы данных), используемый только администратором.

Используемые технологии

Для реализации задачи используется технология Active Server Pages(ASP)

ASP (Active Server Pages) - это мощная технология от Microsoft, позволяющая легко разрабатывать приложения для WWW. ASP работает на платформе Windows NT и IIS (Internet Information Server), начиная с версии 3, хотя вроде есть реализации на других платформах. ASP - это не язык программирования, это внутренняя технология, позволяющая подключать программы к Web - страницам. Основа успеха ASP - простой скриптовый язык (поддерживается как Visual Basic Script, так и Java Script) и возможность использования внешних COM - программ.

Все файлы программ создаются в любом подходящем текстовом редакторе и затем сохраняются в папке на сервере (важно, чтобы в каталоге было разрешёно выполнение файлов). При работе с сайтом, браузер клиента запрашивает файл страницы, который интерпретируется сервером и передаётся клиенту в виде HTML-код. Код программ по-умолчанию воспринимается как VBScript, иначе необходимо указывать используемый язык.

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

Руководство пользователя

При входе на сайт пользователь оказывается на главной странице, показанной на рис. 1.

Рисунок 1 - Главная страница

Если пользователь зарегистрирован, то по ссылке Sign in он может перейти на страницу идентификации, где необходимо ввести свой логин и пароль (рис. 2).

Рисунок 2 - Авторизация пользователя

Если же пользователь зашел в систему впервые, то он должен зарегистрироваться. Для этого на главной странице он должен перейти по ссылке Sign up на страницу регистрации (рис. 3). На этой странице пользователь указывает свои персональные данные. Обязательные поля для заполнения: логин и пароль, необязательное: имя пользователя.

Рисунок 3 - Регистрация пользователя

Если будет введен неверный логин или пароль (есть в базе данных), система сообщит об этом (рис. 4).

Рисунок 4 - Ошибка входа

Пройдя аутентификацию, пользователь попадает на страницу, где ему предлагается начать игру или же покинуть систему и вернуться на стартовую страницу игры (рис.5).

Рисунок 5 - Страница приветствия

Страница с игрой представляет собой таблицу, нажимая на клетки которой игрок совершает ход (пользователь играет крестиками) (рис. 6).

Рисунок 6 - Игровая страница

Для того чтобы начать новую игру необходимо нажать на кнопку «New game». Если же пользователь хочет просмотреть рейтинг, то нужно перейти на страницу результатов по нажатию на кнопку Statistica (рис. 7).

Рисунок 7 - Рейтинговая страница

На этой странице пользователь может посмотреть, сколько он игр выиграл, проиграл или сыграл вничью, а также узнать, сколько у него очков и сравнить свои результаты с результатами других пользователей.

Руководство администратора

Кроме обычных пользователей есть администратор сайта, он такой же пользователь, как и другие, также может играть и просматривать рейтинг. Отличается он от обычных пользователей тем, что имеет возможность изменять информацию о пользователях. При авторизации пользователя происходит проверка, является он администратором или нет, если да, то кроме основных ссылок на странице приветствия, добавляется ссылка на страницу администратора (рис.8).

Рисунок 8 - Страница приветствия для администратора

Администратор на своей странице может удалить пользователя из базы данных, если он не посещает сайт. Для этого в текстовое поле необходимо ввести логин пользователя, которого нужно удалить, и нажать на кнопку «Delete» (рис 9).

Рисунок 9 - Страница администратора

Руководство разработчика

Система написана на языках VBScript и JavaScript.

Но т.к. VBScript не является полнофункциональным языком программирования и использования встроенных в него средств недостаточно. Используются специальные объекты и компоненты ActiveX. Эти объекты инициализируются и предоставляются ASP-скрипту автоматически при начале обработки, обеспечивают доступ к основным жизненно важным функциям:

· Объект Session - позволяет сохранять данные, связанные с отдельным пользователем. В объекте Session(«UID») хранится логин пользователя, в Session(«Name») хранится имя пользователя, в объекте Session(«PW») - его пароль.

· Объект Request - предоставляет параметры CGI-запроса, отправленные методом POST или GET, используется когда необходимо получить, занести в базу данные, введенные пользователем.

· Объект Response - предоставляет методы для добавления информации, а также для формирования заголовков страницы ответа Web-сервера.

· Объект Server - содержит множество различных методов, одним из которых является метод CreateObject, позволяющий создавать экземпляры компонент ActiveX

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

Информация о пользователях хранится в базе данных с именем Users.mdb. База данных состоит из двух таблиц: Users - в которой хранится информация о пользователях (PW- пароль, Name - имя пользователя) и Stats - таблица рейтинга (GAMES_PLAYED общее число игр, GAMES_COMPLETED число успешно завершённых игр, LAST_TIME время последней игры). Обе таблицы содержат поле: UID - логин.

Добавление записи пользователя в базу данных

При регистрации пользователя происходит проверка, есть ли такой пользователь в базе, если нет, то данные записываются в базу[2].

Set Conn=Server.CreateObject("ADODB.Connection")

Dim dbpath

dbpath = Server.MapPath("Users.mdb")

Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbpath

SQL=" INSERT into Users (UID,PW,Name) values ("

SQL=SQL & "'" & Request("UID")& "',"

SQL=SQL & "'" & Request("PW") & "',"

SQL=SQL & "'" & Request("Name")& "')"

Conn.Execute(SQL)

Аналогичный код используется и при добавлении пользователя в таблицу результатов. Только строка запроса будет иметь иной вид:

SQL="INSERT into Stats (UID, NAME,GAMES_PLAYED, GAMES_COMPLETED, LAST_TIME) values("

SQL=SQL & "'"& Request("UID")&"',"

SQL=SQL & "'"&Request("Name")&"',"

SQL=SQL & "'0',"

SQL=SQL & "'0',"

SQL=SQL & "'0')"

Игра

Игра описывается в клиентском скрипте написанном на языке JavaScript.

Переменные completedgames, playedgames и gttextbox отвечают за количество успешных игр, общее количество игр и время последней игры.

Функция GeneratePlayingField генерирует игровое поле.

Function GeneratePlayingField()

{

Table = document.createElement( 'table' );

Table.style.border = "1px solid #808080";

Tbody = document.createElement( 'tbody' );

for ( y = 0; y < BoardY; ++y )

{ Row = document.createElement( 'tr' );

for ( x = 0; x < BoardX; ++x )

{//Создание ячейки

Cell = document.createElement( 'td' );

Cell.setAttribute( 'id' , "Cell_" + x + "x" + y );

Cell.appendChild( document.createTextNode( "\u00a0" ) );

Cell.style.border = "1px solid #808080";

Cell.style.padding = "0px";

Cell.style.margin = "0px";

Cell.style.width = CellSize + "px";

Cell.style.height = CellSize + "px";

Row.appendChild( Cell );}

Tbody.appendChild( Row );}

Table.appendChild( Tbody );

Div.appendChild( Table );

PlayingField.appendChild( Div );

Table = document.createElement( 'table' );

Table.style.border = "1px solid #808080";

Tbody = document.createElement( 'tbody' );

for ( y = 0; y < BoardY; ++y )

{Row = document.createElement( 'tr' );

for ( x = 0; x < BoardX; ++x )

{Cell = document.createElement( 'td' );

Cell.setAttribute( 'id' , "StartCell_" + x + "x" + y );

Cell.appendChild( document.createTextNode( "\u00a0" ) );

Cell.style.border = "1px solid #808080";

Cell.style.padding = "0px";

Cell.style.margin = "0px";

Cell.style.width = CellSize + "px";

Cell.style.height = CellSize + "px";

Row.appendChild( Cell );}

Tbody.appendChild( Row );}

Table.appendChild( Tbody );

Div.appendChild( Table );

PlayingField.appendChild( Div );

MasterDiv.appendChild( PlayingField );}

Функция IsGameComplete отвечает за проверку успешного завершения игры.

{ for ( x = 0; x < BoardX; ++x )

for ( y = 0; y < BoardY; ++y )

{ var CellID = "Cell_" + x + "x" + y;

var Cell = document.getElementById( CellID );

if ( Cell.Occupier == null )

return false; }

return true;}

Подсчет статистики игры

Количество успешных игр, общее количество игр и время последней игры передается через HTTP запрос со страницы игры и записывается в переменные.

gtnew=Request("gttextbox")

cgnew=Request("completedgames")

pgnew=Request("playedgames")

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

SQL= "Select * from Stats Where UID='"&Session("UID")&"'"

RS.Open SQL, Conn

if not RS.EOF then

pgold=RS.Fields("GAMES_PLAYED")

cgold=RS.Fields("GAMES_COMPLETED")

gtold=RS.Fields("LAST_TIME")

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

gtnew=gtnew+gtold

pgnew=pgnew+pgold

cgnew=cgnew+cgold

После того как мы все пересчитали, нужно обновить значения в базе данных:

SQL= "UPDATE Stats Set GAMES_PLAYED='"& pgnew &"', GAMES_COMPLETED='"& cgnew &"', LAST_TIME='"& gtnew &"' Where UID='"&Session("UID")&"'"

А затем вывести на экран обновленный рейтинг, для этого выполняем запрос из базы данных.

SQL= "Select * from Stats order by GAMES_PLAYED Desc"

RS.Open SQL, Conn 'открываем Recordset

<H2 align="center"> Table of results </h2>

<p><table border="1" align="center">

<tr><td>UID</td>

<td>Name</td>

<td>Games completed</td>

<td>Games played</td>

<td>Last time</td></tr>

<%

Do While Not RS.EOF 'перебираем все записи

Response.Write( "<tr> <td> "& RS.Fields("UID") & "</td>")

Response.Write("<td> "& RS.Fields("NAME") & "</td>")

Response.Write("<td> "& RS.Fields("GAMES_COMPLETED") & "</td>")

Response.Write("<td> "& RS.Fields("GAMES_PLAYED") & "</td>")

Response.Write("<td> "& RS.Fields("LAST_TIME") & "</td></tr>")

RS.MoveNext

Loop

%>

</table> <Br> </p>

Заключение

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

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

1. Э. Уильямс, К. Барбер К., П. Ньюкирк, - Active Server Pages в подлиннике - СПб.:БХВ - Петербург, 2001г. - 672 с.

2. http://aleksey.nemiro.ru/my/articles/asp/ADO.html ASP - Работа с базами данных.

3. http://www.codenet.ru/webmast/asp Обзор ASP.

4. Николас Чейз «Active Server Pages 3.0 в примерах», 2001г. - 352 с.

Размещено на Allbest.ru


Подобные документы

  • Особенности визуальной среды программирования Microsoft Visual Studio 2015 Enterprise. Средства объектно-ориентированного программирования. Этапы проектирования программного комплекса. Отладка и тестирование программы игры "Виселица".

    курсовая работа [2,4 M], добавлен 31.01.2016

  • Методика и основные этапы разработки стратегической игры, ее элементы и принцип работы программы. Порядок построения информационной модели. Диаграмма потоков данных и действий. Выбор языка программирования и его обоснование. Критерии качества среды.

    курсовая работа [3,5 M], добавлен 11.12.2012

  • Общая характеристика языков программирования. Краткий обзор C, C++, Java, PHP, Python, Delphi и Visual Basic. Процесс разработки программы игра "Крестики и нолики" с помощью AppWizard. Компиляция и компоновка модулей, определение интерфейса приложения.

    курсовая работа [2,5 M], добавлен 27.05.2014

  • Основы моделирования и разработки Web-сайтов. Обзор и сравнительный анализ языков программирования. Фреймворки, используемые при создании сайта. Разработка графического дизайна, моделирование и создание Web-сайта, руководство по администрированию.

    курсовая работа [1,7 M], добавлен 07.11.2013

  • Описание принципа развивающей игры в слова "Виселица". Разработка программы, реализующей задачу данной игры на языке Delphi. Обоснование выбора среды программирования, листинг файла, результаты отладки и тестирования, руководство для пользователя.

    курсовая работа [572,7 K], добавлен 14.07.2012

  • Особенности программирования аркадных игр в среде Python. Краткая характеристика языка программирования Python, его особенности и синтаксис. Описание компьютерной игры "Танчики" - правила игры, пояснение ключевых строк кода. Демонстрация работы программы.

    курсовая работа [160,3 K], добавлен 03.12.2014

  • Понятие Internet как глобальной мировой системы передачи информации. Анализ системы World Wide Web, ее особенности. Рассмотрение главных целей сайта, создание сайта для магазина продуктов питания. Этапы разработки дизайна сайта и создание базы данных.

    курсовая работа [2,1 M], добавлен 13.07.2012

  • Средства разработки для реализации On-line игры в Интернете: Adobe Flash Pro, Adobe Flash Builder, Apache Flex. Технология интерактивной анимации. Достоинства и недостатки различных средств разработки приложений. История версий программного обеспечения.

    курсовая работа [873,0 K], добавлен 08.12.2013

  • Создание компьютерной игры посредством среды программирования Delphi. Инструменты разработки, компоненты и методы для разработки программы. Логическая и физическая структуры, основные функции и элементы управления программы, ее тестирование и отладка.

    курсовая работа [27,9 K], добавлен 26.07.2014

  • История развития языка программирования Java. История тетриса - культовой компьютерной игры, изобретённой в СССР. Правила проведения игры, особенности начисления очков. Создание интерфейса программы, ее реализация в среде Java, кодирование, тестирование.

    курсовая работа [168,1 K], добавлен 27.09.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.