Создание сайта "Платные курсы"
Создание сайта "Платные курсы"
Федеральное государственное образовательное учреждение высшего профессионального образования "Чувашский государственный университет им. И.Н. Ульянова" Факультет информатики и вычислительной техники Кафедра "Математического и аппаратного обеспечения инфомационных систем" Дисциплина "Базы данных" Пояснительная записка к курсовой работе Тема: "Платные курсы" Выполнил: студент гр. ИВТ 11-06 Григорьев Д.Г. Проверил: ст.преподаватель Буланкина Е.Ю. Чебоксары - 2009 Содержание 1. Задание 2. Анализ. Предметная область 2.1 Описание предметной области (уточненной у преподавателя) 2.2 Перечень и описание функций приложения обработки базы данных 2.3 Перечень и описание сущностей и атрибутов базы данных 2.4 Перечень и описание всех атрибутов базы данных 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 Подготовка к работе 6. Список использованной литературы 7. Приложение 1. Задание Дополнительные образовательные услуги. Учебное заведение оказывает дополнительные платные образовательные услуги студентам, то есть обучение специальным курсам платное. Курсы разной продолжительности и разной оплаты (оплата не зависит от продолжительности). Занятия происходят по мере комплектования групп до минимально рентабельного числа студентов, но, тем не менее, в группу не набирается максимально установленное число студентов. Для различных курсов эти числа свои. Преподаватели получают за курсы отдельную почасовую плату. Почасовая ставка зависит от разряда преподавателя и количества студентов в группе. 2. Анализ. Предметная область 2.1 Описание предметной области Необходимо разработать информационный ресурс, где хранится информация о студентах, преподавателях, проводимых курсах, журнала посещений. В соответствии с занесенными в журнал данными о проведенных занятиях выводить оплату определенного месяца выбранного преподавателя. 2.2 Перечень и описание функций приложения обработки базы данных 1) Система управляет данными заработной платы каждого преподавателя. 2) Система управляет списками студентами и преподавателями. 3) Система хранит информацию о преподавателях: ФИО, дисциплины и виды занятий в которых он преподает, разряд. 4) Система должна регистрировать и хранить информацию о том, какой студент учится в какой группе. 5) Система управляет списком курсов с указанием их названия и продолжительности. 6) Система должна регистрировать и хранить информацию о количестве оплаты, проведенной студентами каждого курса. 7) Система отображает информацию о дисциплинах и видах занятий, проводимых на каждом курсе. 8) Система управляет журналом занятий, в который записывются проведенные занятия. 9) Система считает число студентов на каждом курсе и сумму, которую они заплатили. 10) Система хранит информацию о рентабельном количестве студентов, при котором группа комплектовывается и максимальном количестве студентов на группу. 2.3 Перечень и описание сущностей базы данных 1) Студенты. Сущность, о которой нам известно ФИО студента и группа, в которой он обучается. 2) Преподаватели. Сущность-справочник. О преподавателе известно ФИО, разряд. 3) Курсы. Сущность-справочник. Известно название курса, оплата за его прохождение и максимально возможное число студентов в группе. 4) Группы. Сущность, о которой известна некоторая информация: количество студентов, в нем обучающихся, подгруппа, дата начала и конца занятий группы. Также известен курс, по которому обучается группа. 5) Архив оплаты. 6) Дисциплины. Известно название. 7) Разряды преподавателей. 8) Виды занятий. 2.4 Перечень и описание всех атрибутов базы данных |
1 | KodDisc | Код дисциплины | | 2 | NazvDisc | Название дисциплины | | 3 | KodKursa | Код курса | | 4 | NazvKursa | Название курса | | 5 | OplataKursa | Оплата за прохождение курса | | 6 | ProdolgKursa | Продолжительность курса | | 7 | MinRent | Мин. рентабельное число студентов в группе | | 8 | Max4islo | Макс. возможное число студентов в группе | | 9 | KodGr | Код группы | | 10 | 4isloStudGr | Число студентов группы | | 11 | KodPrep | Код преподавателя | | 12 | kodVidZan | Код вида занятия | | 13 | Data | Дата проведенного занятия | | 14 | Kol4asov | Количество часов, потраченных на занятие | | 15 | KolStudStav | Ставка по количеству студентов | | 16 | Mesyac | Номер месяца | | 17 | Oplata | Архив оплаты, зависит от месяца | | 18 | FIOPrep | ФИО преподавателя | | 19 | NomRazr | Номер разряда преподавателя | | 20 | Stavka | Почасовая ставка преподавателя | | 21 | KodStud | Код студента | | 22 | FIOStud | ФИО студента | | 23 | NazvVidZan | Название вида занятия | | |
3.. Проектирование. Нормализация базы данных. Схема данных 3.1 Пошаговое описание нормализации базы данных (методом ER-диаграмм) 3.2 Схема данных Disciplini (kodDisc,NazvDisc, BazPlata) DiscipliniNaKursax(KodKursa, kodDisc) Gruppi (kodGr, 4isloStudGr, KodKursa) Kto4toUKogoBudetVesti (kodPrep, kodDisc, kodGr, kodVidZan) Kto4toUKogoVedet (kodPrep, kodDisc, kodGr, kodVidZan, Data, kolvo4asov, kolStudStav) Kursi (kodKursa, NazvKursa, OplataKursa, MinRent, Max4islo) Oplata (kodPrep, Mecyac, Oplata) Prepodavateli (kodPrep, FIOPrep, NomRazr) PrepodavateliIDisciplini (kodPrep, kodDisc) Razrjadi(NomRazr, Stavka) Studenti (kodStud, FIOStud) StudentiVGruppax (kodGr, kodStud) VidZanyatiy (kodVidZan, NazvVidZan) VidZanyatiyDisciplin (kodDisc, kodVidZan) 3.3 Перечень и описание таблиц и их полей в сводной таблице |
Disciplini | | kodDisc | Код дисциплины | int | | NazvDisc | Название дисциплины | Varchar(50) | | BazPlata | Базовая плата | int | | DiscipliniNaKursax | | KodKursa | Код курса | Int | | kodDisc | Код дисциплины | Varchar(255) | | Gruppi | | kodGr | Код группы | int | | 4isloStudGr | Число студентов в группе | Int | | KodKursa | Код курса | | | Kto4toUKogoBudetVesti | | kodPrep | Уникальный код преподавателя | Int | | kodDisc | Код дисциплины | int | | kodGr | Код группы | Date | | kodVidZan | Код вида занятия | Varchar(255) | | Kto4toUKogoVedet | | kodPrep | Уникальный код преподавателя | Int | | kodDisc | Уникальный код дисциплины | int | | kodGr | Уникальный код группы | int | | kodVidZan | Уникальный код вида занятия | Int | | Data | Дата проведенного занятия | Int | | kolvo4asov | Количество потраченных часов | | | kolStudStav | Ставка по количеству студентов в группе | | | Kursi | | kodKursa | Уникальный код курса | Int | | NazvKursa | Название курса | Varchar(255) | | OplataKursa | Оплата за курс | Varchar(255) | | MinRent | Минимальное рентабельное число студентов | Varchar(255) | | Max4islo | Максимальное число студентов | Date | | Oplata | | kodPrep | Код преподавателя | Int | | Mecyac | Номер месяца | Int | | Oplata | Архивная оплата преподавателя | Date | | Prepodavateli | | kodPrep | Уникальный код преподавателя | Int | | FIOPrep | ФИО преподавателя | Varchar(255) | | NomRazr | Разряд преподавателя | Varchar(255) | | PrepodavateliIDisciplini | | | kodPrep | Код преподавателя | Int | | kodDisc | Уникальный код дисциплины | Int | | Razrjadi | | NomRazr | Номер разряда | Int | | Stavka | Ставка разряда | Varchar(255) | | Studenti | | kodStud | Уникальный код студента | Int | | FIOStud | ФИО студента | Int | | StudentiVGruppax | | | kodGr | Код группы | | | kodStud | Код студента | | | VidZanyatiy | | | kodVidZan | Код вида занятия | | | NazvVidZan | Название вида занятия | | | VidZanyatiyDisciplin | | | kodDisc | Код дисциплины | | | kodVidZan | Код вида занятия | | | |
4. Программная часть. Руководство программиста 4.1 Назначение и условия применения программы Программа предназначена для хранения информации о студентах, преподавателях, проводимых курсах, журнала посещений. В соответствии с занесенными в журнал данными о проведенных занятиях выводится оплата определенного месяца выбранного преподавателя. 4.2 Характеристика программы Программа обладает стандартными временными характеристиками и стандартным режимом работы. 4.3 Обращение к программе Для обращения к программе есть кнопки и выпадающие списки, а так же гиперссылки для удобства перемещения по сайту. 4.4 Входные и выходные данные 4.4.1 Словесное описание Страницы содержат ряд ссылок по которым осуществляется переход на другие страницы Страницы "Курсы" (kurs.php), "Список преподавателей" (spisokprepod.php), "Журнал занятий" (vt.php), "Оплата" (oplata.php), "Программа обучения" (vtKto.php), "Студенты" (spisok.php), отображает соответственно список студентов, информацию преподавателей , дисциплин, курсов и журнала занятий, внесенных в базу. Страница "Курсы "(kurs.php) отображает всю информацию о курсах и производит подсчет в студенческой бухгалтерии: <?php elseif(isset($_POST['kodkursa'])) { $query = mysql_query('Select NazvKursa from Kursi where KodKursa='.$_POST['kodkursa']); $row = mysql_fetch_array($query); echo ' <form name="form1" method="post" action="">'; //----------------Информация о курсе------------------- echo '<font color=000000><h3><strong><span class="style1">Информация о курсе</font> <font color=cc3300>'.$row['NazvKursa'].'</h3></strong></span></font>'; // echo '<hr color=808080 size="2">'; echo '<table><tr><td align="left"> <h3><b><font color=000000>Добавление нового студента по курсу '.$row['NazvKursa'].'</font></b></h3></td><td width="10%"> </td><td align="right" valign="middle"> <a href=http://localhost/med/Spisok.php target=_blank><h3>Списки студентов</h3></a></td align="right"></tr></table>'; echo ' <table border="0" width="60%">'; $query2 = mysql_query("select KodKursa from Kursi where NazvKursa='{$row['NazvKursa']}'", $conn); $row2 = mysql_fetch_array($query2); $query3 = mysql_query("select KodGr from Gruppi where KodKursa='{$row2['KodKursa']}'", $conn); echo '<tr><td valign="middle"><font color=808080><h4> Выберите № Группы</h4></td> <td><select name="NGruppi">'; while ($row3 = mysql_fetch_array($query3)) { echo ' <option>'.$row3['KodGr'].'</option>'; } echo ' </select> </td></tr>'; echo '<tr><td valign="middle"><font color=808080><h4> ФИО Студента</h4></td> <td><input type=text name=FStudenta></td></tr> </table> <p> <input name="ADD" type=submit value="Добавить студента"> </p> </form><br>'; $query22 = mysql_query("select KodKursa from Kursi where NazvKursa='{$row['NazvKursa']}'", $conn); $row22 = mysql_fetch_array($query22); $query25 = mysql_query("select OplataKursa from Kursi where KodKursa='{$row22['KodKursa']}'", $conn); $row25 = mysql_fetch_array($query25); echo '<br><font color=808080><strong><h4>Оплата курса:</font></strong> '.$row25['OplataKursa'].' рублей</h4>'; $query26 = mysql_query("select ProdolgKursa from Kursi where KodKursa='{$row22['KodKursa']}'", $conn); $row26 = mysql_fetch_array($query26); echo '<font color=808080><strong><h4>Продолжительность курса:</font></strong> '.$row26['ProdolgKursa'].' часов</h4>'; $query27 = mysql_query("select MinRent from Kursi where KodKursa='{$row22['KodKursa']}'", $conn); $row27 = mysql_fetch_array($query27); echo '<font color=808080><strong><h4>Минимально рентабельное число студентов на курсе: </font></strong> '.$row27['MinRent'].'</h4>'; $query28 = mysql_query("select Max4islo from Kursi where KodKursa='{$row22['KodKursa']}'", $conn); $row28 = mysql_fetch_array($query28); echo '<font color=808080><strong><h4>Максимальное число студентов на курсе: </font></strong>'.$row28['Max4islo'].'</h4>'; echo '<br><hr color=808080 size="2"><br><br><font color=000000 size="2"><strong>Студенческая бухгалтерия. </font></strong>'; //----------------Студенческая бухгалтерия------------------- $query88 = mysql_query("select sum(4isloStudGr) as Summa FROM Gruppi WHERE KodKursa='{$row22['KodKursa']}'", $conn); $row88 = mysql_fetch_array($query88); echo' <br><br><font color=808080><strong><h4>Число студентов на курсе '.$row['NazvKursa'].'</strong></font>: '.$row88['Summa'].'</h4>'; $query99 = mysql_query("select OplataKursa FROM Kursi WHERE KodKursa='{$row22['KodKursa']}'", $conn); $row99 = mysql_fetch_array($query99); echo '<font color=808080><strong><h4>Всего к оплате </font></strong>: '.$row99['OplataKursa']*$row88['Summa'].' рублей</h4>'; //----------------------------------------Дисциплины------------------------ echo'<hr color=808080 size="2">'; echo '<table width="60%" border="1" bordercolor="#FFCCFF"><tr><th>Дисциплина</th><th>Вид занятия</th> <caption align="top"><strong><font color=000000 size="2"><br>Дисциплины и виды занятий,<br>проводимые на курсе</caption></font></strong>'; $queryDisc = mysql_query("SELECT NazvDisc,NazvVidZan FROM `VidiZanyatiyDisciplin`,`VidiZanyatiy`,`Disciplini`,`DiscipliniNaKursax` WHERE `VidiZanyatiyDisciplin`.KodVidZan=`VidiZanyatiy`.KodVidZan and`VidiZanyatiyDisciplin`.KodDisc=`Disciplini`.KodDisc and `Disciplini`.KodDisc=`DiscipliniNaKursax`.KodDisc and KodKursa='{$row22['KodKursa']}'", $conn); while ($rowDisc = mysql_fetch_array($queryDisc)) { echo '<tr><td>'.$rowDisc['NazvDisc'].'</td><td>'.$rowDisc['NazvVidZan'].'</td></tr>'; } echo '</table>'; } ?> Страница "Оплата"(oplata.php) подсчитывает оплату каждого преподавателя по проведенным занятиям, записанных в журнале занятий: <?php if (isset($_POST['Month'])) { echo '<h3><br>Просмотр оплаты преподавателя</h3>'; echo '<form name="form1" method="post" action=""> <table border="0">'; $FPrepod=$_POST['FPrepod']; $Month=$_POST['Month']; $query4 = mysql_query("SELECT KodPrep from Prepodavateli where FIOPrep='{$FPrepod}'", $conn); $row4 = mysql_fetch_array($query4); echo '<font color=#000000 size="2"><strong>'; echo "{$FPrepod} - "; if($Month=='Январь') { echo '<font color="green" size="2"><strong>'; echo "{$Month}"; echo '</font></strong>'; $query10 = mysql_query("SELECT sum(Stavka*Kolvo4asov)+KolStudStav from Kto4toUKogoVedet, prepodavateli left join razryadi on prepodavateli.NomRazr=razryadi.NomRazr where prepodavateli.KodPrep='{$row4['KodPrep']}' and prepodavateli.KodPrep=kto4toukogovedet.KodPrep AND Data between '2009-01-01' and '2009-01-30'", $conn); $row10 = mysql_fetch_array($query10); if($row10['sum(Stavka*Kolvo4asov)+KolStudStav']==NULL) { echo '<br><font color="red" size="2"><strong>Начислений нет.</font></strong>'; } else echo '<br><font color=808080 size="2"><strong>Всего начислено к оплате:</font></strong> '.$row10['sum(Stavka*Kolvo4asov)+KolStudStav'].' рублей'; } if($Month=='Февраль') { echo '<font color="green" size="2"><strong>'; echo "{$Month}"; echo '</font></strong>'; $query11 = mysql_query("SELECT sum(Stavka*Kolvo4asov+KolStudStav) from Kto4toUKogoVedet, prepodavateli left join razryadi on prepodavateli.NomRazr=razryadi.NomRazr where prepodavateli.KodPrep='{$row4['KodPrep']}' and prepodavateli.KodPrep=kto4toukogovedet.KodPrep AND Data between '2009-02-01' and '2009-02-29'", $conn); $row11 = mysql_fetch_array($query11); if($row11['sum(Stavka*Kolvo4asov)+KolStudStav']==NULL) { echo '<br><font color="red" size="2"><strong>Начислений нет.</font></strong>'; } else echo '<br><font color=808080 size="2"><strong>Всего начислено к оплате:</font></strong> '.$row11['sum(Stavka*Kolvo4asov)+KolStudStav'].' рублей'; } if($Month=='Март') { echo '<font color="green" size="2"><strong>'; echo "{$Month}"; echo '</font></strong>'; $query12 = mysql_query("SELECT sum(Stavka*Kolvo4asov+KolStudStav) from Kto4toUKogoVedet, prepodavateli left join razryadi on prepodavateli.NomRazr=razryadi.NomRazr where prepodavateli.KodPrep='{$row4['KodPrep']}' and prepodavateli.KodPrep=kto4toukogovedet.KodPrep AND Data between '2009-03-01' and '2009-03-30'", $conn); $row12 = mysql_fetch_array($query12); if($row12['sum(Stavka*Kolvo4asov)+KolStudStav']==NULL) { echo '<br><font color="red" size="2"><strong>Начислений нет.</font></strong>'; } else echo '<br><font color=808080 size="2"><strong>Всего начислено к оплате:</font></strong> '.$row12['sum(Stavka*Kolvo4asov)+KolStudStav'].' рублей'; } if($Month=='Апрель') { echo '<font color="green" size="2"><strong>'; echo "{$Month}"; echo '</font></strong>'; $query13 = mysql_query("SELECT sum(Stavka*Kolvo4asov+KolStudStav) from Kto4toUKogoVedet, prepodavateli left join razryadi on prepodavateli.NomRazr=razryadi.NomRazr where prepodavateli.KodPrep='{$row4['KodPrep']}' and prepodavateli.KodPrep=kto4toukogovedet.KodPrep AND Data between '2009-04-01' and '2009-04-30'", $conn); $row13 = mysql_fetch_array($query13); if($row13['sum(Stavka*Kolvo4asov)+KolStudStav']==NULL) { echo '<br><font color="red" size="2"><strong>Начислений нет.</font></strong>'; } else echo '<br><font color=808080 size="2"><strong>Всего начислено к оплате:</font></strong> '.$row13['sum(Stavka*Kolvo4asov)+KolStudStav'].' рублей'; } ?> Также в приложении присутствует администраторская часть, предназначенная для добавления редактирования и удаления данных. Входными данными являются данные, введенные пользователем в соответствующие поля. 4.5 Сообщения Сообщения выводятся только в администраторской части программы. При неверных действиях пользователей недопустимых значениях входных данных, система выдает пользователю соответствующие сообщения. При успешном завершении действия пользователь тоже получает сообщения об успешном завершении. 5. Сопровождение. Руководство пользователя 5.1 Область применения программы Программа предназначена для хранения информации о группах, преподавателях, подсчета зарплаты преподавателей и оплаты студентов за курсы. 5.2 Краткое описание возможностей Пользователь может вводить и удалять данные о посещении занятий, студентах, преподавателях, просмотреть всю информацию по курсам и дисциплинам, оплате преподавателей. 5.3 Уровень подготовки пользователя Пользователи системы должны иметь опыт работы с персональным компьютером на базе операционных систем Microsoft Windows и с браузерами типа "Opera" или "IE 5" и выше на уровне среднего пользователя и свободно осуществлять базовые операции. 5.4 Программные и аппаратные требования к системе Требования к программному обеспечению: - браузер типа "Opera" или "IE" ; Требования к аппаратному обеспечению: - Серверы БД; - Веб сервер; - ПК пользователей; - ПК администраторов. 5.5 Подготовка к работе Состав дистрибутива В состав дистрибутива "Платные курсы" входят: - Серверная часть Windows приложения; - Клиентская часть Windows приложения; Аварийные ситуации При сбое в работе аппаратуры восстановление нормальной работы системы должно производиться после: - перезагрузки операционной системы; - запуска исполняемого файла системы; При ошибках в работе аппаратных средств (кроме носителей данных и программ) восстановление функции системы возлагается на ОС. При ошибках, связанных с программным обеспечением (ОС и драйверы устройств), восстановление работоспособности возлагается на ОС. При неверных действиях пользователей, неверных форматах или недопустимых значениях входных данных, система выдает пользователю соответствующие сообщения, после чего пользователь может пройтись по ссылке на любую страницу, которая будет нормально функционировать. Рекомендации по освоению Для успешного освоения приложения "Футбольный болельщик" необходимо иметь навыки работы с ПК, базовые знания HTML(для корректного ввода текстовой информации) и изучить следующее: - Настоящее "Руководство пользователя". 6. Список использованной литературы 1. Евгений Попов. PHP и Mysql для начинающих. Видео уроки. 2007. 2. Т.Карпова. Базы данных. Модели, разработка, реализация. "Питер", Санкт-Птербург, 2002. 3. Котеров Д.В., Костарев А.Ф. PHP 5(в подлиннике). БХВ-Петербург, 2005 7. Приложение bd_connect.php <?php $db = mysql_connect("localhost","root",""); mysql_select_db ("Platnie kursi",$db); ?> spisok.php <? include("library/db_connect.php"); include("library/menu.shtml"); if($_SERVER['REQUEST_METHOD']!=='POST') { echo '<font color=000000 size="3"><strong><b><br>Выберите группу для просмотра:<b></font></strong><br><br>'; echo '<table ><form action='.$_SERVER['PHP_SELF'].' method=post>'; $query = mysql_query("select KodGr from Gruppi", $conn); while ($row = mysql_fetch_array($query)) { echo '<tr><td><input type=radio name=kodgruppi value='.$row['KodGr'].'</td><td>'.$row['KodGr'].'</td></tr>'; } echo '</table> <p> <input name="OK" type=submit value=" OK "> </p> </form><br>'; } elseif(isset($_POST['kodgruppi'])) { echo '<table><form action=YdalenieStudenta.php method=post><input type=hidden name=kgruppi value='.$_POST['kodgruppi'].'>'; echo '<font color=808080><h5><strong><span class="style1"><align="center"><br><br>Список студентов группы </font><font color=000000>'.$_POST['kodgruppi'].'</h5></strong></align="center"></span></font><br>'; echo '<table ><form action=YdalenieStudenta.php method=post><input type=hidden name=kgruppi value='.$_POST['kodgruppi'].'>'; echo '<table bordercolor="#FFCCFF" width="400" border="1"> <tr> <td>ФИО cтудента</td> <td>Выбор cтудента</td> </tr>'; $query3 = mysql_query("SELECT FIOStud FROM StudentiVGruppax ,Studenti where StudentiVGruppax.KodStud=Studenti.KodStud and KodGr='{$_POST['kodgruppi']}'", $conn); while ($row3 = mysql_fetch_array($query3)) { $query4 = mysql_query("Select KodStud from Studenti where FIOStud='{$row3['FIOStud']}'", $conn); while ($row4 = mysql_fetch_array($query4)) { echo '<tr> <td>'.$row3['FIOStud'].'</td> <td><input type=checkbox name=kodstudenta[] value='.$row4['KodStud'].'></td> </tr>'; } } echo ' </table>'; $query1 = mysql_query("Select count(KodStud) from StudentiVGruppax where KodGr='{$_POST['kodgruppi']}'", $conn); $row1 = mysql_fetch_array($query1); echo '<font color=000000 size="2"><strong><br>Число студентов в группе:</font></strong> '.$row1['count(KodStud)'].' '; echo '</table> <p> <input name="submit" type=submit value="Удалить студента"> </p> </form><br>'; } ?> spisokprepod.php <? include("library/db_connect.php"); include("library/menu.shtml"); if($_SERVER['REQUEST_METHOD']!=='POST') { $query = mysql_query("select KodKursa, NazvKursa from Kursi", $conn); echo '<hr color=808080 size="2"> <font <font color=000000 size="2"><strong><br>Выберите курс для просмотра:</font></strong><br><br>'; echo '<table><form action='.$_SERVER['PHP_SELF'].' method=post>'; while ($row = mysql_fetch_array($query)) { echo '<tr><td><input type=radio name=kodkursa value='.$row['KodKursa'].'></td><td>'.$row['NazvKursa'].'</td></tr>'; } echo '</table> <p> <input name="OK" type=submit value=" OK "> </p></form><br>'; } elseif(isset($_POST['kodkursa'])) { echo ' <form name="form1" method="post" action="">'; echo '<tr> <td><h3><strong> Выберите преподователя</h3></strong></td> <td> <select name="FPrepoda">'; $query33 = mysql_query("Select KodDisc from DiscipliniNaKursax where KodKursa='{$_POST['kodkursa']}'", $conn); while ($row33 = mysql_fetch_array($query33)) { $query44 = mysql_query("Select KodPrep from PrepodavateliIDisciplini where KodDisc='{$row33['KodDisc']}'", $conn); $row44 = mysql_fetch_array($query44); $query55 = mysql_query("Select distinct FIOPrep from Prepodavateli where KodPrep='{$row44['KodPrep']}'", $conn); while ($row55 = mysql_fetch_array($query55)) { echo ' <option>'.$row55['FIOPrep'].'</option>'; } } echo '<select value='.$row55['FIOPrep'].''; echo ' </select> </td> </tr><br><br>'; echo ' </table> <p> <input name="ADD" type=submit value="Просмотр"> </p> </form><br>'; } if (isset($_POST['FPrepoda'])) { echo '<h3><strong><font color=000000 >Справочник преподавателей.</strong></font> </h3 align="center"><br>'; echo ' <form name="formX" method="post" action=""> <table border="0">'; $fio='PrepodFIO4'; echo '<h4><strong><font color=808080 size="2">ФИО Преподавателя: <font color=000000 size="2">'.$fio.'</font></strong></font></h4>'; $query22 = mysql_query("Select KodPrep from Prepodavateli where FIOPrep='{$fio}'", $conn); $row22 = mysql_fetch_array($query22); echo '<h4><strong><font color=808080 size="2">Проводимые дисциплины и виды занятий: </strong></font></h4>'; $query32 = mysql_query("Select NazvDisc, NazvVidZan from Disciplini, PrepodavateliIDisciplini, VidiZanyatiyDisciplin, VidiZanyatiy where (PrepodavateliIDisciplini.KodDisc=Disciplini.KodDisc AND KodPrep='{$row22['KodPrep']}')AND Disciplini.KodDisc = VidiZanyatiyDisciplin.KodDisc AND VidiZanyatiyDisciplin.KodVidZan = VidiZanyatiy.KodVidZan", $conn); echo '<table border="1"><tr><td><b>Дисциплина</b></td><td><b>Вид занятия</b></td></tr>'; while ($row32 = mysql_fetch_array($query32)) { echo '<tr><td>'.$row32['NazvDisc'].' </td><td>'.$row32['NazvVidZan'].'</td></tr>'; } echo '</table>'; $query12 = mysql_query("Select NomRazr from Prepodavateli where FIOPrep='{$fio}'", $conn); $row12 = mysql_fetch_array($query12); echo '<br><br><strong><font color=808080 size="2">Разряд:</font></strong> '.$row12['NomRazr'].''; echo ' </form><br>'; } ?> vtKto.php <html> <head> <title>Кто что у кого будет вести</title> <meta content="text/html; charset=windows-1251" http-equiv="Content-Type" /> <meta http-equiv="Content-Language" content="ru-RU" /> <meta name="language" content="russian ru русский" /> </head> <body> <?php include("library/db_connect.php"); include("library/menu.shtml"); if($_SERVER['REQUEST_METHOD']!=='POST') { echo '<br><br><br><table width="250" border="1"><algin="center"><tr><th>ФИОПреп</th><th>Дисциплина</th><th>Вид занятия</th><th>Группа</th> <caption><h4><b>Программа обучения<br>(Кто что у кого будет вести)</h4></b></caption>'; $query33 = mysql_query("SELECT FIOPrep,NazvDisc,NazvVidZan,KodGr FROM `Kto4toUKogoBudetVesti` ,`Prepodavateli`,`Disciplini`,`VidiZanyatiy` WHERE `Kto4toUKogoBudetVesti`.KodPrep=`Prepodavateli`.KodPrep and `Kto4toUKogoBudetVesti`.KodDisc=`Disciplini`.KodDisc and `Kto4toUKogoBudetVesti`.KodVidZan=`VidiZanyatiy`.KodVidZan", $conn); while ($row33 = mysql_fetch_array($query33)) { echo '<tr><td>'.$row33['FIOPrep'].'</td><td>'.$row33['NazvDisc'].'</td><td>'.$row33['NazvVidZan'].'</td><td>'.$row33['KodGr'].'</td></tr>'; } echo '</table>'; } ?> </p> <p align="left"> </p> </body> </html> vt.php <html> <head> <title>КтоЧтоУКогоВедет.Добавление.</title> <meta content="text/html; charset=windows-1251" http-equiv="Content-Type" /> <meta http-equiv="Content-Language" content="ru-RU" /> <meta name="language" content="russian ru русский" /> </head> <body> <form name="form1" method="post" action=""> </form> <script language="javascript"> <!-- function IsInputEmpty(val1, val2) { if ((val1=='0000-00-00')||(val2.length==0)) { alert("Заполните, пожалуйста, все поля!"); return false; }; return true; }; --> </script> <form action="" method="post" onSubmit="return IsInputEmpty(this.Data.value, this.KChas.value);"> <? include("library/db_connect.php"); include("library/menu.shtml"); if($_SERVER['REQUEST_METHOD']!=='POST') { echo '<table width="250" border="1" bordercolor="#FFCCFF"><font color=000000><h5><tr><th>ФИОПреп</th><th>Дисциплина</th><th>Группа</th><th>Вид занятия</th><th>Дата</th><th>Кол-воЧасов</th><th>Часовая ставка</th></h5></font> <caption align="top"><h3>Журнал занятий</h3></caption><br>'; $query33 = mysql_query("select * from Kto4toUKogoVedet", $conn); while ($row33 = mysql_fetch_array($query33)) { $query1 = mysql_query("select FIOPrep from Prepodavateli where KodPrep='{$row33['KodPrep']}'", $conn); while ($row1 = mysql_fetch_array($query1)) { $query2 = mysql_query("select NazvDisc from Disciplini where KodDisc='{$row33['KodDisc']}'", $conn); while ($row2 = mysql_fetch_array($query2)) { $query3 = mysql_query("select NazvVidZan from VidiZanyatiy where KodVidZan='{$row33['KodVidZan']}'", $conn); while ($row3 = mysql_fetch_array($query3)) { $query44 = mysql_query("Select Stavka from Razryadi, Prepodavateli where FIOPrep='{$row1['FIOPrep']}' AND Prepodavateli.NomRazr=Razryadi.NomRazr", $conn); while ($row44 = mysql_fetch_array($query44)) { $query55 = mysql_query("Select BazPlata from Disciplini where KodDisc='{$row33['KodDisc']}'", $conn); while ($row55 = mysql_fetch_array($query55)) { $query66 = mysql_query("Select 4isloStudGr from Gruppi where KodGr='{$row33['KodGr']}'", $conn); while ($row66 = mysql_fetch_array($query66)) { $query77 = mysql_query("Select MinRent from Gruppi LEFT JOIN Kursi ON (Gruppi.KodKursa = Kursi.KodKursa) where KodGr ='{$row33['KodGr']}'", $conn); while ($row77 = mysql_fetch_array($query77)) { $rezault=(($row44['Stavka']+$row55['BazPlata'])*$row66['4isloStudGr']*$row33['Kolvo4asov'])/$row77['MinRent']; echo '<tr><td>'.$row1['FIOPrep'].'</td><td>'.$row2['NazvDisc'].'</td><td>'.$row33['KodGr'].'</td><td>'.$row3['NazvVidZan'].'</td><td>'.$row33['Data'].'</td><td>'.$row33['Kolvo4asov'].'</td><td>'.$rezault.'</td></tr>'; mysql_query("update Kto4toUKogoVedet set ChasovStav='{$rezault}' where ( KodPrep='{$row33['KodPrep']}' AND KodDisc='{$row33['KodDisc']}' AND KodVidZan='{$row33['KodVidZan']}' AND KodGr='{$row33['KodGr']}' AND '{$row33['Data']}')", $conn); } } } } } } } } echo '</table>'; echo ' <form name="form1" method="post" action="">'; $query4 = mysql_query("select FIOPrep from Prepodavateli", $conn); echo '<table><caption><font color=CC3300 size="2"><b>Заполните поля для добавления записи в журнал.</font></b> <tr><td valign="middle"> <h4> Выберите ФИО Преподавателя</h4></td> <td valign="middle"> <select name="FPrepod">'; while ($row4 = mysql_fetch_array($query4)) { echo ' <option>'.$row4['FIOPrep'].'</option>'; } echo ' </select> </td> </tr><br><br>'; $query5 = mysql_query("select NazvDisc from Disciplini", $conn); echo '<tr><td valign="middle"> <h4> Выберите дисциплину</h4></td><td valign="middle"><select name="NDisc">'; while ($row5 = mysql_fetch_array($query5)) { echo ' <option>'.$row5['NazvDisc'].'</option>'; } echo ' </select> </td> </tr><br><br>'; $query6 = mysql_query("select KodGr from Gruppi", $conn); echo '<tr><td valign="middle"> <h4> Выберите группу</h4></td> <td valign="middle"> <select name="KGruppi">'; while ($row6 = mysql_fetch_array($query6)) { echo ' <option>'.$row6['KodGr'].'</option>'; } echo ' </select> </td></tr><br><br>'; $query7 = mysql_query("select NazvVidZan from VidiZanyatiy", $conn); echo '<tr><td valign="middle"> <h4>Выберите Вид занятия</h4></td > <td valign="middle"> <select name="NVidZan">'; while ($row7 = mysql_fetch_array($query7)) { echo ' <option>'.$row7['NazvVidZan'].'</option>'; } echo ' </select> </td></tr><br><br>'; echo '<tr> <td valign="middle"> <strong> Дата</td></strong> <td valign="middle"> <input type=text name="Data" value="2009-01-01"> </td> </tr>'; echo '<tr><td valign="middle"><strong> Количество часов</td></strong> <td valign="middle"> <input type=text name="KChas" value="1"></td></tr>'; echo ' <tr><td valign="middle"> <p><br> <input name="ADD" type=submit value="Добавить запись в журнал"> </td></tr></p></table> </form><br>'; } if (isset($Data)) { echo ' <form name="form1" method="post" action=""><table border="0">'; $query9 = mysql_query("select KodPrep from Prepodavateli where FIOPrep='{$FPrepod}'", $conn); $row9 = mysql_fetch_array($query9); $query10 = mysql_query("select KodDisc from Disciplini where NazvDisc='{$NDisc}'", $conn); $row10 = mysql_fetch_array($query10); $query11 = mysql_query("select KodVidZan from VidiZanyatiy where NazvVidZan='{$NVidZan}'", $conn); $row11 = mysql_fetch_array($query11); mysql_query("insert into Kto4toUKogoVedet (KodPrep, KodDisc, KodGr, KodVidZan, Data, Kolvo4asov) values ('{$row9['KodPrep']}', '{$row10['KodDisc']}', '{$KGruppi}', '{$row11['KodVidZan']}', '{$Data}', '{$KChas}')", $conn); echo '<table width="200" border="1" bordercolor="#FFCCFF" bgcolor="#FFFFCC"><tr><th>ФИОПреп</th><th>Дисциплина</th><th>Группа</th><th>Вид занятия</th><th>Дата</th><th>Кол-воЧасов</th><th>Часовая ставка</th> <caption align="top"><h2><b>Журнал</h2></b></caption>'; $query33 = mysql_query("select * from Kto4toUKogoVedet", $conn); while ($row33 = mysql_fetch_array($query33)) { $query1 = mysql_query("select FIOPrep from Prepodavateli where KodPrep='{$row33['KodPrep']}'", $conn); while ($row1 = mysql_fetch_array($query1)) { $query2 = mysql_query("select NazvDisc from Disciplini where KodDisc='{$row33['KodDisc']}'", $conn); while ($row2 = mysql_fetch_array($query2)) { $query3 = mysql_query("select NazvVidZan from VidiZanyatiy where KodVidZan='{$row33['KodVidZan']}'", $conn); while ($row3 = mysql_fetch_array($query3)) { $query44 = mysql_query("Select Stavka from Razryadi, Prepodavateli where FIOPrep='{$row1['FIOPrep']}' AND Prepodavateli.NomRazr=Razryadi.NomRazr", $conn); while ($row44 = mysql_fetch_array($query44)) { $query55 = mysql_query("Select BazPlata from Disciplini where KodDisc='{$row33['KodDisc']}'", $conn); while ($row55 = mysql_fetch_array($query55)) { $query66 = mysql_query("Select 4isloStudGr from Gruppi where KodGr='{$row33['KodGr']}'", $conn); while ($row66 = mysql_fetch_array($query66)) { $query77 = mysql_query("Select MinRent from Gruppi LEFT JOIN Kursi ON (Gruppi.KodKursa = Kursi.KodKursa) where KodGr ='{$row33['KodGr']}'", $conn); while ($row77 = mysql_fetch_array($query77)) { $res=(($row44['Stavka']+$row55['BazPlata'])*$row66['4isloStudGr']*$row33['Kolvo4asov'])/$row77['MinRent']; echo '<tr><td>'.$row1['FIOPrep'].'</td><td>'.$row2['NazvDisc'].'</td><td>'.$row33['KodGr'].'</td><td>'.$row3['NazvVidZan'].'</td><td>'.$row33['Data'].'</td><td>'.$row33['Kolvo4asov'].'</td><td>'.$res.'</td></tr>'; } } } } } } } } echo '</table>'; } ?> </p> <p align="left"> </p> </body> </html> udalenieStudenta.php <html> <head> <title>Удаление студента</title> <meta content="text/html; charset=windows-1251" http-equiv="Content-Type" /> <meta http-equiv="Content-Language" content="ru-RU" /> <meta name="language" content="russian ru русский" /> </head> <body> <h6 align="center"><font color=#000066 size="4" face="Geneva, Arial, Helvetica, sans-serif"><strong>Платные курсы</strong></font><br> <font color="#003399" size="5"><em>"Медики-практиканты"</em></font></h6 align="center"> <hr color=006600 size="3"> <? include("library/db_connect.php"); if(isset($_POST['kodstudenta'])) { $res=count($_POST['kodstudenta']); //количество выбранных студентов for($i=0; $i<$res; $i++) { mysql_query("DELETE from StudentiVGruppax where ( KodStud='{$_POST['kodstudenta'][$i]}' AND KodGr='{$_POST['kgruppi']}' )", $conn); mysql_query('DELETE from Studenti where KodStud='.$_POST['kodstudenta'][$i]); } echo' <strong><font color=660066 size="5"><p align="center">Студент удален.</strong></font></p align="center">'; } else { echo ' <strong><font color=660066 size="5"><p align="center">Вы не выбрали студента.</strong></font></p align="center">'; } ?> <p align="left"> </p> </body> </html> index.php <meta content="text/html; charset=windows-1251" http-equiv="Content-Type" /> <meta http-equiv="Content-Language" content="ru-RU" /> <meta name="language" content="russian ru русский" /> <html> <style type="text/css"> <!-- .стиль1 {color: #006699} .стиль3 {color: #006699; font-size: 12px; } .стиль5 { color: #000000; font-size: 14px; font-family: "Courier New", Courier, monospace; } --> </style> <script type="text/javascript"> <!-- function MM_preloadImages() { //v3.0 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array(); var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++) if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}} } function MM_findObj(n, d) { //v4.01 var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) { d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);} if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n]; for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); if(!x && d.getElementById) x=d.getElementById(n); return x; } function MM_nbGroup(event, grpName) { //v6.0 var i,img,nbArr,args=MM_nbGroup.arguments; if (event == "init" && args.length > 2) { if ((img = MM_findObj(args[2])) != null && !img.MM_init) { img.MM_init = true; img.MM_up = args[3]; img.MM_dn = img.src; if ((nbArr = document[grpName]) == null) nbArr = document[grpName] = new Array(); nbArr[nbArr.length] = img; for (i=4; i < args.length-1; i+=2) if ((img = MM_findObj(args[i])) != null) { if (!img.MM_up) img.MM_up = img.src; img.src = img.MM_dn = args[i+1]; nbArr[nbArr.length] = img; } } } else if (event == "over") { document.MM_nbOver = nbArr = new Array(); for (i=1; i < args.length-1; i+=3) if ((img = MM_findObj(args[i])) != null) { if (!img.MM_up) img.MM_up = img.src; img.src = (img.MM_dn && args[i+2]) ? args[i+2] : ((args[i+1])? args[i+1] : img.MM_up); nbArr[nbArr.length] = img; } } else if (event == "out" ) { for (i=0; i < document.MM_nbOver.length; i++) { img = document.MM_nbOver[i]; img.src = (img.MM_dn) ? img.MM_dn : img.MM_up; } } else if (event == "down") { nbArr = document[grpName]; if (nbArr) for (i=0; i < nbArr.length; i++) { img=nbArr[i]; img.src = img.MM_up; img.MM_dn = 0; } document[grpName] = nbArr = new Array(); for (i=2; i < args.length-1; i+=2) if ((img = MM_findObj(args[i])) != null) { if (!img.MM_up) img.MM_up = img.src; img.src = img.MM_dn = (args[i+1])? args[i+1] : img.MM_up; nbArr[nbArr.length] = img; } } } function MM_swapImgRestore() { //v3.0 var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc; } function MM_swapImage() { //v3.0 var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3) if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];} } //--> </script> <head> <title>Курсы.Главная страница.</title> </head> <body onLoad="MM_preloadImages('img/nag.png','img/but_nav.png','img/trans_.png')"> <p> <? // echo '<hr color="808080" size="1">'; include("library/db_connect.php"); /*соединеие с базой*/ include("library/menu.shtml"); // echo '<hr color="808080" size="1">'; ?> </p> <table width="100%" border="0"> <tr> <td width="245" height="132"> </td> <td width="246" background="img/butt.png"><a href="http://localhost/med/kurs.php" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image3','','img/but_nav.png',0)"><img src="img/nag.png" name="Image3" width="245" height="130" border="0"></a><a href="javascript:;" target="_top" onClick="MM_nbGroup('down','group1','but','img/nag.png',1)" onMouseOver="MM_nbGroup('over','but','img/but_nav.png','img/trans_.png',1)" onMouseOut="MM_nbGroup('out')"></a></td> <td width="245" background="img/преп.png"><a href="http://localhost/med/SpisokPrepod.php" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image2','','img/but_nav.png',1)"><img src="img/nag.png" name="Image2" width="245" height="130" border="0"></a></td> <td width="214"> </td> </tr> <tr> <td height="129"> </td> <td valign="middle" background="img/журнал.png"><a href="http://localhost/med/vt.php" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image4','','img/but_nav.png',1)"><img src="img/nag.png" name="Image4" width="245" height="130" border="0"></a></td> <td background="img/оплата.png"><a href="http://localhost/med/Oplata.php" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image5','','img/but_nav.png',1)"><img src="img/nag.png" name="Image5" width="245" height="130" border="0"></a></td> <td> </td> </tr> <tr> <td height="131"> </td> <td valign="middle" background="img/программа.png"><a href="http://localhost/med/vtKto.php" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image6','','img/but_nav.png',1)"><img src="img/nag.png" name="Image6" width="245" height="130" border="0"></a></td> <td background="img/студ.png"><a href="http://localhost/med/Spisok.php" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image7','','img/but_nav.png',1)"><img src="img/nag.png" name="Image7" width="245" height="130" border="0"></a></td> <td> </td> </tr> <tr> <td height="42"> </td> <td valign="middle"> </td> <td> </td> <td> </td> </tr> </table> <? include("library/copyright.php"); ?> </body> </html>
|