4336

Разработка гостевой книги для персонального сайта студента

Лабораторная работа

Информатика, кибернетика и программирование

Разработка гостевой книги для персонального сайта студента Необходимое программное обеспечение: Для выполнения лабораторной работы необходимо следующее ПО: Редактор HTML документов (HomeSite 4.5 и выше, AditorPro 3.05 , Блокнот и др.)...

Русский

2012-11-16

80 KB

12 чел.

Разработка гостевой книги для персонального сайта студента

Необходимое программное обеспечение:

Для выполнения лабораторной работы необходимо следующее ПО:

  1.  Редактор HTML документов (HomeSite 4.5 и выше, Aditor Pro 3.05 , Блокнот и др.)
  2.  Файловый менеджер (Windows Commander 4.0 и выше)
  3.  Браузер (Internet Explorer 5.0 и выше)
  4.  Веб сервер Apache 1.3.27 и выше
  5.  Интерпретатор языка PHP 4.2.3 и выше
  6.  СУБД MySQL 3.23.54

Задание

  1.  Разработать форму для ввода данных

Необходимо разработать HTML - форму, через которую будут вводиться записи в гостевую книгу. Разрабатываемая форма должна ОБЯЗАТЕЛЬНО содержать следующие поля:

  •  Имя пользователя (элемент формы text)
    •  E-mail пользователя (элемент формы text)
    •  Сообщение (элемент формы textarea)
    •  Кнопка для отправки данных на сервер (элемент формы submit)
  1.  Разработать таблицу для хранения записей гостевой книги.

Записи, оставленные посетителями сайта в гостевой книге, должны храниться в базе данных. Для хранения записей необходимо в существующей базе данных создать отдельную таблицу, структура которой позволяла бы сохранять данные, полученные от формы (п.1). Следует предусмотреть возможность хранения в таблице даты публикации для каждой записи гостевой книги.

Структуру таблицы базы данных необходимо описать следующим образом:

Название таблицы

Название поля

Тип данных

Описание

  1.  Разработать инициализирующий скрипт

Скрипт, инициализирующий пустую таблицу должен быть разработан по принципу, описанному в л/р №3 часть 2.

  1.  Разработать скрипт гостевой книги

Необходимо разработать скрипт, отображающий все записи гостевой книги и позволяющий посетителю сайта оставить новое сообщение. Добавление новых записей должно осуществляться при помощи разработанной ранее формы (п.1). Сообщения, оставленные в гостевой книге и форма для добавления  записей должны располагаться на одной html-странице, генерируемой скриптом гостевой книги. При добавлении новой записи необходимо осуществлять проверку, содержат ли поля «Имя», «E-mail» и «Сообщение» пустую строку. В случае, если одно из полей содержит пустую строку, необходимо вывести сообщение об ошибке. При обнаружении ошибки запись в базу данных не добавляется.

Ссылка на гостевую книгу должна быть включена  в навигационное меню сайта

Отчет

Отчет о выполнении лабораторной работы должен содержать следующие разделы:

  1.  Титульный лист
  2.  Скрипт, устанавливающий соединение с базой данных
  3.  Описание структуры таблицы
  4.  Скрипт, инициализирующий таблицу в базе данных
  5.  Скрипт, осуществляющий работу гостевой книги

Защита

Защита лабораторной работы осуществляется в специально отведенное время в дисплейном классе университета. Для защиты необходимо предоставить отчет о выполнении лабораторной работы и продемонстрировать версию сайта с элементами PHP и MySQL.

Демонстрация работоспособности сайта осуществляется на рабочей станции дисплейного класса путем загрузки страниц сайта программой просмотра страниц (браузером).

Учащийся допускается к защите ТОЛЬКО ПРИ НАЛИЧИИ отчета и демонстрационной версии сайта.

Пример

  1.  Скрипт, устанавливающий соединение с базой данных (файл connect.php):

<?

define("DBName","mybase"); // название базы данных

define("HostName","localhost"); // название сервера

define("UserName","root"); // логин

define("Password",""); // пароль

// установка соединения

if (!mysql_connect(HostName,UserName,Password)) die ("Невозможно установить соединение");

mysql_select_db(DBName); // выбор текущей базы данных

?>

Здесь указать название своей базы данных: define("DBName","mybase");

  1.  Данные для сайта будут храниться в одной таблице следующего вида

Таблица guestbook

recid

not null primary key auto_increment

ID записи

person

varchar(30) not null

Имя посетителя

message

text not null

Содержимое записи

email

text not null

E-mail посетителя

pubdate

int unsigned not null

Дата добавления записи


  1.  Скрипт, инициализирующий таблицу в базе данных (файл initg.php):

