Учебная работа. Курсовая работа: Программа Футбольный болельщик
Федеральное государственное образовательное учреждение высшего проф образования
«Чувашский муниципальный институт им. И.Н. Ульянова»
Факультет информатики и вычислительной техники
Кафедра «Информационно-вычислительных систем»
Дисциплина «Базы данных»
Объяснительная записка к курсовой работе
Тема: «Футбольный болельщик»
Выполнил
Проверил
Чебоксары – 2009
Содержание
1 Задание
2 анализ. Предметная область
2.1 Описание предметной области (уточненной у педагога)
2.2 Список и описание функций приложения обработки базы данны
2.3 Список и описание сущностей и атрибутов базы данных
3 Проектирование. Нормализация базы данных. Схема данных
3.1 Пошаговое описание нормализации базы данных (способом ER-диаграмм)
3.2 Схема данных
3.3 Список и описание таблиц и их полей (с указанием типов данных и ограничений) в сводной таблице
4 Программная часть. Управление программера
4.1 Предназначение и условия внедрения программки
4.2 Черта программки
4.3 Воззвание к программке
4.4 Входные и выходные данные
4.4.1 Словесное описание
4.4.2 Описание функций
4.5 Сообщения
5 Сопровождение. Управление юзера
5.1 Область внедрения программки
5.2 Короткое описание способностей
5.3 Уровень подготовки юзера
5.4 Программные и аппаратные требования к системе
5.5 Подготовка к работе
5.5.1 Состав дистрибутива
5.5.2 Аварийные ситуации
5.5.3 Советы по освоению
6 Перечень использованной литературы
7 приложение 1. Начальный текст приложения
1. Задание
Футбольный болельщик
Написать систему для ведения турнирных таблиц чемпионатов и кубков, в каких участвуют русские команды (чемпионаты как русские, так и международные). Система обязана содержать справочную информацию о командах (история, составы, тренеры, игры и победы), игроках (биография, история), тренерах (биография, история, в которых командах играл, если был игроком) и арбитрах (биография, какие матчи судил, в которых командах играл, если был игроком).
В турнирной таблице учитываются очки (3 – за победу, 1 – за ничью, 0 за поражение), также забитые и пропущенные голы, пространство проведения. необходимо хранить информацию о любом матче.
2. Анализ. Предметная область
2.1 Описание предметной области
Нужно создать информационный ресурс, где хранится информация о футбольных командах, игроках, тренерах, арбитрах, чемпионатах и матчах. В согласовании с занесенными данными о матче выводить турнирную таблицу и таблицу результатов.
2.2 Список и описание функций приложения обработки базы данных
1. Система обязана хранить справочную информацию по игрокам, тренерам, командам, арбитрам, чемпионатам.
2. Система обязана регистрировать и хранить информацию о матчах: чемпионат; какая команда игралась в гостях, а какая дома; количество забитых и пропущенных голов команды, которая играет дома; дату матча.
3. Система обязана выводить турнирную таблицу, в какой хранится информация о количестве игр, количестве забитых и пропущенных мячей, количество побед, проигрышей и ничьих, количество очков.
4. Система обязана выводить таблицу результатов(сетку).
5. Система обязана производить поиск матчей.
2.3 Список и описание сущностей базы данных
Игроки. Любой игрок имеет неповторимый номер, ФИО, биографические сведения и амплуа.
Команды. За каждой командой закреплен соответственный код, заглавие, состав и короткие исторические сведения.
Тренеры. Любой тренер имеет неповторимый номер , ФИО, биографические сведения.
Судьи. Любой арбитр имеет неповторимый номер, ФИО, биографические сведения. Чемпионаты. Хранится неповторимый номер чемпионата, заглавие и год проведения.
Матчи. Хранится информация о чемпионате, в рамках которого проводился матч, дата матча, команда, которая игралась дома, команда, которая игралась в гостях, количество забитых и пропущенных первой командой мячей.
2.4 Список и описание всех атрибутов базы данных
1
idChemp
Номер чемпионата
2
NameChemp
Заглавие чемпионата
3
Year
Год проведения чемпионата
4
idCom
Номер команды
5
NameCom
Заглавие команды
6
AdressCom
адресок команды
7
Gorod
город команды
8
History
Короткие исторические сведения о команде
9
DateSozd
Год основания команды
10
IdMatch
Неповторимый код матча
11
DateMatch
Дата матча
12
CityMatch
город, где проводился матч
13
idPlayer
Неповторимый код игрока
14
FPlayer
Фамилия игрока
15
IPlayer
имя игрока
16
OPlayer
Отчество игрока
17
DateRozhd
Дата рождения игрока
18
Grazhd
Гражданство игрока
19
Amplua
Амплуа игрока
20
BiografPlayer
Биографические сведения о игроке
21
idTren
Неповторимый код тренера
22
FTren
Фамилия тренера
23
ITren
имя тренера
24
OTren
Отчество тренера
25
DateRozhd
Дата рождения тренера
26
Gorod
Родной город тренера
27
BiografTren
Биографические сведения о тренере
28
idSud
Неповторимый код судьи
29
FSud
Фамилия судьи
30
ISud
имя судьи
31
OSud
Отчество судьи
32
DateRozhd
Дата рождения судьи
33
Gorod
Родной город судьи
34
BiografSud
Биографические сведения о арбитре
35
Doma
Неповторимый код команды, которая игралась дома
36
Gost
Неповторимый код команды, которая игралась в гостях
37
ZabMjach
Кол-во забитых мячей командой, которая игралась дома
38
PropMjach
Кол-во пропущенных мячей командой, которая игралась дома
39
Дата рождения тренера
40
DatePokup
Дата покупки игрока
41
DateProdazh
Дата реализации игрока
42
DateNaznach
Дата предназначения тренера
43
DateUchod
Дата ухода тренера из команды
44
Dozhn
Должностьтренера в команде
3. Проектирование. Нормализация базы данных. Схема данных
3.1 Пошаговое описание нормализации базы данных (способом ERдиаграмм)
Нормализуем каждую связь используя надлежащие правила нормализации ER-диаграмм. В итоге получим готовую схему данных.
3.2 Схема данных
Chempionats (idChemp,NameChemp, Year)
Command(idCom, NameCom, AdressCom, Gorod, History, DateSozd, mini_img, big_img)
CommandInChemp (idChemp,idCom)
Matches(idMatch, idChemp, DateMatch, CityMatch)
MatchRezult (idMatch, Doma, Gost, ZabMjach, PropMjach)
Players (idPlayer, FPlayer, IPlayer, OPlayer, DateRozhd, Grazhd, BiografPlayer, Amplua)
Sostav (idCom, idPlayer, DatePokup, DateProdazh)
Sudja (idSud, FSud, ISud, OSud, DateRozhd, Gorod, BiografSud)
SudjiInMatch(idMatch, idSud)
Treners (idTren, FTren, ITren, OTren, DateRozhd, Gorod, BiografTren)
TrenersForCommand (idCom, idTren, DateNaznach, DateUchod)
3.3 Список и описание таблиц и их полей в сводной таблице
Chempionats
idChemp
Номер чемпионата
int
NameChemp
Заглавие чемпионата
Varchar(255)
Year
Год проведения чемпионата
Year(4)
Command
idCom
Номер команды
Int
NameCom
Заглавие команды
Varchar(255)
AdressCom
адресок команды
Varchar(255)
Gorod
город команды
Varchar(255)
History
Короткие исторические сведения о команде
Text
DateSozd
Год основания команды
Date
mini_img
логотип малеханького размера
Varchar(255)
big_img
Логотип огромного размера
Varchar(255)
CommandInChemp
idChemp
Номер чемпионата
int
idCom
Номер команды
Int
Matches
IdMatch
Неповторимый код матча
Int
idChemp
Номер чемпионата
int
DateMatch
Дата матча
Date
CityMatch
город, где проводился матч
Varchar(255)
MachRezult
IdMatch
Неповторимый код матча
Int
Doma
Неповторимый код команды, которая игралась дома
int
Gost
Неповторимый код команды, которая игралась в гостях
int
ZabMjach
Кол-во забитых мячей командой, которая игралась дома
Int
PropMjach
Кол-во пропущенных мячей командой, которая игралась дома
Int
Players
idPlayer
Неповторимый код игрока
Int
FPlayer
Фамилия игрока
Varchar(255)
IPlayer
имя игрока
Varchar(255)
OPlayer
Отчество игрока
Varchar(255)
DateRozhd
Дата рождения игрока
Date
Grazhd
Гражданство игрока
Varchar(255)
Amplua
Амплуа игрока
Varchar(255)
BiografPlayer
Биографические сведения о игроке
Text
Sostav
idCom
Номер команды
Int
idPlayer
Неповторимый код игрока
Int
DatePokup
Дата покупки игрока
Date
DateProdazh
Дата реализации игрока
date
Treners
idTren
Неповторимый код тренера
Int
FTren
Фамилия тренера
Varchar(255)
ITren
имя тренера
Varchar(255)
OTren
Отчество тренера
Varchar(255)
DateRozhd
Дата рождения тренера
Date
Gorod
Родной город тренера
Varchar(255)
BiografTren
Биографические сведения о тренере
Text
TrenersForCommand
idCom
Номер команды
Int
idTren
Неповторимый код тренера
Int
DateNaznach
Дата предназначения тренера
Date
DateUchod
Дата ухода тренера из команды
Date
Dozhn
Должностьтренера в команде
Varchar(255)
Sudja
idSud
Неповторимый код судьи
Int
FSud
Фамилия судьи
Varchar(255)
ISud
имя судьи
Varchar(255)
OSud
Отчество судьи
Varchar(255)
DateRozhd
Дата рождения судьи
Date
Gorod
Родной город судьи
Varchar(255)
BiografSud
Биографические сведения о арбитре
Text
SudjiInMatch
IdMatch
Неповторимый код матча
Int
idSud
Неповторимый код судьи
Int
4. Программная часть. Управление программера
4.1 Предназначение и условия внедрения программки
программка создана для хранения и вывода данных о командах, игроках, арбитрах, тренерах, чемпионатах и матчах. Также она генерирует таблицу результатов и турнирную таблицу на основании данных о матче.
4.2 Черта программки
программка владеет обычными временными чертами и обычным режимом работы.
4.3 Воззвание к программке
Для воззвания к программке есть клавиши и выпадающие списки, а так же гиперссылки для удобства перемещения по веб-сайту.
4.4 Входные и выходные данные
4.4.1 Словесное описание
Странички содержат ряд ссылок по которым осуществляется переход на остальные странички
<div class=»razdelit»>Списки</div>
<ul class=»nav_ul»>
<li><a target="_blank" href=»command.php»>Команды </a></li>
<li><a target="_blank" href=»player.php»>Игроки </a></li>
<li><a target="_blank" href=»sudja.php»>Судьи </a></li>
<li><a target="_blank" href=»trener.php»>Тренеры </a></li>
<li><a target="_blank" href=»chempionats.php»>Чемпионаты </a></li>
Странички «Команды» (command.php), «Игроки» (player.php), «Судьи» (sudja.php), «Тренеры» (treners.php), «Чемпионаты» (chempionats.php), «Матчи» (match.php), отображаетсоответственносписоккоманд, игроков, арбитров, тренеров, чемпионатовиматчейвнесенныхвбазу:
<?php
$zapros = «SELECT * From (Matches INNER JOIN MatchRezult ON Matches.idMatch=MatchRezult.idMatch),Chempionats WHERE Chempionats.idChemp=Matches.idChemp».$wyear.$wchemp;
$result = mysql_query($zapros, $db);
while ($myrow = mysql_fetch_array($result))
{
$doma = $myrow[«Doma»];
$res2 = mysql_query(«SELECT NameCom FROM MatchRezult, Command WHERE idCom=’$doma'»);
$row2 = mysql_fetch_array($res2);
$gost = $myrow[«Gost»];
$res3 = mysql_query(«SELECT NameCom FROM MatchRezult, Command WHERE idCom=’$gost'»);
$row3 = mysql_fetch_array($res3);
printf( «<tr class=’tabler2′>
<td class=’tabler2′>%s</td>
<td class=’tabler2′><a target="_blank" href=’view_match.php?id=%s’ >%s:%s</a></td>
<td class=’tabler2′>%s</td>
<td class=’tabler2′>%s</td>
<td class=’tabler2′>%s</td>
</tr>»,$row2[0], $myrow[«idMatch»],$myrow[«ZabMjach»],$myrow[«PropMjach»], $row3[0], $myrow[«DateMatch»],$myrow[«CityMatch»]);
}
?>
Страничка «Таблица »(table.php) производит подсчет очков, количества игр, различия меж забитыми и пропущенными мячами, количества поражений, побед и ничьих установок в соответственном чемпионате:
<?php
$zapros=»SELECTID,NameCom, Gorod, sum(igrDoma) igr, sum(zab)-sum(prop) mjach, sum(ochki) ochki,sum(vdoma) vdoma,sum(ndoma) ndoma,sum(pdoma) pdoma,sum(vgost) vgost,sum(ngost) ngost,sum(pgost) pgost, sum(prgost) prgost, sum(zabgost) zabgost, sum(prdoma) prdoma, sum(zabdoma) zabdoma
FROM(
SELECT Command.idCom as ID, NameCom, Gorod, count(Gost) as igrDoma, PropMjach zab,ZabMjach prop,
CASE
WHEN PropMjach-ZabMjach>0
THEN ‘3’
WHEN PropMjach-ZabMjach=0
THEN ‘1’
ELSE ‘0’
END ochki,
CASE
WHEN PropMjach-ZabMjach>0
THEN ‘1’
ELSE ‘0’
END vgost,
CASE
WHEN PropMjach-ZabMjach=0
THEN ‘1’
ELSE ‘0’
END ngost,
CASE
WHEN PropMjach-ZabMjach<0
THEN ‘1’
ELSE ‘0’
END pgost,0 vdoma,0 ndoma,0 pdoma, PropMjach zabgost,ZabMjach prgost, 0 prdoma, 0 zabdoma
FROM Command, Chempionats, MatchRezult, Matches
WHERE NameChemp=’Чемпионат Рф’ and
Matches.idMatch=MatchRezult.idMatch and
Command.idCom=Gost and
Matches.idChemp=Chempionats.idChemp».$wyear.»GROUP BY MatchRezult.idMatch
UNION ALL
SELECT Command.idCom as ID, NameCom, Gorod, count(Doma) as igrDoma, ZabMjach zab, PropMjach prop,
CASE
WHEN PropMjach-ZabMjach<0
THEN ‘3’
WHEN PropMjach-ZabMjach=0
THEN ‘1’
ELSE ‘0’
END ochki, 0,0,0,
CASE
WHEN PropMjach-ZabMjach<0
THEN ‘1’
ELSE ‘0’
END vgost,
CASE
WHEN PropMjach-ZabMjach=0
THEN ‘1’
ELSE ‘0’
END ngost,
CASE
WHEN PropMjach-ZabMjach>0
THEN ‘1’
ELSE ‘0’
END pgost, 0 zabgost, 0 prgost, PropMjach prdoma,ZabMjach zabdoma
FROM Command, Chempionats, MatchRezult, Matches
WHERE NameChemp=’Чемпионат Рф’ and
Matches.idMatch=MatchRezult.idMatch and
Command.idCom=Doma and
Matches.idChemp=Chempionats.idChemp».$wyear.»GROUP BY MatchRezult.idMatch
) xxx
GROUP BY ID ORDER BY ochki desc»;
$result = mysql_query($zapros, $db);
$i=1;
while($myrow = mysql_fetch_array($result))
{
printf(» <tr>
<td class=’tabler2′ align=’right’>%s. </td>
<td class=’tabler2′ align=’left’> <a target="_blank" href=’view_command.php?id=%s’ >%s</a>(%s)</td>
<td class=’tabler2′ align=’center’> %s</td>
<td class=’tabler2′ align=’right’> %s</td>
<td class=’tabler2′ align=’center’> %s</td>
<td class=’tabler2′ align=’center’> </td>
<td class=’tabler2′ align=’center’> %s</td>
<td class=’tabler2′ align=’center’> %s</td>
<td class=’tabler2′ align=’center’> %s</td>
<td class=’tabler2′ align=’right’> %s — %s</td>
<td class=’tabler2′ align=’right’> </td>
<td class=’tabler2′ align=’center’> %s</td>
<td class=’tabler2′ align=’center’> %s</td>
<td class=’tabler2′ align=’center’> %s</td>
<td class=’tabler2′ align=’right’> %s — %s</td>
<td class=’tabler2′ align=’right’> </td>
</tr>»,$i,$myrow[‘ID’],$myrow[‘NameCom’],$myrow[‘Gorod’],$myrow[‘igr’],$myrow[‘mjach’],$myrow[‘ochki’], $myrow[‘vdoma’], $myrow[‘ndoma’], $myrow[‘pdoma’], $myrow[‘zabdoma’], $myrow[‘prdoma’], $myrow[‘vgost’], $myrow[‘ngost’], $myrow[‘pgost’], $myrow[‘zabgost’], $myrow[‘prgost’]
);
$i++;
}
?>
Страничка «Результаты »(resгlt.php) генерирует турнирную сетку в согласовании с плодами матчей:
<?php
$zapros = «SELECT Command.idCom as ID, NameCom, Gorod
FROM Command, Chempionats, CommandInChemp
WHERE NameChemp=’ЧемпионатРоссии’ and
Command.idCom=CommandInChemp.idCom and
Chempionats.idChemp=CommandInChemp.idChemp».$wyear.» GROUP BY Command.idCom»;
$result = mysql_query($zapros, $db);
$i=1;
$k=1;
printf(» <tr>
<td width=’25’ class=’tabler’> </td>
<td width=’50’ class=’tablerrez’> команда</td>»);
while ($myrow = mysql_fetch_array($result))
{
printf(«<td align=’center’ width=’25’ class=’tablerrez’> %s</td>», $i);
$comarray[$i]=$myrow[‘ID’];
$i++;
}
printf(» </tr>»);
$result = mysql_query($zapros, $db);
while($myrow = mysql_fetch_array($result))
{
$c=1;
$zapis=1;
printf(» <tr>
<td width=’25’ class=’tablerrez’> %s</td>
<td>
<table width=’140′ border=’0′ cellspacing=’0′ cellpadding=’0′>
<tr>
<td class=’tablerrez2′> %s</td>
</tr>
<tr>
<td class=’tablerrez’> %s</td>
</tr>
</table>
</td>»,$k, $myrow[‘NameCom’],$myrow[‘Gorod’]);
do {
if($k==$c)
{
$c++;
}
else
{
$vgost = $myrow[«ID»];
$res3 = mysql_query(«SELECT Doma, ZabMjach, PropMjach FROM MatchRezult,Matches, Chempionats
WHERE Gost=’$vgost’ and
Matches.idMatch=MatchRezult.idMatch and
NameChemp=’ЧемпионатРоссии’ and
Chempionats.idChemp=Matches.idChemp».$wyear.»ORDER BY Doma «);
$row3 = mysql_fetch_array($res3);
$vdoma = $row3[‘Doma’];
do {
$vdoma = $row3[‘Doma’];
if ($comarray[$c]==$vdoma)
{
$gostarray[$k][$c]=$row3[‘PropMjach’].»:».$row3[‘ZabMjach’];
$zapis++;
}
else
if($k==$c)
{
$res3 = mysql_query(«SELECT Doma, ZabMjach, PropMjach FROM MatchRezult,Matches, Chempionats
WHERE Gost=’$vgost’ and
Matches.idMatch=MatchRezult.idMatch and
NameChemp=’ЧемпионатРоссии’ and
Chempionats.idChemp=Matches.idChemp».$wyear.»ORDER BY Doma «);
for($mas=1;$mas<$c;$mas++)
$row3 = mysql_fetch_array($res3);
}
else
{
$res3 = mysql_query(«SELECT Doma, ZabMjach, PropMjach FROM MatchRezult,Matches, Chempionats
WHERE Gost=’$vgost’ and
Matches.idMatch=MatchRezult.idMatch and
NameChemp=’ЧемпионатРоссии’ and
Chempionats.idChemp=Matches.idChemp».$wyear.»ORDER BY Doma «);
for($mas=1;$mas<$zapis;$mas++)
$row3 = mysql_fetch_array($res3);
}
$c++;
}
while($c<$i && $row3 = mysql_fetch_array($res3));
}//else
}
while($c<$i);
$c=1;
$zapis=1;
do {
if($k==$c)
{
printf(«
<td width=’25’ bgcolor=’#939393′>
</td>»);
$c++;
}
else
{
$doma = $myrow[«ID»];
$res2 = mysql_query(«SELECT Gost, ZabMjach, PropMjach FROM MatchRezult,Matches, Chempionats
WHERE Doma=’$doma’ and
Matches.idMatch=MatchRezult.idMatch and
NameChemp=’ЧемпионатРоссии’ and
Chempionats.idChemp=Matches.idChemp».$wyear.»ORDER BY Gost «);
$row2 = mysql_fetch_array($res2);
$gost = $row2[‘Gost’];
if($gost == »)
{
printf(«
<td width=’25’>
<table width=’35’ border=’0′ cellspacing=’0′ cellpadding=’0′>
<tr>
<td class=’tablerrez2′> </td>
</tr>
<tr>
<td class=’tablerrez3′> %s</td>
</tr>
</table>
</td>»,$gostarray[$k][$c]);
$c++;
}
else
{
do {
$gost = $row2[‘Gost’];
if ($comarray[$c]==$gost)
{
printf(«
<td width=’25’>
<table width=’35’ border=’0′ cellspacing=’0′ cellpadding=’0′>
<tr>
<td class=’tablerrez2′> %s:%s</td>
</tr>
<tr>
<td class=’tablerrez3′> %s</td>
</tr>
</table>
</td>»,$row2[‘ZabMjach’],$row2[‘PropMjach’],$gostarray[$k][$c]);
$zapis++;
}
else
if($k==$c)
{
printf(«
<td width=’25’ bgcolor=’#939393′>
</td>»);
$res2 = mysql_query(«SELECT Gost, ZabMjach, PropMjach FROM MatchRezult,Matches, Chempionats
WHERE Doma=’$doma’ and
Matches.idMatch=MatchRezult.idMatch and
NameChemp=’ЧемпионатРоссии’ and
Chempionats.idChemp=Matches.idChemp».$wyear.»ORDER BY Gost «);
for($mas=1;$mas<$c;$mas++)
$row2 = mysql_fetch_array($res2);
}
else
{
printf(«
<td width=’25’>
<table width=’35’ border=’0′ cellspacing=’0′ cellpadding=’0′>
<tr>
<td class=’tablerrez2′> </td>
</tr>
<tr>
<td class=’tablerrez3′> %s</td>
</tr>
</table>
</td>»,$gostarray[$k][$c]);
$res2 = mysql_query(«SELECT Gost, ZabMjach, PropMjach FROM MatchRezult,Matches, Chempionats
WHERE Doma=’$doma’ and
Matches.idMatch=MatchRezult.idMatch and
NameChemp=’ЧемпионатРоссии’ and
Chempionats.idChemp=Matches.idChemp».$wyear.»ORDER BY Gost «);
for($mas=1;$mas<$zapis;$mas++)
$row2 = mysql_fetch_array($res2);
}
$c++;
}
while($c<$i && $row2 = mysql_fetch_array($res2));
}
}//else
}
while($c<$i);
$k++;
printf(» </tr>»);
}
?>
Также в приложении находится администраторская часть, созданная для прибавления редактирования и удаления данных. Входными данными являются данные, введенные юзером в надлежащие поля.
4.4.2 Описание функций
mysql_connect() – подключение к MySQL;
include(«bd.php») – подключение к файлу;
printf() – вывод инфы на экран;
mysql_query () – возвращение результата запроса;
mysql_fetch_array () – получение результата запроса;
echo – вывод инфы;
4.5 Сообщения
Сообщения выводятся лишь в администраторской части программки. При неправильных действиях юзеров недопустимых значениях входных данных, система выдает юзеру надлежащие сообщения. При успешном окончании деяния юзер тоже получает сообщения о успешном окончании.
5. Сопровождение. Управление юзера
5.1. Область внедрения программки
программка создана для хранения инфы о футбольных матчах, подсчета данных о командах в турнире, генерации турнирной сетки.
5.2 Короткое описание способностей
юзер может вводить и удалять данные о матчах, игроках, арбитрах, тренерах, чемпионатах, редактировать состав установок, тренерский штаб команды.
5.3 Уровень подготовки юзера
Юзеры системы обязаны иметь опыт работы с индивидуальным компом на базе операционных систем Microsoft Windows и с браузером типа «Opera» либо «IE 5» и выше на уровне среднего юзера и свободно производить базисные операции.
5.4 Программные и аппаратные требования к системе
Требования к программному обеспечению:
– браузер типа «Opera» либо «IE» ;
Требования к аппаратному обеспечению:
– Серверы БД;
– Интернет сервер;
– ПК юзеров;
– ПК админов.
5.5 Подготовка к работе
5.5.1 Состав дистрибутива
В состав дистрибутива «Футбольный болельщик» заходит:
— Серверная часть Windows приложения;
— Клиентская часть Windows приложения;
5.5.2 Аварийные ситуации
При нарушении в работе аппаратуры восстановление обычной работы системы обязано выполняться опосля:
— перезагрузки операционной системы;
— пуска исполняемого файла системы;
При ошибках в работе аппаратных средств (не считая носителей данных и программ) восстановление функции системы возлагается на ОС.
При ошибках, связанных с программным обеспечением (ОС и драйверы устройств), восстановление работоспособности возлагается на ОС.
При неправильных действиях юзеров, неправильных форматах либо недопустимых значениях входных данных, система выдает юзеру надлежащие сообщения, опосля чего же юзер может пройтись по ссылке на всякую страничку, которая будет нормально работать.
5.5.3 Советы по освоению
Для удачного освоения приложения «Футбольный болельщик» нужно иметь способности работы с ПК , базисные познания html(для корректного ввода текстовой инфы) и изучить последующее:
— Истинное «Управление юзера».
6. Перечень использованной литературы
1. Евгений Попов. PHP и Mysql для начинающих. видео уроки. 2007.
2. Т.Карпова. Базы данных. Модели, разработка, реализация. «Питер», Санкт-Птербург, 2002.
3. Алексей Гончаров. Самоучитель html.
4. www.softtime.ru
7. Приложение 1
Начальный текст приложения
bd.php
<?php
$db = mysql_connect(«localhost