$sth->finish;
print <<EOFR;
</BODY></table>
<a href=»/combin/2.html»><h3><U>Вернутся на главную</U></h3></a>
</HTML>
EOFR
exit;
ПРИЛОЖЕНИЕ З
Код программы «Администирование»
#!/usr/bin/perl
use DBI;
use CGI qw (:standard escapeHTML);
# declarations
my $dbh; #database handler
my $sth; #database statement handler
$base = 'comb';
$comp = 'localhost';
$dbport = '3306';
print «Content-type: text/html\n\n»; print <<EOH;
<HTML><HEAD><TITLE>База Токарёвского мясокомбината</TITLE></HEAD>
EOH print <<EOFR;
<BODY BGCOLOR= «black» TEXT= «green»><center>
<br><DIV style= «height: 140; width: 650; filter: Shadow (Color=red, Direction=300)"><font face= «Monotype Corsiva» size=6 color=yellow>База Токарёвского мясокомбината</font></div>
<br><DIV style= «height: 60; width: 270; filter: Shadow (Color=red, Direction=24)»>
<font style= «FONT-SIZE: 20pt» color=yellow>Администрирование</font></div>
<img src=»/combin/image/3.png»>
<form name='FORM1' action=»/cgi-bin/adm1.pl» method= «post»><br>
<fieldset style= «width:20%»><legend><font size=6 color= «336699»>Идентификация</font></legend>
<font face= «Ravie» size=5>Login:</font><br>
<input type= «user» size=15 maxlength=15 name= «user»><br>
<font face= «Ravie» size=5>Password:</font><br>
<input type= «password» size=15 maxlength=15 name= «password»><br>
</fieldset></font><br><br>
<input type= «submit» value= «ВХОД» style= «color:blue»> <input type= «reset» value= «ОЧИСТКА» style= «color:blue»>
</form><br></center></BODY></HTML> EOFR exit;
#!/usr/bin/perl
use DBI;
use CGI qw (:standard escapeHTML);
# declarations
my $dbh; #database handler
my $sth; #database statement handler
my ($log, $pass);
$base = 'comb';
$comp = 'localhost';
$dbport = '3306';
print «Content-type: text/html\n\n»; print <<EOH;
<HTML><HEAD><TITLE>База Токарeвского мясокомбината</TITLE><style>
a {text-decoration:none;}
h3 {font-size:18pt; color:0099CC;} </style>
EOH $dbh = DBI->connect («DBI:mysql:database=$base; host=$comp; port=&dbport», 'root', «);
if (not $dbh) {print <<ERRDB;
<p>Не могу подключиться к базе по порту 3306 дл проверки имени пользователя и пароля. Причина ошибки – <b>$DBI:errstr</b></p>
<hr width=90% border=2> ERRDB exit;};
$user = param («user»);
$password = param («password»);
my $er = 0;
$const = «select * from adm where login = '$user' and password = '$password'»;
$sth = $dbh->prepare($const);
$sth->execute;
while(($log, $pass)=$sth->fetchrow_array) {
if ($log = $user) {
$er += 1;};
if ($pass = $password) {
$er += 1};};
$sth->finish;
if ($er < 1) {print <<SOF;
<BODY BGCOLOR= «black» TEXT= «green»><center>
<br><DIV style= «height: 140; width: 650; filter: Shadow (Color=red, Direction=300)"><font face= «Monotype Corsiva» size=6 color=yellow>База Токаревского мясокомбината</font></div>
<br><DIV style= «height: 60; width: 270; filter: Shadow (Color=red, Direction=24)»>
<font style= «FONT-SIZE: 20pt» color=yellow>Администрирование</font></div><br>
<font size=6 color=336699 face= «Monotype Corsiva»><p>Не правильно заданы Логин и пароль</p></font>
<img src=»/combin/image/3.png»>
<form name='FORM1' action=»/cgi-bin/adm1.pl» method= «post»><br>
<fieldset style= «width:20%»><legend><font size=6 color=336699>Идентификация</font></legend>
<font face= «Ravie» size=5>Login:</font><br>
<input type= «user» size=15 maxlength=15 name= «user»><br>
<font face= «Ravie» size=5>Password:</font><br>
<input type= «password» size=15 maxlength=15 name= «password»><br>
</fieldset></font><br><br>
<input type= «submit» value= «ВХОД» style= «color:blue»> <input type= «reset» value= «ОЧИСТКА» style= «color:blue»>
</form><br></center></BODY> SOF exit;}; print <<EODT;
<BODY BGCOLOR= «black» text= «0099CC» link= «red» vlink= «0099CC» alink= «yellow»><center>
<br><DIV style= «height: 140; width: 650; filter: Shadow (Color=red, Direction=300)"><font face= «Monotype Corsiva» size=6 color=yellow>База Токаревского мясокомбината</font></div>
<h3>Пароль принят вы можете войти в базу</h3><br><br>
<font style= «FONT-SIZE: 18pt»><a href=»/combin/index_1.html»>[Вход]</a></font>
</BODY></html>
EODT exit;
Приложение И
Код программы «Добавить клиента»
#!/usr/bin/perl
#подключаем модули
use DBI;
use CGI qw (:standard escapeHTML);
#инициализируем переменные
my $dbh; #database handler
my $sth; #database statement handler
my $base = 'comb';
my $comp = 'localhost';
my $dbport = '3306';
my ($ky, $val);
my @form_sob = ();
my @vid_doc = ();
#вывод заголовка
print «Content-type: text/html\n\n»;
#вывод документа
print <<EOH;
<HTML>
<HEAD>
<TITLE>Токарёвский мясокомбинат</TITLE>
<style>
a {text-decoration:none;}
h3 {font-size:12pt; color:green;}
</style>
<BODY text= «0099CC» bgcolor= «black» alink= «red» link= «green» vlink= «0099CC»><center>
EOH
#подключаемся к базе
$dbh = DBI->connect («DBI:mysql:database=$base; host=$comp; port=$dbport», 'root', «);
if (not $dbh) {
print <<ERRDB;
<p class= «norm»>Не удалось законнектить базу<b>$base</b> по порту $dbport.<br>
Причина неудачи – <b>$DBI:errstr</b></p>
<hr align= «center» noshade size= «2» width= «90%» color= «red»>
<p class= «norm» align= «left»><font size= "+1»><a href=»/combin/index_1.html»>Вернуться
к главной странице</a></font></p>
</body></html>
ERRDB
exit;
};
$sth = $dbh->prepare ('select form, id from form_sob where id > 0');
$sth->execute;
while(($ky, $val)=$sth->fetchrow_array) {
$form_sob{$ky} = $val;
};
$sth->finish;
$sth = $dbh->prepare ('select vid, id from vid_doc where id > 0');
$sth->execute;
while(($ky, $val)=$sth->fetchrow_array) {
$vid_doc{$ky} = $val;
};
$sth->finish;
$dbh->disconnect;
print <<SOF;
<form name= «add» action=»/cgi-bin/kl_addb.pl» method= «post»>
<br><DIV style= «height: 60; width: 300; filter: Shadow (Color=red, Direction=24)»>
<font style= «FONT-SIZE: 20pt» color=yellow>Добавить Клиента</font></div>
<table align=center border=0 bordercolor=#151924>
<tr><td align=center><b>Форма собственности: (выбрать из списка)</td>
<td><select name= «form»>
SOF
foreach $ky (sort keys % form_sob) {
$val = $form_sob{$ky};
print «<option value=$val>$ky\n»;
};
print <<MID;
</select>
</td></tr>
<tr><td align=center><b>Клиент (Ф.И.О):</td><td><input type= «text» size= «30» maxlength= «100» name= «fio»></td></tr>
<tr><td align=center><b>Ответственное лицо (Ф.И.О):</td><td><input type= «text» size= «30» maxlength= «100» name= «otv»></td></tr>
<tr><td align=center><b>Юр. адрес:</td><td><input type= «text» size= «50» maxlength= «100» name= «ur_adr»></td></tr>
<tr><td align=center><b>Физ. адрес:</td><td><input type= «text» size= «50» maxlength= «100» name= «fiz_adr»></td></tr>
<tr><td align=center><b>Телефон:</td><td><input type= «text» size= «20» maxlength= «20» name= «tel»></td></tr>
<tr><td align=center><b>Вид документа: (выбрать из списка)</td>
<td><select name= «vid»>
MID
foreach $ky (sort keys % vid_doc) {
$val = $vid_doc{$ky};
print «<option value=$val>$ky\n»;
};
print <<EOFR;
</select>
</td></tr>
</table><br><input type= «submit» value= «Сохранить в базу»><input type=reset value= «Очистить поля»></form>
<a href=»/combin/3.html»><h3><U>Вернутся к Добавлению</U></h3></a>
</BODY>
</HTML>
EOFR
exit;
#!/usr/bin/perl
#подключаем модули
use DBI;
use CGI qw (:standard escapeHTML);
#инициализируем переменные
my $dbh; #database handler
my $sth; #database statement handler
my $base = 'comb';
my $comp = 'localhost';
my $dbport = '3306';
my ($ky, $val);
my $form= param('form');
my $fio= param('fio');
my $otv= param('otv');
my $ur_adr= param ('ur_adr');
my $fiz_adr= param ('fiz_adr');
my $tel= param('tel');
my $vid= param('vid');
#вывод заголовка
print «Content-type: text/html\n\n»;
#вывод документа
print <<EOH;
<HTML>
<HEAD>
<TITLE>Токарёвский мясокомбинат</TITLE>
<style>
a {text-decoration:none;}
h3 {font-size:12pt; color:green;}
</style>
<BODY text= «0099CC» bgcolor= «black» alink= «red» link= «green» vlink= «0099CC»><center>
EOH
#подключаемся к базе
$dbh = DBI->connect («DBI:mysql:database=$base; host=$comp; port=$dbport», 'root', «);
if (not $dbh) {
print <<ERRDB;
<p class= «norm»>Не удалось законнектить базу<b>$base</b> по порту $dbport.<br>
Причина неудачи – <b>$DBI:errstr</b></p>
<hr align= «center» noshade size= «2» width= «90%» color= «red»>
<p class= «norm» align= «left»><font size= "+1»><a href=»/combin/index_1.html»>Вернуться
к главной странице</a></font></p>
</body></html>
ERRDB
exit;
};
my $er = 0;
if ($fio eq «») {
$er += 1;
print qq [<p><h1><font color=red><B> ERROR -</B> </font>Не указан Клиент (Ф.И.О) </h1></p>\n];
};
if ($otv eq «») {
$er += 1;
print qq [<p><h1><font color=red><B> ERROR -</B> </font>Не указано Ответственное лицо (Ф.И.О)</h1></p>\n];
};
if ($ur_adr eq «») {
$er += 1;
print qq [<p><h1><font color=red><B>ERROR -</B> </font>Не указан Юридический адрес:</h1></p>\n];
};
if ($fiz_adr eq «») {
$er += 1;
print qq [<p><h1><font color=red><B>ERROR -</B> </font>Не указан Физический адрес:</h1></p>\n];
};
if ($tel eq «») {
$er += 1;
print qq [<p><h1><font color=red><B>ERROR -</B> </font>Не указан Телефон:</h1></p>\n];
};
if ($er > 0) {
print <<SOF;
<hr size=0.1 color= "#5E89C5»><p><center><font color=red size=4>Проверьте все поля и исправте ошибки<br>
или откажитесь от занесения данных в базу</font></p><hr size=0.1 color= "#5E89C5»>
<a href=»/combin/3.html»><h3><U>Вернутся к Добавлению</U></h3></a>
SOF
exit;
};
$qry = «INSERT INTO client VALUES (NULL, '$form', '$fio', '$otv', '$ur_adr', '$fiz_adr', '$tel', '$vid');»;
$rows = $dbh->do($qry);
$rows = $dbh->{'mysql_indertid'};
$dbh->do ('FLUSH TABLES, STATUS');
$dbh->disconnect;
print qq [<p><b>Новая запись внесена в таблицу «Клиент»</b></p>];
print <<EODT;
<center>
<hr align= «center» noshade size= «2» width= «90%»><p><a href=»/cgi-bin/kl_add.pl»><b><h3><U>Добавить еще одну запись в базу</U></h3></b></a></p>
<a href=»/combin/3.html»><h3><U>Вернутся к Добавлению</U></h3></a>
<hr align= «center» noshade size= «2» width= «90%»>
<BODY>
</HTML>
EODT
exit;
Приложение К
Код программы «Удаление клиента»
#!/usr/bin/perl
#подключаем модули
use DBI;
use CGI qw (:standard escapeHTML);
#инициализируем переменные
my $dbh; #database handler
my $sth; #database statement handler
my $base = 'comb';
my $comp = 'localhost';
my $dbport = '3306';
#вывод заголовка
print «Content-type: text/html\n\n»;
#вывод документа
print <<EOH;
<HTML><HEAD><TITLE>Токарёвский мясокомбинат</TITLE>
<style>
a {text-decoration:none;}
h3 {font-size:12pt; color:green;}
</style>
<BODY text= «0099CC» bgcolor= «black» alink= «red» link= «green» vlink= «0099CC»><center>
EOH
#подключаемся к базе
$dbh = DBI->connect («DBI:mysql:database=$base; host=$comp; port=$dbport», 'root', «);
if (not $dbh) {
print <<ERRDB;
<p class= «norm»>Не удалось законнектить базу<b>$base</b> по порту $dbport.<br>
Причина неудачи – <b>$DBI:errstr</b></p>
<hr align= «center» noshade size= «2» width= «90%» color= «red»>
<p class= «norm» align= «left»><font size= "+1»><a href=»/combin/index_1.html»>Вернуться к главной странице</a> </font></p></body></html>
ERRDB exit;};
#Выбор значений из таблицы клиент
$const=«SELECT form, fio, otv, ur_adr, fiz_adr, tel, vid
FROM form_sob, client, vid_doc
WHERE form_sob.id=client.id_form_sob and vid_doc.id=client.id_vid_doc»;
$sth = $dbh->prepare($const);
$sth->execute;
print <<TBL;
<br><DIV style= «height: 60; width: 270; filter: Shadow (Color=red, Direction=24)»>