<?

 require("connect.php");

 mysql_query("create table guestbook(

  recid int not null primary key auto_increment,

  person varchar(30) not null,

  message text not null,

  email text,

  pubdate int unsigned not null)");

 echo 'БД успешно создана!';

 echo mysql_error();

?>

  1.  Скрипт, осуществляющий работу гостевой книги (файл guestbook.php)

<?

// Файл содержит скрипт гостевой книги

require ("connect.php"); // установка соединения с базой данных

$error=''; //переменная, в которую будет помещено сообщение об ошибке

$msg_list=''; //переменная, в которую будет помещен список опубликованных сообщений

if (isset($ok)) {

// если нажата кнопка отправки данных - проверяем значения полей

 if ((trim($person)=='') || (trim($message)==''))

  $error='<span class="error">Все поля должны быть заполнены!</span>';

 else {

 $person=addslashes($person);

 $email=addslashes($email);

 $message=addslashes($message);

 $time=time();

 mysql_query("insert into guestbook values(NULL,'$person','$message','$email',$time)");

 }

}

// формируем список опубликованных сообщений для вывода на экран

$q=mysql_query("select * from guestbook");

while($r=mysql_fetch_array($q))

$msg_list.=

'<p><b class="bold">'.date("d.m.Y H:i",$r['pubdate']).'</b>

  <br>'.stripslashes($r['message']).'<br>

  <b class="bold">'.stripslashes($r['person']).'</b>&nbsp;&nbsp;

  <i>'.stripslashes($r['email']).'</i></p>';

if ($msg_list!='') $msg_list.='<hr size="1" width="100%">';

$title='..::Гостевая::..';

?>

<html>

<head>

<title>Персональный сайт студента <? echo  $title; ?></title>

<link href="image/style.css" rel="stylesheet">

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

<meta name="keywords" content="студент, персональный сайт, <? echo $meta; ?>">

</head>

<center><body bgcolor="#FFFFFF">

<script language="Javascript">

<!--

//masivi

 var PassivePictures=new Array(5);

 var ActivePictures=new Array(5);

 ActivePictures[0]="image/rezum.gif";

 PassivePictures[0]="image/rezum1.gif";

 ActivePictures[1]="image/biogr.gif";

 PassivePictures[1]="image/biogr1.gif";

 ActivePictures[2]="image/file.gif";

 PassivePictures[2]="image/file1.gif";

 ActivePictures[3]="image/ssilk.gif";

 PassivePictures[3]="image/ssilk1.gif";

 ActivePictures[4]="image/gostev.gif";

 PassivePictures[4]="image/gostev1.gif";

function Change(button,param,type) { //zamena

 if (type=="act") button.src=ActivePictures[param];

 else button.src=PassivePictures[param];

}

-->

</script>

<table width="788" height="100%" cellspacing="5" cellpadding="0" border="0" bgcolor="white">

<TR>

<TD width="200" height="5"><left><span class="verh">Персональный сайт студента 4-го курса</span></left></TD></TR>

   <TD width="200" height="50" bgcolor="#ffcc66"><center><img src="Image/verh.gif" width="100" height="51" border="0" align="center" alt=""></center>

 </TD>

   <TD bgcolor="#00509D"><center><span class="title"><? echo $title; ?></span></center></TD>

<tr>

 <td width="200" valign="top" bgcolor="FFFFFF">

 <br>

  <center><a href="index.php?page=0"><img src="image/rezum1.gif" width="157" height="33" align="center" alt="Резюме" border="0"

       onmouseover="Change(this,0,'act')" onmouseout="Change(this,0,'pas')"></a></center><br><br>

  <center><a href="index.php?page=1"><img src="image/biogr1.gif" width="157" height="33" align="center" alt="Биография" border="0"

      onmouseover="Change(this,1,'act')" onmouseout="Change(this,1,'pas')"></a></center><br><br>

  <center><a href="index.php?page=2"><img src="image/file1.gif" width="157" height="33" align="center" alt="Файлы" border="0"

     onmouseover="Change(this,2,'act')" onmouseout="Change(this,2,'pas')"></a></center><br><br>

  <center><a href="index.php?page=3"><img src="image/ssilk1.gif" width="157" height="33" align="center" alt="Ссылки" border="0"

      onmouseover="Change(this,3,'act')" onmouseout="Change(this,3,'pas')"></a></center><br><br>

  <center><a href="guestbook.php"><img src="image/gostev1.gif" width="157" height="33" align="center" alt="Гостевая" border="0"

      onmouseover="Change(this,4,'act')" onmouseout="Change(this,4,'pas')"></a></center><br><br>

  <hr size="2" width="100% color="#006699">

      <center><img src="Image/web.gif" width="48" height="48" border="0" align="top"></center>

