Не могу разобраться с переменными num_docs и NUM_DOC_IN_EERD и NUM. А вообще данная программа представляет собой таблицу с несколькими записями, в ней есть 2 ссылки редактировать и удалить. Проблема с ссылкой удалить. Вроде бы все описала, а с переменными сама запуталась. Может посмотрите свежим взглядом?
#!c:/perl/bin/perl
#!/usr/bin/perl
$Root = "c:/www";
use CGI;
use DBI;
$Query = new CGI;
$syslog="c:/www/data/people";
$Query->charset('koi8-r');
$NUM = $row->{'NUM'};
sub PrintMainForm()
{
print <<"EOT";
<FORM NAME="mainform" ACTION="$Foto" METHOD="post" ENCTYPE="multipart/form-data">
<INPUT name="sessionid" type="hidden" value="$SessionId">
<INPUT name="NUMSS" type="hidden" value="$d">
<INPUT name="num_docs" type="hidden" value="">
<INPUT name="NUM_DOC_IN_EERD" type="hidden" value="">
EOT
}
$d = $Query->param( "num_docs" );
if( defined $d )
{
print "<b>DELETE * FROM document WHERE NUM='$d'</b>";
$sth = $dbh->prepare("DELETE * FROM document WHERE NUM='$d'") or die "Cannot prepare: " . $dbh->errstr();
$sth->execute() or die "Cannot execute: " . $sth->errstr();
Сама ссылка на удаление выглядит следующим образом
$sth = $dbh->prepare("SELECT * FROM document ORDER BY NUM") or die "Cannot prepare: " . $dbh->errstr();
$sth->execute() or die "Cannot execute: " . $sth->errstr();
while ( $row = $sth->fetchrow_hashref)
{
$NUM = $row->{'NUM'};
$NUM_DOC_IN_EERD = $row->{'NUM_DOC_IN_EERD'};
PrintMainForm();
print <<"EOT";
<td>
<OPTION><A HREF="#" onClick="mainform.target='_self';mainform.direction.value='$NUM_DOC_IN_EERD';mainform.NUM_DOC.value=$NUM;mainform.submit();return false;"><B>Редактировать</B></A></OPTION>
</td>
EOT
print <<"EOT";
<td>
<OPTION><A HREF="#" onClick="mainform.target='_self';mainform.NUM.value='$NUM_DOC_IN_EERD';mainform.num_docs.value=$NUM;mainform.submit();return false;"><B>Удалить</B></A></OPTION>
</td>
EOT
Программа выдает ошибку при нажатии на ссылку удалить
mainform.NUM есть null или не является объектом