Система продажи билетов в кинотеатре

Автор работы: Пользователь скрыл имя, 22 Января 2012 в 14:31, курсовая работа

Краткое описание

Требования к разрабатываемой системе:
Должен быть интерфейс для клиента и администратора
Интерфейс должен быть максимально простым и функциональным
Интерфейс клиента предназначен для проведения покупки или заказа билетов
Интерфейс администратора предназначен для просмотра и редактирования всех данных «Системы продажи билетов в кинотеатре»
Все данные должны храниться в удаленной базе данных

Содержимое работы - 1 файл

Курсовая(Inet).doc

— 646.00 Кб (Скачать файл)
 

   Далее строчками:

 if ($id_day) $query = "select * from month where id_day=$id_day"; 
 else $query = "select * from month order by id_day"; 
$result = mysql_query($query); 
$num_results = mysql_num_rows($result);

   Формируем запрос в переменной query, причем если задана дата в переменной id_day, то запрос будет содержать в себе указание даты.

 

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

 

 for ($i=0; $i <$num_results; $i++) 

$row = mysql_fetch_row($result); 
echo "<tr><td>"; 
  echo htmlspecialchars(stripslashes($row[0])); 
  echo "</td>"; 
echo "<td>"; 
  echo htmlspecialchars(stripslashes($row[1])); 
 echo "</td>"; 
echo "<td>"; 
  echo htmlspecialchars(stripslashes($row[2])); 
  echo "</td>"; 
echo "</tr>"; 

Далее строчками:

 echo '<form action="edit_tables.php" method="post"> 
  <input type=HIDDEN name="table"'." value=$table>"; 
echo 'Введите данные:<br /> 
  Дата:<br /> 
    <input type="text" name="id_day"><br /> 
    № сеанса:<br /> 
    <input type="text" name="id_seanse_num"><br /> 
    № фильма:<br /> 
    <input type="text" name="id_film"><br /> 
Что делать:<br />  
<select name="what_to_do"> 
<option value = "add">добавить 
<option value = "delete">удалить 
</select><br/> 
<input type="submit" value="OK"> 
</form>';

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

 
 

    Опишем, как происходит вывод данной формы.

Вначале, с помощью функций «echo», формируются статичные надписи приветствия.

Далее строчками:

 @ $db = mysql_pconnect('localhost', 'root', 'root'); 
if (!$db) 

echo 'Ошибка: Не удалось установить соединение с базой данных. Пожалуйста, повторите попытку позже.'; 
exit; 

mysql_select_db('movie');

 

   Мы  подключаемся к удаленной базе данных, расположенной на хосте «localhost». Подключаемся к базе данных под пользователем «root» с паролем «root». Далее проверяем, удалось или не удалось соединиться с базой. Если не удалось, то выводим сообщение об ошибке. Иначе все хорошо и выбираем текущую базу «movie».

 

   Далее строчками:

 $query = "select * from seanse order by id_seanse_num"; 
$result = mysql_query($query); 
$num_results = mysql_num_rows($result);

   В переменную «query», формируется SQL запрос, с помощью которого будут получены записи все сеансы из таблицы «seanse» для формирования таблицы сеансов.

 

   Далее строчками:

 

 for ($i=0; $i <$num_results; $i++) 

$row = mysql_fetch_row($result); 
echo "<tr><td>"; 
  echo htmlspecialchars(stripslashes($row[0])); 
  echo "</td>"; 
echo "<td>"; 
  echo htmlspecialchars(stripslashes($row[1])); 
 echo "</td>"; 
echo "<td>"; 
  echo htmlspecialchars(stripslashes($row[2])); 
  echo "</td>"; 
echo "</tr>"; 
}

Формируется таблица на форме, содержащая поля данных все сеансов из таблицы «seanse».

Далее строчками:

 echo '<form action="edit_tables.php" method="post"> 
  <input type=HIDDEN name="table"'." value=$table>"; 
echo 'Введите данные:<br /> 
  № сеанса:<br /> 
    <input type="text" name="id_seanse_num"><br /> 
    Время начала:<br /> 
    <input type="text" name="time_start"><br /> 
    Время конца:<br /> 
    <input type="text" name="time_end"><br /> 
Что делать:<br />  
<select name="what_to_do"> 
<option value = "add">добавить 
<option value = "delete">удалить 
</select><br/> 
<input type="submit" value="OK"> 
</form>';

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

 

   Станица выводящая, содержимое таблицы «films» содержит:

  • Кнопку перехода на предыдущую страницу
  • Поля выбора, для указания способа сортировки данных в отображаемой таблице
  • Таблица, содержащая все данные таблицы «films», отсортированные по указанному способу
  • Поля ввода для редактирования содержимого таблицы
 

   На  данном примере показано содержание таблицы «films».

 

   Опишем, как происходит вывод данной формы.

   Вначале, с помощью функций «echo», формируются статичные надписи приветствия.

   Далее строчками:

 

 echo '<form action="tables.php" method="post"> 
<INPUT TYPE=HIDDEN name="login" value='.$login.'> 
<INPUT TYPE=HIDDEN name="pwd" value='.$pwd.'> 
  <input type=HIDDEN name="table"'." value=$table>"; 
echo 'Сортировать по: 
  <table border=1 cellspacing=1 cellpadding=10> 