</p></p>  <td>

  <table width="100%" cellspacing="0" cellpadding="0" border="0">

   <tr>

 <td class="normal">

 <? echo $msg_list.$error; ?>

 <form action="guestbook.php" method="post">

  <b class="bold">Имя</b><br>

  <input type="text" name="person" maxlength="30" size="35"><br><br>

  <b class="bold">Еmail</b><br>

  <input type="text" name="email" maxlength="30" size="35"><br>

  </select><br><br>

  <b class="bold">Сообщение</b><br>

  <textarea name="message" cols="30" rows="5"></textarea><br><br>

  <input type="submit" name="ok" value="Отправить">

 </form>

 </td>

</tr>

  </table>

 </td>

</tr>

</table>

<a href="drop.php">Удалить БД | </a><a href="create.php">  Создать БД | </a><a href="initg.php"> Создать БД Гостевой книги</a>

</body>

</html>


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

  1.  Р. Айзенменгер, "Справочник HTML 3.2/4.0", "Бином", Мск 1998
  2.  Дуванов А.А., “WEB – конструирование HTML”, “BHV” СПб  2003
  3.  Дэн Ливингстон, Мика Браун, “CSS и DHTML WEB - профессионалам” , “BHV” Киев 2001
  4.  Д. Кастаньетто и др., "Профессиональное PHP программирование", "Символ", СПб 2001
  5.  М. Грабер, "Введение в SQL", "Лори", Мск 1996
  6.  Официальный сайт разработчиков PHP http://www.php.net
  7.  Официальный сайт разработчиков MySQL http://www.mysql.com
  8.  Официальный сайт разработчиков Apache http://www.apache.org


 

А также другие работы, которые могут Вас заинтересовать

4323. Стратегия выбора системы управления сайтом: сравнение систем по формальным параметрам 33.5 KB
  Стратегия выбора системы управления сайтом: сравнение систем по формальным параметрам Введение В статье речь пойдет о выборе системы управления для коммерческого Web-сайта. В настоящее время утверждение о необходимости разработки Web-сайта компании,...
4324. Разработка текстовой версии персонального сайта студента 420.5 KB
  Учебная цель: Провести сбор вспомогательной информации. Получить практические навыки работы в виртуальной среде. Оценить свои возможности по созданию html-страничек. Изучить основы работы с тегами. Программное обеспечение для выполнения лабора...
4325. Модификация сайта студента с использованием графики 99 KB
  Цель работы: Получить практические навыки работы в виртуальной среде. Создать каркас сайта пользователя с использованием изображений. Изучить основы организации форм в HTML. Программное обеспечение Дя выполнения лабораторной работы необходимо следую...
4326. Модификация персонального сайта студента с использованием CSS 96.5 KB
  Цель работы: изучение и применение каскадных таблиц стилей (CSS) при оформлении (разметке) Web-страниц, формирование умений разметки страниц с помощью блоков (DIV) и CSS Порядок выполнения работы: Ознакомиться с заданием на выполнение лабораторной р...
4327. Язык Javascript и его модификации 147.97 KB
  Язык Javascript и его модификации. HTML+JavaScript Начиная изучать web-технологии, Вы узнали, что все web-документы создаются с помощью языка HTML, который не является языком программирования, а лишь языком разметки гипертекстовых документов. Тепер...
4328. Модификация персонального сайта студента с использованием Javascript 113.5 KB
  Цель работы: Получить практические навыки работы в виртуальной среде. Изучить основы языка JScript. Программное обеспечение Для выполнения лабораторной работы необходимо следующее ПО: Редактор HTML документов (желательно HomeSite 4.5 и выше)...
4329. Основы JavaScript. Результаты работы скриптов. 339 KB
  Введение Основное преимущество языка разметки документов - HTML состоит в его простоте. Каждый, после недолгих экспериментов может научиться создавать достаточно красивые и информационно наполненные документы для своего сайта. Основным недостатком...
4330. Инструментальные средства для создания собственной системы управления контентом сайта 1.11 MB
  Инструментальные средства для создания собственной системы управления контентом сайта. Цели лабораторного практикума: получение навыков и изучение основных приемов создания персонального Web-сервера. знакомство с программными продуктами:...
4331. Системы управления контентом сайта CMS Mambo 2.41 MB
  Системы управления контентом сайта (ContentManagementSystems) CMSMambo Цели лабораторного практикума: получение навыков создания персонального Web-сайта с помощью системы управления контентом сайта Mambo. Скачать более поздню...