рефераты рефераты
Домой
Домой
рефераты
Поиск
рефераты
Войти
рефераты
Контакты
рефераты Добавить в избранное
рефераты Сделать стартовой
рефераты рефераты рефераты рефераты
рефераты
БОЛЬШАЯ ЛЕНИНГРАДСКАЯ БИБЛИОТЕКА
рефераты
 
МЕНЮ
рефераты Проектирование информационных систем на базе MySQL и Internet рефераты

БОЛЬШАЯ ЛЕНИНГРАДСКАЯ БИБЛИОТЕКА - РЕФЕРАТЫ - Проектирование информационных систем на базе MySQL и Internet

Проектирование информационных систем на базе MySQL и Internet

Министерство образования Российской Федерации

Нижегородский Государственный Технический Университет

Нижегородский Вечерний Факультет

Кафедра: Компьютерные технологии в проектировании и производстве

Курсовая работа

по дисциплине:

«Проектирование информационных систем»

Проектирование информационных систем

На базе MySQL и Internet

Выполнили:

Греков В.В.

Певченко Г.П.

группа 99-ИКУ

Проверил:

Штанюк А.А.

г.Кстово

2003

Содержание

1 Задание

2 Анализ задания

3 Проектирование базы данных

4 Разработка CGI-программ и HTML-документов

5 Схема размещения информации на Internet узле

6 Контрольный пример

7 Выводы

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

Задание

Разработать информационную систему для реализации конкурсного отбора

кадров на базе программного обеспечения MySQL и Internet.

Анализ задания

Разрабатываемая система позволяет предприятию через Internet

объявить конкурс на имеющиеся у нее вакантные должности, собирать и

хранить сведения об участниках конкурса в виде заполняемых ими анкет.

Администратор имеет возможность вносить в базу данных новые

вакансии, удалять занятые, а также редактировать список присланных анкет,

отбирая наиболее перспективные для деятельности предприятия.

Проектирование базы данных

Реализация базы данных с помощью MySQL.

После запуска MySQL в командной строке создаем базу данных Konti:

C:\mysql\bin\mysqladmin create Konti

После этого в созданной базе создаем таблицы t1 и t2:

Создание таблицы t1:

use Konti

create table t1(prof varchar(30) not null primary key, knkrs int not

null, ed varchar(30) not null, cpc varchar (30) not null, crok int not

null);

Поле “prof” - является ключевым и содержит наименование вакансии.

Поле “knkrs” - содержит количество анкет, заявленных на данную

вакансию.

Поле “ed” - содержит сведения о необходимом образовании претендента на

данную вакансию.

Поле “cpc” - содержит сведения о необходимой специализации претендента

на данную вакансию.

Поле “crok” - содержит сведения о необходимом опыте работы претендента

по своей специализации.

Создание таблицы t2:

create table t2(fio varchar(30) not null primary key, eda varchar(30)

not null, cpca varchar(30) not null, croka int not null, adress varchar(60)

not null, vak varchar(30) not null);

поле “fio” (ключевое поле) – фамилия имя и отчество претендента;

поле “eda” – образование претендента;

поле “cpca” – специальность претендента;

поле “croka” – срок работы претендента по специальности;

поле “adress” – адрес претендента;

поле “vak” – выбранная вакансия претендента;

Разработка CGI-программ и HTML-документов

Файл Kontinental-HH.htm - главная страница.

Содержит две кнопки:

- "Просмотр вакансий" – запускает скрипт list.cgi и предназначена для

пользователя информационной системы - предоставляет ему возможность

ознакомиться со списком вакансий на предприятии, узнать текущий

конкурс на нее и заполнить анкету;

- "База данных” (пароль) – запускает скрипт BDvakans.cgi и

предназначена для администратора - предоставляет ему возможность

вносить в базу данных новые вакансии, удалять занятые, а также

редактировать список присланных анкет, отбирая наиболее

перспективные для деятельности предприятия.

Kontinental-HH.htm

<html>

