Имеет 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"><fontsize="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' whereprof='$bakans';";
$dbh->do($sql);
$sth->finish();
if ($flag==0) {
print qq{Уважаемый, $fio, Ваша анкета принята для участия в конкурсе.<br><br>Желаем успеха!};
$sql="INSERTINTOt2(fio,eda,cpca,croka,adress,vak)values('$fio','$eda','$cpca','$croka','$adress','$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><FORMaction=\"http://myserver/cgi-bin/anketa.bat\">";
print qq{<INPUT type="hidden"name="vibor" value="vibor$var">};
print "<center><INPUT type=\"submit\"value=\"Назад\"></center\>";
print "</FORM></td>";
print "<td><FORMaction=\"http://myserver/cgi-bin/Konti.bat\">";
print "<center><INPUT type=\"submit\"value=\"На главную\"></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();
printstart_html("Список Вакансий");
print qq{<bodybgcolor="#faf1d8">};
my$pass=param("111");
if (111)
{
print"<center><h1>База данных</h1></center>";
print"<center>";
print qq{<Ahref="http://myserver/cgi-bin/BDvakans.bat"><fontsize="5">Список вакансий</A>};
print "      ";
print qq{<Ahref="http://myserver/cgi-bin/BDankets.bat">Списоканкет</font></A>};
print"</center>";
print "<FORMaction=\"http://myserver/cgi-bin/Addvakan.bat\">";
print"<center><table border=0>";
printqq{<tr><td><p ALIGN="center"><fontsize="5"><strong><fontcolor="#800000">Список вакансий   </font></strong></font></td>};
print"<td><center><INPUT type=\"submit\"value=\"Добавить\"></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 "<formaction=\"http://myserver/cgi-bin/vakdel.bat\">";
print"<center><table border=1>";
print qq{<trALIGN="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>
<tdALIGN=\"center\">$i</td>
<td>$bakans</td>
<TD><center><INPUTtype=\"checkbox\" name=\"vdel$i\"value=\"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=\"submit\"value=\"Удалить\"></center\></td>";
print"</FORM>";
print"<td><FORMaction=\"http://myserver/cgi-bin/Konti.bat\">";
print"<center><INPUT type=\"submit\" value=\"Наглавную\"></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{<Ahref="http://myserver/cgi-bin/BDvakans.bat"><fontsize="5">Список вакансий</A>};
print "       ";
print qq{<Ahref="http://myserver/cgi-bin/BDankets.bat">Список анкет</font></A>};
print "</center>";
print qq{<p ALIGN="center"><fontsize="5"><strong><font color="#800000">Список анкет   </font></strong></font>};
$dbh=DBI->connect("dbi:mysql:konti");
$sth=$dbh->prepare("SELECT * FROM t2;");
$rows=$sth->execute();
print "<formaction=\"http://myserver/cgi-bin/ankdel.bat\">";
print "<center><table border=1>";
print qq{<trALIGN="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=\"checkbox\"name=\"vdel$i\"value=\"vdel$i\"></center></TD>
</tr>";
$i--;
}
$sth->finish();
$dbh->disconnect();
print "</table></center>";
print "<br>";
print "<center><table border=0>";
print "<tr><td><center><INPUTtype=\"submit\" value=\"Удалить\"></center\></td>";
print "</FORM>";
print "<td><FORMaction=\"http://myserver/cgi-bin/Konti.bat\">";
print "<center><INPUT type=\"submit\"value=\"На главную\"></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();
printstart_html("Добавление Вакансии");
print qq{<bodybgcolor="#faf1d8">};
print"<center><h1>Заполните данные для новойвакансии</h1></center>";
print "<formaction=\"http://myserver/cgi-bin/Dob.bat\">";
print "<center><table>";
print "<TR><TD>Должность</TD><TD><inputname=\"profv\"></TD></TR>";
print"<TR><TD>Образование</TD>
<TD><SELECTname=\"edv\">
<OPTION value=\"высшее\"selected>высшее
<OPTION value=\"нез/высшее\">нез/высшее
<OPTION value=\"ср. техническое\">ср.техническое
<OPTION value=\"ср. специальное\">ср. специальное
<OPTION value=\"среднее\">среднее
</SELECT>
</TD></TR>";
print "<TR><TD>Специальность</TD><TD><inputname=\"cpcv\"></TD></TR>";
print "<TR><TD>Стаж работыпо специальности, лет </TD><TD><inputname=\"crokv\"></TD></TR>";
print "<TR><TD><BR></TD></TR>";
print "<TR><TD><inputtype=\"submit\" value=\"Отправить данные\"></TD>
<TD><INPUT type=\"reset\" value=\"Очистить форму\"></TD></TR>";
print "</table></center>";
print "<br>";
print "</form>";
print end_html();
Файл Dob.cgi– исполняемая программа.
Служебная программа для проверки наличия введенных данных и ихвнесения в таблицу t1. При отсутствии данных предлагает вернутьсяназад или на главную страницу.
Имеет 2 кнопки:
- “Назад" - запускает скрипт Addvakan.cgi;;
- “На главную" - запускает скрипт Konti.cgi;;