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

Страница: 7/8

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

print "<center>";

print qq{<A href="http://myserver/cgi-bin/BDvakans.bat"><font size="5">Список вакансий</A>};

print "&nbsp &nbsp &nbsp &nbsp";

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="http://myserver/cgi-bin/Konti.bat">";

print "<center><INPUT type="submit" value="На главную"></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 "&nbsp &nbsp &nbsp &nbsp";

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="http://myserver/cgi-bin/Konti.bat">";

print "<center><INPUT type="submit" value="На главную"></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):

Реферат опубликован: 7/01/2007