<head><title>Континенталь-НН" --><title>Проектирование информационных систем на базе MySQL и Internet</title></head>

<body bgcolor="#faf1d8">

<center><h1><font color="#800000">ОАО "Континенталь-НН"

®</font></h1></center>

<p ALIGN="center"><font size="5"><strong><font color="#800000">Отдел

кадров</font></strong></font></p>

<p ALIGN="center"><font size="2"><strong>ПРОФЕССИОНАЛЬНЫЙ ПОДХОД К

ЧЕЛОВЕЧЕСКИМ РЕСУРСАМ</font></strong></p>

<table border="0">

<tr><td><blockquote class="text">

Сегодняшний день и перспективные задачи, стоящие перед организацией,

требуют от её сотрудников новых и современных решений. Администрация

предприятия проводит целенаправленную работу по привлечению в наши ряды

высокопрофессиональных специалистов по всем направлениям деятельности.<br>

Если Вы, ознакомившись со списком вакансий, увидели для себя

возможности к самореализации, наша кадровая служба с интересом ознакомится

с Вашим резюме.<br>

В любом случае, заполнив анкету, Вы сможете попасть в банк данных

нашего отдела кадров и рассчитывать на встречное предложение с нашей

стороны.

</blockquote>

</td></tr>

</table>

<form action="http://myserver/cgi-bin/list.bat">

<center><input type="submit" value="Просмотр вакансий"></center>

</form>

<br>

<form action="http://myserver/cgi-bin/BDvakans.bat" method="post">

<center><input type="submit" value="База данных">

<input type="password" name="111" ></center>

<center>Введите пароль для доступа <br><font size="2">(Временно пароль

не используется)</font></center>

</form>

</td></tr></table>

</html>

Файл list.cgi – исполняемая программа.

Выводит список вакансий и конкурс на них на основе данных таблицы t1.

Имеет 1 кнопку:

- “Заполнить анкету" – запускает скрипт anketa.cgi и передает в него

данные о выбранной вакансии.

list.cgi

use CGI qw(:standard);

use DBI;

print header();

print start_html("Список Вакансий для пользователя");

print qq{<body bgcolor="#faf1d8">};

print "<center><h1>Перечень вакансий</h1></center>";

print "<center>Выберите вакансию и заполните анкету</center>";

print "<br>";

$dbh=DBI->connect("dbi:mysql:konti");

$sth=$dbh->prepare("SELECT * FROM t1;");

$rows=$sth->execute();

print "<form action=../../index.html"http://myserver/cgi-bin/anketa.bat\">";

print "<center><table border=1>";

print qq{<tr ALIGN="center"><th> № </th>

<th>Вакансия</th><th> Конкурс <br>на

место</th>

<th>Ваш<br>выбор</th></font></tr>};

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

{

($bakans,$knkrs,$ed,$Cpc,$Crok)=$sth->fetchrow_array;

$i++;

print "<tr>

<td ALIGN=../../index.html"center\">$i</td>";

$i--;

print"<td>$bakans</td>

<td><center>$knkrs</center></td>

<TD><center><INPUT type=../../index.html"radio\" name=../../index.html"vibor\"

value=../../index.html"vib$i\"></center></TD>

</tr>";

}

$sth->finish();

$dbh->disconnect();

print"</table></center>";

print "<br>";

print "<center><INPUT type=../../index.html"submit\" value=../../index.html"Заполнить

анкету\"></center\>";

print "<br>";

print "<center>Анкеты претендентов будут рассмотрены 25 января

2003г.</center>";

print "</FORM>";

print end_html();

Файл anketa.cgi – исполняемая программа.

Выводит перечень основных требований к кандидату на вакансию на основе

данных таблицы t1 и предлагает претенденту заполнить анкетные данные о

себе.

Имеет 2 кнопки:

- “Отправить" – запускает скрипт itog.cgi и передает в него анкетные

данные претендента;

- "Очистить форму" – стирает из формы ошибочно введенные анкетные

