Почему моя следующая подпрограмма выдает ошибку?
syntax error at Script line 19, near "queue_name)" syntax error at Script line 39, near "}" Script had compilation errors. syntax error at /proj/in/db.cgi line 879, near "queue_name)"
Что я уже пробовал:
<pre>sub print_overall_summary { my $str = shift; $DBH = &connect or die "Cannot connect to the sql server \n"; $DBH->do("USE $str;"); my $stmt="select queue_name,jobs_pending,jobs_running from queues order by time desc ;"; ; my $sth = $DBH->prepare( $stmt ); $sth->execute() or print "Could not prepare_overall_summarydata"; print "<script language=\"javascript\" type=\"text/javascript\"> \n" ; print "\$(document).ready(function(){ \n"; %TABLE_DATA =(); my @sys=qw/Adice Incisive Spectre Vcs Calibre Others/; my $table = $sth->fetchall_hashref; for my $r (@$table) { my $name='Others'; for my $s (@sys){ if ($r->{queue_name)=~m/$s/i) {$name=$s; last;} } $TABLE_DATA{$name}{jobs_pending}+=$r->{jobs_pending}; $TABLE_DATA{$name}{jobs_running}+=$r->{jobs_running}; } for my $var(qw/running pending/) { my @parts=(); for my $s (@sys){ push @parts,'["'.$s.'",' .$TABLE_DATA{$s}{'jobs_'.$var} .']'; } print 'var data_'.$var.'=['.join(',',@parts).']'."\n"; } print " \n pieChart(\"placeholder39\",data_running,{title:\"<ce nter>Jobs Running</center>\"});\n"; print " \n pieChart(\"placeholder41\",data_pending,{title:\"<ce nter>Jobs Pending</center>\"});\n"; print "});"; print "</script>"; }
Richard MacCutchan
Сообщения об ошибках говорят вам, что не так. Вам нужно исправить синтаксические ошибки.
find data
В приведенном выше примере я использовал правильный синтаксис.Я не мог понять, в чем проблема, с каким синтаксисом?