2014-04-19 3 views
-1

여기 내 html 코드HTML은

<html> 
<title>Results</title> 
<body><h1> Here are your results</h1> 

<p>Please click the Button to see your result run by Ravi's team.</p> 
<form action='index.pl' method='post'> 
<input type='submit' value='submit'> 
</form> 
</body> 
</html> 

하고 index.pl 내 펄이며, 다음과 같이 내 서브 루틴 인 HTML로 표시합니다. 당신이 보는대로

sub my_result{ 

    my $run; 
    my $dir="/kbio/sraja/BenzoExposedDataSet/database/Output"; 
    my $parsebphtml = "/parse_bphtml.pl"; 
    my $olgacsvfile = "/database/Output/sample.csv"; 
    my @bp=<$dir/*.bp>; 

    $run ="perl $parsebphtml > $olgacsvfile"; 
     # print "$com\n"; 
    system($run)==0 or my_err("Could not run $run\n"); 
    #printing the table 
    open(F,"$olgacsvfile") or my_err("Could not open the csv ($olgacsvfile) file"); 
     print "<h2> Average Results </h2>"; 
     print "<table border=1>"; 
     while(my $line=<F>){ 
      print "<tr>"; 
      my @cells= split ',',$line; 
      foreach my $cell (@cells) 
      { 
       print "<td colspan=1>$cell</td>"; 
      } 
      print "</tr>"; 

     } 
     print "</table>"; 

} 

그래서, 테이블 내가 어떤 도움이 정말로 감지 될 을 results.html로 돌아해야 할 것입니다.

감사합니다. Geet

답변

1

나는 당신이하고 싶은 일이 얼마나 있는지 모르지만, 그것을 간단하게 유지하고 싶다면 HTML::Template 모듈을 사용해보십시오. 다음은 간단한 사용 예입니다.

<!DOCTYPE html> 

<html lang="en"> 
    <head> 
     <meta charset=utf-8> 
     <title>A random page</title> 
    </head> 
    <body> 
     <TMPL_VAR NAME=page_content> 
    </body> 
</html> 

내 perl 코드에는 다음과 같은 내용이 포함되어 있습니다. 더 나은 방법은 http://metacpan.org/pod/HTML::Template의 설명서를 확인하는 것입니다.

use HTML::Template; 

sub my_result { 
    return $html_string; 
} 

my $master_template = HTML::Template->new(filename => "Path to html template file"); 
$master_template->param('page_content' => my_result()); 

당신이 함께 갈 계획 얼마나 멀리에 따라, 나는 같은 mojolicious 프레임 워크 (http://mojolicio.us/perldoc/Mojo/Template)에서 사용하는 것처럼하는 고급 템플릿 시스템을 추천 할 것입니다.

건배, MrMcKizzle