{
if ($active)
{echo "<td align=\"center\" width=\"$width%\"><a href=\"$url\"><font color=\"blue\">$name</font></a></td>\n";
}
else {
echo "<td align=\"center\" width=\"$width%\"><font color=\"blue\"><b>$name<b></font></td>\n";
}
5. Сопровождение. Руководство пользователя
5.1 Просмотр сайта
Просмотр сайта осуществляется при помощи гиперссылок и кнопок.
5.2 Описание
При выполнении любого действия ваши действия будут подкрепляться сообщениями. Это могут быть как сообщения об ошибках, так и сообщения об удачном выполнении поставленной задачи
6. Список использованной литературы
1. Андрей Шкрыль. Программируем для web-сайта. "БХВ-Петербург", Санкт-Петебург, 2006.
2. Т.Карпова. Базы данных. Модели, разработка, реализация. "Питер", Санкт-Птербург, 2002.
3. Алексей Гончаров. Самоучитель HTML.
4. А. Качанов, В. Ткаченко, А. Головин. Букварь по PHP и MySQL Версия 1.1 (от 16.05.2000)
7. Приложение
Содержание файла "inc/page.inc"
<?
classPage
{
var $title="Библиотека: Объявления.";
var $keywords="Главная";
var $content;
var $buttons=array(
"Главная" => "index.php",
"Книги" => "books.php",
"Пользователь" => "users.php",
"Библиотекарская" => "libry.php"
);
var $subbuttons=array(
array(
"Объявления" => "index.php",
"Информация" => "index_info.php"
),
array(
"Список всех книг" => "books.php",
"Области знаний" => "books_aok.php",
"Поиск Книг" => "books_search.php"
),
array(
"Читатель" => "users.php"
),
array(
"Логин" => "libry.php",
"Действие" => "libry_add.php"
)
);
//-----------------------------------------------------------
function SetContent($newcontent)
{
$this->content=$newcontent;
}
//-----------------------------------------------------------
function SetTitle($newtitle)
{
$this->title=$newtitle;
}
//-----------------------------------------------------------
function SetKeywords($newkeywords)
{
$this->keywords=$newkeywords;
}
//-----------------------------------------------------------
function SetButtons($newbuttons)
{
$this->buttons=$newbuttons;
}
//-----------------------------------------------------------
function SetSubButtons($newsubbuttons)
{
$this->subbuttons=$newsubbuttons;
}
//-----------------------------------------------------------
function Display()
{
echo "<html>\n<head>\n";
$this -> DisplayTitle();
$this -> DisplayKeywords();
$this -> DisplayStyles();
echo "</head>\n";
$this -> DisplayHeader();
$this -> DisplayMenu($this->subbuttons, $this->buttons);
echo $this->content."\n";
$this -> DisplayFooter();
echo "</body>\n</html>\n";
}
//-----------------------------------------------------------
function DisplayTitle()
{
echo "<title> $this->title </title>\n";
}
//-----------------------------------------------------------
function DisplayKeywords()
{
//echo"<META name=\"keywords\" content=\"$this->keywords\">"
echo "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1251\">\n";
}
//-----------------------------------------------------------
function DisplayStyles()
{
}
//-----------------------------------------------------------
function IsURLCurrentPage($url)
{
if (strpos($GLOBALS[SCRIPT_NAME], $url)==false)
{
return false;
}
else {
return true;
}
}
//-----------------------------------------------------------
function DisplayHeader()
{
#echo htmlspecialchars("");
echo "<body bgcolor=\"#FFFFFF\" text=\"#000000\">\n";
echo "<table width=\"100%\" border=\"0\" height=\"95%\" cellspacing=\"0\" cellpadding=\"0\" bgcolor=\"#FFFFFF\">\n";
echo "<tr valign=\"Top\">\n";
echo "<td width=\"150\">\n";
echo "<table width=\"100%\" border=\"0\" height=\"100%\" cellspacing=\"5\" cellpadding=\"0\">\n";
echo "<tr>\n";
echo "<td height=\"140\"> <a href=\"http://www.chebnet.com\"><img src=\"image/book_logo.jpg\" width=\"140\" height=\"140\" border=\"0\"></a></td>\n";
echo "</tr>\n";
}
//-----------------------------------------------------------
function DisplayMenu($subbtns, $btns)
{
//---Колонка подменю---
echo "<tr valign=\"Top\">\n";
echo "<tdheight=\"100%\">\n";
//---Добавляются пункты подменю---
for($i=0; $i<count($btns); $i++)
{
while(list($subname, $suburl) = each($subbtns[$i]))
{
if($this->IsURLCurrentPage(substr($suburl,0,5)))
{
if($this->IsURLCurrentPage($suburl))
{
echo "<font color=\"blue\" size=\"2\"><b>$subname</b></font><br>\n";
}
else {
echo "<a href=\"$suburl\"><font color=\"blue\" size=\"2\">$subname</font></a><br>\n";
}
}
}
}
//---Дорисовывается колонка подменю---
echo " </td>\n";
echo " </tr>\n";
echo " </table>\n";
echo " </td>\n";
echo " <td width=\"3\" background=\"image/bg_sadowside.gif\"></td>\n";
echo " <td>\n";
//---Отрисовывается центральная колонка---
echo "<table width=\"100%\" border=\"0\" height=\"120\" cellspacing=\"0\" cellpadding=\"0\">\n";
echo "<tr valign=\"Top\">\n";
echo "<td height=\"110\"><img src=\"image/book_top.jpg\" width=\"100%\" height=\"110\" border=\"0\"></td>\n";
echo "</tr>\n";
echo "</table>\n";
echo "<table width=\"100%\" border=\"0\" height=\"25\" cellspacing=\"0\" cellpadding=\"0\">\n";
echo "<tr>\n";
#echo "<td width=\"2%\"></td>\n";
reset($btns);
$width = 98/count($btns);
while (list($name, $url) = each($btns))
{
$this->DisplayButton($width, $name, $url,!$this->IsURLCurrentPage(substr($url,0,5)));
}
echo "</tr>\n";
echo "</table>\n";
echo "<table width=\"100%\" border=\"0\" height=\"15\" cellspacing=\"0\" cellpadding=\"0\">\n";
echo "<tr>\n";
echo "<td background=\"image/bg_shadow_top.gif\"></td>\n";
echo "</tr>\n";
echo "</table>\n";
echo "<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n";
echo "<tr valign=\"top\">\n";
echo "<td height=\"600\" background=\"image/bg_circle_left.gif\" width=\"19\"></td>\n";
echo "<td height=\"600\" background=\"image/bg_rect.gif\" text-align=\"justify\">\n";
echo "<table width=\"100%\" border=\"0\" height=\"100%\" cellspacing=\"10\">\n";
echo "<tr><td valign=\"top\">\n";
}
//-----------------------------------------------------------
function DisplayButton($width, $name, $url, $active = true)
{
if ($active)
{
echo "<td align=\"center\" width=\"$width%\"><a href=\"$url\"><font color=\"blue\">$name</font></a></td>\n";
}
else {
echo "<td align=\"center\" width=\"$width%\"><font color=\"blue\"><b>$name<b></font></td>\n";
}
}
//-----------------------------------------------------------
function DisplayFooter()
{
echo "</td></tr>\n";
echo "</table>\n";
echo "</td>\n";
echo "<td height=\"600\" background=\"image/bg_circle_rigth.gif\" width=\"22\"></td>\n";
echo "</tr>\n";
echo "</table>\n";
echo "<table width=\"100%\" border=\"0\" height=\"15\" cellspacing=\"0\" cellpadding=\"0\">\n";
echo "<tr>\n";
echo "<td height=\"15\" background=\"image/bg_shadow_buttom.gif\"></td>\n";
echo "</tr>\n";
echo "</table>\n";
echo "</td>\n";
echo "<td width=\"150\"><center><font size=\"2\">";
echo "<form method=\"post\" action=\"users.php\">\n";
echo "<table>\n";
echo "<tr><td valign=\"top\" colspan=\"2\" height=\"140\"><font size=\"2\"><center>".date("jS F Y")."</center></font></td></tr>\n";
echo "<tr><td width=\"2\"></td><td>\n";
echo "</td></tr>\n</table>\n";
echo "</form>\n";
echo "</font></center></td>\n";
echo "</tr>\n";
echo "</table>\n";
echo "<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" width=\"100%\" style=\"padding: 0px;\">\n";
echo "<tr>\n";
echo "<td width=\"100%\" align=\"center\">\n";
echo "<marqueescrollamount=\"2\">Просьба возвращать книги вовремя. И помните в Библиотеке должна быть тишина!</marquee><!--code--></td></tr></table>\n";
}
//-----------------------------------------------------------
}
?>
Содержание файла "inc/check.inc":
<?
$surname=trim($surname);
$name=trim($name);
$patronymic=trim($patronymic);
$day=trim($day);
$month=trim($month);
$year=trim($year);
$phone=trim($phone);
$address=trim($address);
if(strlen($surname)==0)$error=$error."\tвынезаполнилиполе \"Фамилия\"<br>\n";
if(strlen($name)==0)$error=$error."\tвынезаполнилиполе \"Имя\"<br>\n";
if(strlen($patronymic)==0)$error=$error."\tвынезаполнилиполе \"Отчество\"<br>\n";
if($day==0 || $month==0 || $year==0)$error=$error."\tвынезаполнилиполе \"деньвашегорождения\"<br>\n";
//elseif (!checkdate($mouth, $day, $year))$error=$error."\tвыввелинеправильныйформатдатывашегорождения<br>\n";
elseif (time() - mktime(0, 0, 0, $mouth, $day, $year)< $g_limit_years*365*24*60*60) $error=$error."\tВынедостигли 17-тилетия<br>\n";
if(strlen($phone)==0)$error=$error."\tвы не записали свой номер телефона<br>\n";
if(strlen($address)==0)$error=$error."\tвынезаполнилиполе \"адрес\"<br>\n";
?>
Содержаниефайла"inc/connect_bd.inc"
<?
$db_name="Library";
$host="localhost";
$user="root";
$passw="";
$link=mysql_connect($host,$user,$passw) or die(mysql_errno($link).mysql_error($link));
$db=mysql_select_db($db_name,$link) or die(mysql_errno($link).mysql_error($link));
?>
Содержаниефайла"inc/global_vars.inc":
<?
$source_vars=mysql_query("select * from `glb_vars` limit 0,1", $link);
$result=mysql_fetch_array($source_vars);
$g_adm_pass=$result["adm_pass"];
$g_limit_years=$result["lim_years"];
$g_limit_days=$result["lim_days"];
$g_limit_books=$result["lim_books"];
$g_limit_publ_book=$result["lim_publ_book"];
$g_limit_hr=$result["lim_hr"];
$g_color_error=$result["color_error"];
?>
Содержаниефайла"index.php":
<?
require ("inc/page.inc");
$homepage = new page();
$homepage ->SetTitle("Библиотека: Объявления");
$homepage -> SetContent("
<center><p><b>Объявления.</b><p></center>
<p>Просрочившим сдачу книг начисляется двойная пеня с 1-го января этого года.</p>");
$homepage -> Display();
?>
Содержаниефайла"index_info.php":
<?
include ("inc/connect_bd.inc");
include ("inc/global_vars.inc");
$source=mysql_query("select count(`num_reader`) from `Readers`", $link) or die(mysql_errno($link).mysql_error($link));
$result=mysql_fetch_row($source);
$num_rdrs_reg=$result[0];
$source=mysql_query("select count(`num_inventory`), count(distinct `num_book`) from `Books`", $link) or die(mysql_errno($link).mysql_error($link));
$result=mysql_fetch_row($source);
$num_bk_all=$result[0];
$num_bk_unc=$result[1];
$source=mysql_query("select count(`num_book`) from `Books` where `presence`>0", $link) or die(mysql_errno($link).mysql_error($link));
$result=mysql_fetch_row($source);
$num_bk_read=$result[0];
$text="<fieldset>\n
<legend>Информация по книгам</legend><br>\n
•Всего книг/Уникальных: <b>".$num_bk_all."</b>/<b>".$num_bk_unc."</b><br>\n
•В данный момент на руках у читателей <b>".$num_bk_read."</b> книг.<br>\n
•Книги выдаются на <b>".$g_limit_days."</b> дней.<br>\n
•В библиотеке находятся книги, не старше <b>".$g_limit_publ_book."</b> года издательства.<br>\n