<tr> 
 <td><input type="radio" name="radio_button" value=0 checked>№ фильма</td> 
  <td><input type="radio" name="radio_button" value=1>Названию</td> 
   <td><input type="submit" value="OK"></td> 
   </table> 
   </form>'; 

   Формируется форма, содержащая кнопки выбора способа сортировки в таблице фильмов.

 

   Далее строчками:

 @ $db = mysql_pconnect('localhost', 'root', 'root'); 
if (!$db) 

echo 'Ошибка: Не удалось установить соединение с базой данных. Пожалуйста, повторите попытку позже.'; 
exit; } 
mysql_select_db('movie');

   Мы  подключаемся к удаленной базе данных, расположенной на хосте «localhost». Подключаемся к базе данных под пользователем «root» с паролем «root». Далее проверяем, удалось или не удалось соединиться с базой. Если не удалось, то выводим сообщение об ошибке. Иначе все хорошо и выбираем текущую базу «movie».

 

   Далее строчками:

 if ($radio_button==0) $query = "select * from films order by id_film"; 
 else $query = "select * from films order by name"; 
$result = mysql_query($query);

   В переменную «query», формируется SQL запрос, с помощью которого будут получены записи все даты из таблицы «films» для формирования таблицы фильмов.

 

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

 

 for ($i=0; $i <$num_results; $i++) 

$row = mysql_fetch_row($result); 
echo "<tr><td>"; 
  echo htmlspecialchars(stripslashes($row[0])); 
  echo "</td>"; 
echo "<td>"; 
  echo htmlspecialchars(stripslashes($row[1])); 
 echo "</td>"; 
echo "</tr>"; 
}

Далее строчками:

 echo '<form action="edit_tables.php" method="post"> 
  <input type=HIDDEN name="table"'." value=$table>"; 
echo 'Введите данные:<br /> 
  № фильма:<br /> 
    <input type="text" name="id_film"><br /> 
    Название:<br /> 
    <input type="text" name="name"><br /> 
Что делать:<br />  
<select name="what_to_do"> 
<option value = "add">добавить 
<option value = "delete">удалить 
</select><br/> 
<input type="submit" value="OK"> 
</form>'; 

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

 

 На  странице, при обработке таблицы  «orders» выводится:

  • Кнопку перехода на предыдущую страницу
  • Поля выбора, для указания способа сортировки данных в отображаемой таблице
  • Поле выбора даты отображения записей в таблице заказов
  • Таблица, содержащая все данные таблицы «orders», отсортированные по указанному способу
  • Поля ввода для редактирования или удаления элементов таблицы.
 

 На  странице, при обработке таблицы  «places» выводится:

  • Кнопку перехода на предыдущую страницу
  • Поля выбора, для указания способа сортировки данных в отображаемой таблице
  • Поле выбора сеанса отображения записей в таблице заказов
  • Таблица, содержащая все данные таблицы «places», отсортированные по указанному способу
  • Поля ввода для редактирования или удаления элементов таблицы.
 

 Вводя необходимые данные, администратор  переходит к файлу «edit_tables.php», с помощью которой, осуществляется редактирование соответствующей выбранной таблицы.

 
 

    Структура базы данных «movie».

 
          База «movie»
          month
          seanse
          films
          orders
          places
           

           

 
 

Таблица «month». Содержит расписание фильмов по датам и сеансам.

Поля таблицы  «month»:

Поля Тип Описание
id_day date not null (поле типа дата, не пустое) Дата
id_seanse_num int unsigned not null (поле типа без знаковое целое, не пустое) № сеанса
id_film int unsigned not null (поле типа без знаковое целое, не пустое) № фильма
 

Главный ключ составной и состоит из значений:

  • id_day
  • id_seanse_num
  • id_film
 
 

Таблица «seanse». Содержит расписание фильмов по датам и сеансам.

Поля таблицы  «seanse»:

Поля Тип Описание
id_seanse_num int unsigned not null primary key (поле типа без знаковое целое, не пустое, главный ключ) № сеанса
time_start time not null (поле типа время, не пустое) Время начала сеанса
time_end time not null (поле типа время, не пустое) Время конца  сеанса
 

Главный ключ «id_seanse_num».

 

Таблица «films». Содержит расписание фильмов по датам и сеансам.

Поля таблицы  «films»:

Поля Тип Описание
id_film int unsigned not null primary key (поле типа без знаковое целое, не пустое, главный ключ) № фильма
name char(50) not null (поле типа массив из 50 символов, не пустое) Название фильма
 

Главный ключ «id_film».

 

Таблица «orders». Содержит расписание фильмов по датам и сеансам.

Поля таблицы  «orders»:

Поля

    • Тип
Описание
id_order int unsigned not null auto_increment primary key (поле типа без знаковое целое, не пустое, с автоматическим увеличением значения,  главный ключ) № заказа
name char(50) not null (поле типа массив из 50 символов, не пустое) ФИО клиента
id_seanse_num int unsigned not null (поле типа без знаковое целое, не пустое) № сеанса
id_place int unsigned not null (поле типа без знаковое целое, не пустое) № места
date date not null (поле типа дата, не пустое) Дата заказа
time time not null (поле типа время, не пустое) Время заказа

Информация о работе Система продажи билетов в кинотеатре