данные.

anketa.cgi

use CGI qw(:standard);

use DBI;

print header();

print start_html("Анкета");

print qq{<body bgcolor="#faf1d8">};

my $pas=param("vibor");

$var=$pas;

$var=~ s/\D+//;

if ($pas eq "") {print qq{<p ALIGN="center"><font

size="5"><strong><font color="#800000">

<br> Вы забыли выбрать

вакансию!</font></strong></font></p>};

print "<br>";

print "<center><table border=0>";

print "<tr><td><FORM action=../../index.html"http://myserver/cgi-bin/list.bat\">";

print "<center><INPUT type=../../index.html"submit\" value=../../index.html"Назад\"></center\>";

print "</FORM></td>";

print "<td><FORM action=../../index.html"http://myserver/cgi-bin/Konti.bat\">";

print "<center><INPUT type=../../index.html"submit\" value=../../index.html"На

главную\"></center\>";

print "</FORM></td></tr>";

print "</table></center>";

goto quit;

}

$dbh=DBI->connect("dbi:mysql:konti");

$sth=$dbh->prepare("SELECT * FROM t1;");

$rows=$sth->execute();

print "<center><h1>Заполните анкетные данные</h1></center>";

print qq{<p ALIGN="center"><font size="5">};

print "<center><u>Основные требования к кандидату</u></center>";

for($i=0;$i<$var+1;$i++)

{

($bakans,$knkrs,$ed,$Cpc,$Crok)=$sth->fetchrow_array;

if ($i==$var)

{

print "<center><table>";

print "<TR><TD>Образование</TD><TD>- $ed</TD></TR>";

print "<TR><TD>Специальность</TD><TD>- $Cpc</TD></TR>";

print "<TR><TD>Срок работы по специальности, лет </TD><TD>-

$Crok</TD></TR>";

print "</center></table>";

}

}

print "</font></p>";

$sth->finish();

$dbh->disconnect();

print "<form action=../../index.html"http://myserver/cgi-bin/itog.bat\">";

print "<center><table>";

print "<TR><TD>Фамилия имя отчество</TD><TD><input

name=../../index.html"fio\"></TD></TR>";

print "<TR><TD>Образование</TD>

<TD><SELECT name=../../index.html"ed\">

<OPTION value=../../index.html"высшее0\" selected>высшее

<OPTION value=../../index.html"нез/высшее1\">нез/высшее

<OPTION value=../../index.html"ср. техническое2\">ср. техническое

<OPTION value=../../index.html"ср. специальное3\">ср. специальное

<OPTION value=../../index.html"среднее4\">среднее

</SELECT>

</TD></TR>";

print "<TR><TD>Специальность</TD><TD><input name=../../index.html"cpc\"></TD></TR>";

print "<TR><TD>Стаж работы по специальности, лет </TD><TD><input

name=../../index.html"crok\"></TD></TR>";

print "<TR><TD>Адрес</TD><TD><input name=../../index.html"adress\"></TD></TR>";

print "<TR><TD><BR></TD></TR>";

print qq{<INPUT type="hidden" name="vib" value=$pas>};

print "<TR><TD><input type=../../index.html"submit\" value=../../index.html"Отправить\"></TD>

<TD><INPUT type=../../index.html"reset\" value=../../index.html"Очистить форму\"></TD></TR>";

print "</table></center>";

print "</form>";

quit:

print end_html();

Файл itog.cgi – исполняемая программа.

Проверяет введенные анкетные данные на соответствие основным

требованиям к претенденту, при выполнении которых заносит их в таблицу t2 и

увеличивает значение конкурса на выбранную вакансию в таблице t1, в

противном случае выводит мотивированное сообщение об отказе в принятии

анкеты.

Имеет 2 кнопки:

- “Назад" - запускает скрипт itog.cgi;

- "На главную" - запускает скрипт Konti.cgi.

itog.cgi

use CGI qw(:standard);

use DBI;

print header();

print start_html("Добавление Анкеты");

