45220 (Проектирование информационных систем на базе MySQL и Internet), страница 2
Описание файла
Документ из архива "Проектирование информационных систем на базе MySQL и Internet", который расположен в категории "". Всё это находится в предмете "информатика" из , которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "рефераты, доклады и презентации", в предмете "информатика, программирование" в общих файлах.
Онлайн просмотр документа "45220"
Текст 2 страницы из документа "45220"
print start_html("Список Вакансий");
print qq{};
my $pass=param("111");
if (111)
{
print "
База данных
print "
print qq{Список вакансий};
print "       ";
print qq{Список анкет};
print "";
print "";
print "
print qq{
Список вакансий    
print "
print "";
print "";
$dbh=DBI->connect("dbi:mysql:konti");
$sth=$dbh->prepare("SELECT * FROM t1;");
$rows=$sth->execute();
print "";
print "
print qq{
на удаление
for($i=0;$i<$rows;$i++)
{
($bakans,$knkrs,$ed,$Cpc,$Crok)=$sth->fetchrow_array;
$i++;
print"
";
$i--;
}
$sth->finish();
$dbh->disconnect();
print "";
print "
";
print "
print "
print "";
print "
print "
print "";
print "";
}
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{};
my $pass=param("111");
print "
База данных
print "
print qq{Список вакансий};
print "       ";
print qq{Список анкет};
print "";
print qq{
Список анкет    };
$dbh=DBI->connect("dbi:mysql:konti");
$sth=$dbh->prepare("SELECT * FROM t2;");
$rows=$sth->execute();
print "";
print "
print qq{
на удаление
for($i=0;$i<$rows;$i++)
{
($fio,$eda,$cpca,$croka,$adress,$vak)=$sth->fetchrow_array;
$i++;
print"
";
$i--;
}
$sth->finish();
$dbh->disconnect();
print "";
print "
";
print "
print "
print "";
print "
print "
print "";
print "";
print end_html();
Файл Addvakan.cgi – исполняемая программа.
Предлагает администратору форму для внесения данных для новой вакансии
Имеет 2 кнопки:
-
“Отправить данные" - запускает скрипт Dob.cgi и передает в него данные новой вакансии;
-
“Очистить форму" - стирает из формы ошибочно введенные данные.
Addvakan.cgi
use CGI qw(:standard);
use DBI;
print header();
print start_html("Добавление Вакансии");
print qq{};
print "
Заполните данные для новой вакансии
print "";
print "
print "
print "
ср. техническое
ср. специальное
среднее
";
print "
print "
print "
print "
print "";
print "
";
print "";
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{};
print "
База данных
print "
print qq{Список вакансий};
print "       ";
print qq{Список анкет};
print "";
$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 "
";
$sth->finish();
$dbh->disconnect();
}
else {print qq{
};}
print "
print "
print "
print "";
print "
print "
print "";
print "";
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{};
print "
База данных
print "
print qq{Список вакансий};
print "       ";
print qq{Список анкет};
print "";
$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 "
";
print "";
print "
print "";
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{};
print "
База данных
print "
print qq{Список вакансий};
print "       ";
print qq{Список анкет};
print "";
$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 "
";
print "";
print "
print "";
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):
Выбор вакансии (list.cgi):
Заполнение анкеты (anketa.cgi):
Успешное внесение анкеты в базу данных (itog.cgi):
Контрольный пример работы администратора
Просмотр списка вакансий (BDvakans.cgi).
Просмотр списка вакансий (BDankets.cgi).
Добавление новой вакансии (Addvakan.cgi)
Выводы.
-
Разработка информационной системы на базе MySQL и Internet позволяет создать большую базу данных. Данная система удобна в использовании и разработке программно.
-
Большое значение имеет то, что существует отделение программы управления базой данных от интерфейса.
-
Интерфейс заключается в создании запросов на SQL, передаче их серверу и получении результата. Запросы передаются в виде строк. При получении запроса основную работу выполняет сервер. Клиенту высылаются только данные, полученные в результате получения запроса. Это приводит к снижению нагрузки, что позволяет повысить безопасность при работе с данными. Перед посылкой запроса требуется регистрация на сервере.
-
Легко организовать многопользовательскую работу.
Использованная литература.
-
Айсбари С.: Корпоративные решения на базе LINUX.
-
Орлов С. А.: Технологии разработки ПО. Разработка сложных программных систем.
-
Материалы лекций.