print qq{<body bgcolor="#faf1d8">};

$dbh=DBI->connect("dbi:mysql:konti");

$sth=$dbh->prepare("SELECT * FROM t1;");

$rows=$sth->execute();

$fio=param('fio');

$eda=param('ed');

$eda0=$eda;

$eda=~ s/\d+//;

$eda0=~ s/\D+//;

$cpca=param('cpc');

$cpca=~ tr/А-Я/а-я/;

$croka=param('crok');

$adress=param('adress');

$var=param('vib');

$var=~ s/\D+//;

print "<br>";

print qq{<p ALIGN="center"><font size="4"><strong><font

color="#800000">};

for($i=0;$i<$var+1;$i++)

{

($bakans,$knkrs,$ed,$Cpc,$Crok)=$sth->fetchrow_array;

if ($i==$var)

{

if ($ed="высшее") {$ed0=0;} elsif ($ed="нез/высшее") {$ed0=1;} elsif

($ed="ср. техническое") {$ed0=2;} elsif ($ed="ср. специальное") {$ed0=3;}

else {$ed0=4;}

if ($eda0 > $ed0) {$fe=1;} else {$fe=0;}

if ($cpca ne $Cpc) {$fcp=1;} else {$fcp=0;}

if ($croka < $Crok) {$fcr=1;} else {$fcr=0;}

if ($fe==1 or $fcp==1 or $fcr==1) {print qq{Извините, $fio, но Ваша

анкета не принята к рассмотрению из-за несоответствия указанных в ней

данных требованиям к кандидату};}

else {

my $sth=$dbh->prepare("SELECT * FROM t2;");

my $rows=$sth->execute();

$flag=0;

for($j=0;$j<$rows;$j++)

{

($fio2,$eda2,$cpca2,$croka2,$adress2,$vak2)=$sth->fetchrow_array;

if ($fio2 eq $fio)

{

$flag=1;

$knkrs=$knkrs-1;

$sql="update t1 set knkrs='$knkrs' where prof='$bakans';";

$dbh->do($sql);

}

}

$knkrs=$knkrs+1;

$sql="update t1 set knkrs='$knkrs' where prof='$bakans';";

$dbh->do($sql);

$sth->finish();

if ($flag==0) {

print qq{Уважаемый, $fio, Ваша анкета принята для участия в

конкурсе.<br><br>Желаем успеха!};

$sql="INSERT INTO

t2(fio,eda,cpca,croka,adress,vak)values('$fio','$eda','$cpca','$croka','$adr

ess','$bakans')";

$dbh->do($sql);

}

else {

print qq{Уважаемый, $fio, в базе данных уже имеется анкета на Ваше имя,

фамилию, отчество. Если Вы хотите заполнить новую анкету - измените свои

ФИО дополнив, например, цифровым символом ($fio-2).<br><br>};

}

}

}

}

print qq{</font></strong></font></p>};

$sth->finish();

$dbh->disconnect();

print "<br>";

print "<center><table border=0>";

print "<tr><td><FORM action=../../index.html"http://myserver/cgi-bin/anketa.bat\">";

print qq{<INPUT type="hidden" name="vibor" value="vibor$var">};

print "<center><INPUT type=../../index.html"submit\" value=../../index.html"Назад\"></center\>";

print "</FORM></td>";

print "<td><FORM action=../../index.html"http://myserver/cgi-bin/Konti.bat\">";

print "<center><INPUT type=../../index.html"submit\" value=../../index.html"На

главную\"></center\>";

print "</FORM></td></tr>";

print "</table></center>";

print end_html();

Файл BDvakans.cgi – исполняемая программа.

Выводит список вакансий на основе данных таблицы t1 и предлагает

администратору добавить новые вакансии или удалить уже занятые.

Имеет 3 кнопки:

- “Добавить" - запускает скрипт Addvakan.cgi;

- “Удалить" - запускает скрипт vakdel.cgi;

- “На главную" - запускает скрипт Konti.cgi.;

и 2 ссылки:

- “Список вакансий" - запускает скрипт BDvakans.cgi;

- “Список анкет" - запускает скрипт BDankets.cgi.

BDvakans.cgi

use CGI qw(:standard);

use DBI;

print header();

print start_html("Список Вакансий");

print qq{<body bgcolor="#faf1d8">};

my $pass=param("111");

if (111)

{

print "<center><h1>База данных</h1></center>";

print "<center>";

print qq{<A href="http://myserver/cgi-bin/BDvakans.bat"><font

size="5">Список вакансий</A>};

print "       ";

print qq{<A href="http://myserver/cgi-bin/BDankets.bat">Список

анкет</font></A>};

print "</center>";

print "<FORM action=../../index.html"http://myserver/cgi-bin/Addvakan.bat\">";

print "<center><table border=0>";

print qq{<tr><td><p ALIGN="center"><font size="5"><strong><font

color="#800000">Список вакансий

   </font></strong></font></td>};

print "<td><center><INPUT type=../../index.html"submit\"

value=../../index.html"Добавить\"></center\></td></tr></p>";

print "</table></center>";

print "</FORM>";

$dbh=DBI->connect("dbi:mysql:konti");

$sth=$dbh->prepare("SELECT * FROM t1;");

$rows=$sth->execute();

print "<form action=../../index.html"http://myserver/cgi-bin/vakdel.bat\">";

print "<center><table border=1>";

print qq{<tr ALIGN="center"><th> № </th>

<th>Вакансия</th>

<th>Пометить<br>на удаление</th></font></tr>};

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

{

($bakans,$knkrs,$ed,$Cpc,$Crok)=$sth->fetchrow_array;

$i++;

print"<tr>

<td ALIGN=../../index.html"center\">$i</td>

<td>$bakans</td>

<TD><center><INPUT type=../../index.html"checkbox\" name=../../index.html"vdel$i\"

value=../../index.html"vdel$i\"></center></TD>

</tr>";

$i--;

}

$sth->finish();

$dbh->disconnect();

print "</table></center>";

print "<br>";

print "<center><table border=0>";

print "<tr><td><center><INPUT type=../../index.html"submit\"

value=../../index.html"Удалить\"></center\></td>";

print "</FORM>";

print "<td><FORM action=../../index.html"http://myserver/cgi-bin/Konti.bat\">";

print "<center><INPUT type=../../index.html"submit\" value=../../index.html"На

главную\"></center\></td></tr>";

print "</FORM>";

print "</table></center>";

}

else

{

print h1("Неправильный пароль!!!");

}

print end_html();

Файл BDankets.cgi – исполняемая программа.

Выводит список анкет на основе данных таблицы t2 и предлагает

администратору удалить наименее перспективные.

Имеет 2 кнопки:

- “Удалить" - запускает скрипт ankdel.cgi;

- “На главную" - запускает скрипт Konti.cgi;

и 2 ссылки:

- “Список вакансий" - запускает скрипт BDvakans.cgi;

- “Список анкет" - запускает скрипт BDankets.cgi.

BDankets.cgi

use CGI qw(:standard);

use DBI;

print header();

print start_html("Список Анкет");

print qq{<body bgcolor="#faf1d8">};

my $pass=param("111");

print "<center><h1>База данных</h1></center>";

print "<center>";

print qq{<A href="http://myserver/cgi-bin/BDvakans.bat"><font

size="5">Список вакансий</A>};

print "       ";

print qq{<A href="http://myserver/cgi-bin/BDankets.bat">Список

анкет</font></A>};

print "</center>";

print qq{<p ALIGN="center"><font size="5"><strong><font

color="#800000">Список анкет    </font></strong></font>};

$dbh=DBI->connect("dbi:mysql:konti");

$sth=$dbh->prepare("SELECT * FROM t2;");

$rows=$sth->execute();

print "<form action=../../index.html"http://myserver/cgi-bin/ankdel.bat\">";

print "<center><table border=1>";

print qq{<tr ALIGN="center"><th> № </th>

<th>Фамилия Имя Отчество</th>

<th>Образование</th>

<th>Специальность</th>

<th>Срок работы по спец-ти</th>

<th>Адрес</th>

<th>Вакансия</th>

<th>Пометить<br>на удаление</th></font></tr>};

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

{

($fio,$eda,$cpca,$croka,$adress,$vak)=$sth->fetchrow_array;

$i++;

print"<tr>

<td><center>$i</center></td>

<td><center>$fio</center></td>

<td><center>$eda</center></td>

<td><center>$cpca</center></td>

<td><center>$croka</center></td>

<td><center>$adress</center></td>

<td><center>$vak</center></td>

<TD><center><INPUT type=../../index.html"checkbox\" name=../../index.html"vdel$i\"

value=../../index.html"vdel$i\"></center></TD>

</tr>";

$i--;

}

$sth->finish();

$dbh->disconnect();

print "</table></center>";

print "<br>";

print "<center><table border=0>";

print "<tr><td><center><INPUT type=../../index.html"submit\"

value=../../index.html"Удалить\"></center\></td>";

print "</FORM>";

print "<td><FORM action=../../index.html"http://myserver/cgi-bin/Konti.bat\">";

print "<center><INPUT type=../../index.html"submit\" value=../../index.html"На

главную\"></center\></td></tr>";

print "</FORM>";

print "</table></center>";

print end_html();

Файл Addvakan.cgi – исполняемая программа.

Предлагает администратору форму для внесения данных для новой вакансии

Имеет 2 кнопки:

- “Отправить данные" - запускает скрипт Dob.cgi и передает в него

данные новой вакансии;

- “Очистить форму" - стирает из формы ошибочно введенные данные.

Addvakan.cgi

use CGI qw(:standard);

use DBI;

print header();

print start_html("Добавление Вакансии");

print qq{<body bgcolor="#faf1d8">};

print "<center><h1>Заполните данные для новой вакансии</h1></center>";

print "<form action=../../index.html"http://myserver/cgi-bin/Dob.bat\">";

print "<center><table>";

print "<TR><TD>Должность</TD><TD><input name=../../index.html"profv\"></TD></TR>";

print "<TR><TD>Образование</TD>

<TD><SELECT name=../../index.html"edv\">

<OPTION value=../../index.html"высшее\" selected>высшее

<OPTION value=../../index.html"нез/высшее\">нез/высшее

<OPTION value=../../index.html"ср. техническое\">ср. техническое

<OPTION value=../../index.html"ср. специальное\">ср. специальное

<OPTION value=../../index.html"среднее\">среднее

</SELECT>

</TD></TR>";

print "<TR><TD>Специальность</TD><TD><input name=../../index.html"cpcv\"></TD></TR>";

print "<TR><TD>Стаж работы по специальности, лет </TD><TD><input

name=../../index.html"crokv\"></TD></TR>";

print "<TR><TD><BR></TD></TR>";

print "<TR><TD><input type=../../index.html"submit\" value=../../index.html"Отправить данные\"></TD>

<TD><INPUT type=../../index.html"reset\" value=../../index.html"Очистить форму\"></TD></TR>";

print "</table></center>";

print "<br>";

print "</form>";

print end_html();

Файл Dob.cgi – исполняемая программа.

Служебная программа для проверки наличия введенных данных и их внесения

в таблицу t1. При отсутствии данных предлагает вернуться назад или на

главную страницу.

Имеет 2 кнопки:

- “Назад" - запускает скрипт Addvakan.cgi;;

- “На главную" - запускает скрипт Konti.cgi;;

и 2 ссылки:

- “Список вакансий" - запускает скрипт BDvakans.cgi;

- “Список анкет" - запускает скрипт BDankets.cgi.

Dob.cgi

use CGI qw(:standard);

use DBI;

print header();

print start_html("Добавление Вакансии");

print qq{<body bgcolor="#faf1d8">};

print "<center><h1>База данных</h1></center>";

print "<center>";

print qq{<A href="http://myserver/cgi-bin/BDvakans.bat"><font

size="5">Список вакансий</A>};

print "       ";

print qq{<A href="http://myserver/cgi-bin/BDankets.bat">Список

анкет</font></A>};

print "</center>";

$dbh=DBI->connect("dbi:mysql:konti");

$sth=$dbh->prepare("SELECT * FROM t1;");

my $profv=param("profv");

my $edv=param("edv");

my $cpcv=param("cpcv");

my $crokv=param("crokv");

$crokv=~ s/\D+//;

if ($profv ne "")

{

$sql=qq{insert into t1(prof, knkrs, ed, cpc, crok) values

('$profv',0,'$edv','$cpcv','$crokv');};

$dbh->do($sql);

print "<br>";

$sth->finish();

$dbh->disconnect();

}

else {print qq{<br><center><font size="4">Вы не ввели данные. Повторите

ввод.</font></center><br>};}

print "<center><table border=0>";

print "<tr><td><FORM action=../../index.html"http://myserver/cgi-

bin/Addvakan.bat\">";

print "<center><INPUT type=../../index.html"submit\" value=../../index.html"Назад\"></center\>";

print "</FORM></td>";

print "<td><FORM action=../../index.html"http://myserver/cgi-bin/Konti.bat\">";

print "<center><INPUT type=../../index.html"submit\" value=../../index.html"На

главную\"></center\>";

print "</FORM></td></tr>";

print "</table></center>";

print end_html();

Файл vakdel.cgi– исполняемая программа.

Служебная программа для удаления вакансии из таблицы t1.

Имеет 1 кнопку:

- “Назад" - запускает скрипт Konti.cgi;

и 2 ссылки:

- “Список вакансий" - запускает скрипт BDvakans.cgi;

- “Список анкет" - запускает скрипт BDankets.cgi.

vakdel.cgi

use CGI qw(:standard);

use DBI;

print header();

print start_html("Удаление Вакансии");

print qq{<body bgcolor="#faf1d8">};

print "<center><h1>База данных</h1></center>";

print "<center>";

print qq{<A href="http://myserver/cgi-bin/BDvakans.bat"><font

size="5">Список вакансий</A>};

print "       ";

print qq{<A href="http://myserver/cgi-bin/BDankets.bat">Список

анкет</font></A>};

print "</center>";

$dbh=DBI->connect("dbi:mysql:konti");

$sth=$dbh->prepare("SELECT * FROM t1;");

$rows=$sth->execute();

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

{ $i++;

($bakans,$knkrs,$ed,$Cpc,$Crok)=$sth->fetchrow_array;

my $var=param("vdel$i");

$var=~ s/\D+//;

if ($i==$var)

{

$sql="delete from t1 where prof=\"$bakans\";";

$dbh->do($sql);

}

$i--;

}

$sth->finish();

$dbh->disconnect();

print "<br>";

print "<FORM action=../../index.html"http://myserver/cgi-bin/Konti.bat\">";

print "<center><INPUT type=../../index.html"submit\" value=../../index.html"На

главную\"></center\>";

print "</FORM>";

print end_html();

Файл ankdel.cgi– исполняемая программа.

Служебная программа для удаления анкеты из таблицы t2 и уменьшения

значения конкурса на вакансию в таблице t1.

Имеет 1 кнопку:

- “На главную" - запускает скрипт Konti.cgi;

и 2 ссылки:

- “Список вакансий" - запускает скрипт BDvakans.cgi;

- “Список анкет" - запускает скрипт BDankets.cgi.

ankdel.cgi

use CGI qw(:standard);

use DBI;

print header();

print start_html("Удаление Анкеты");

print qq{<body bgcolor="#faf1d8">};

print "<center><h1>База данных</h1></center>";

print "<center>";

print qq{<A href="http://myserver/cgi-bin/BDvakans.bat"><font

size="5">Список вакансий</A>};

print "       ";

print qq{<A href="http://myserver/cgi-bin/BDankets.bat">Список

анкет</font></A>};

print "</center>";

$dbh=DBI->connect("dbi:mysql:konti");

$sth=$dbh->prepare("SELECT * FROM t2;");

$rows=$sth->execute();

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

{ $i++;

($fio, $eda, $cpca, $croka, $adress, $vak)=$sth->fetchrow_array;

my $var=param("vdel$i");

$var=~ s/\D+//;

if ($i==$var)

{

$sql="delete from t2 where fio=\"$fio\";";

$dbh->do($sql);

my $sth=$dbh->prepare("SELECT * FROM t1;");

my $rows=$sth->execute();

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

{

($bakans,$knkrs,$ed,$Cpc,$Crok)=$sth->fetchrow_array;

if ($bakans eq $vak)

{

$knkrs=$knkrs-1;

$sql="update t1 set knkrs='$knkrs' where prof='$vak';";

$dbh->do($sql);

}

}

$sth->finish();

}

$i--;

}

$sth->finish();

$dbh->disconnect();

print "<br>";

print "<FORM action=../../index.html"http://myserver/cgi-bin/Konti.bat\">";

print "<center><INPUT type=../../index.html"submit\" value=../../index.html"На

главную\"></center\>";

print "</FORM>";

print end_html();

Схема размещения информации на Internet-узле

На сервере информация располагается следующим образом:

|C:\Apache\ |

|htdocs\ |

| |Kontinental-HH.htm |

| |titul.htm |

| cgi-bin\ |

| |Addanket.bat |

| |Addvakan.bat |

| |Addvakan.cgi |

| |ankdel.bat |

| |ankdel.cgi |

| |anketa.bat |

| |anketa.cgi |

| |BDankets.bat |

| |BDankets.cgi |

| |BDvakans.bat |

| |BDvakans.cgi |

| |Dob.bat |

| |Dob.cgi |

| |itog.bat |

| |itog.cgi |

| |Konti.bat |

| |Konti.cgi |

| |konti.txt |

| |list.bat |

| |list.cgi |

| |start.bat |

| |vakdel.bat |

| |vakdel.cgi |

Контрольный пример работы пользователя.

Главная страница (Kontinental-HH.htm):

[pic]

Выбор вакансии (list.cgi):

[pic]

Заполнение анкеты (anketa.cgi):

[pic]

Успешное внесение анкеты в базу данных (itog.cgi):

[pic]

Контрольный пример работы администратора

Просмотр списка вакансий (BDvakans.cgi).

[pic]

Просмотр списка вакансий (BDankets.cgi).

[pic]

Добавление новой вакансии (Addvakan.cgi)

[pic]

Выводы.

. Разработка информационной системы на базе MySQL и Internet позволяет

создать большую базу данных. Данная система удобна в использовании и

разработке программно.

. Большое значение имеет то, что существует отделение программы

управления базой данных от интерфейса.

. Интерфейс заключается в создании запросов на SQL, передаче их серверу

и получении результата. Запросы передаются в виде строк. При получении

запроса основную работу выполняет сервер. Клиенту высылаются только

данные, полученные в результате получения запроса. Это приводит к

снижению нагрузки, что позволяет повысить безопасность при работе с

данными. Перед посылкой запроса требуется регистрация на сервере.

. Легко организовать многопользовательскую работу.

Использованная литература.

1. Айсбари С.: Корпоративные решения на базе LINUX.

2. Орлов С. А.: Технологии разработки ПО. Разработка сложных

программных систем.

3. Материалы лекций.

РЕКЛАМА

рефераты НОВОСТИ рефераты
Изменения
Прошла модернизация движка, изменение дизайна и переезд на новый более качественный сервер


рефераты СЧЕТЧИК рефераты

БОЛЬШАЯ ЛЕНИНГРАДСКАЯ БИБЛИОТЕКА
рефераты © 2010 рефераты