空间模式的网页与PERL CGI



当我在cgi perl上工作时,我正在尝试对齐两个序列并打印它们在网页上的输出,但这部分可能存在一些问题,因为我没有得到我想要的网页输出格式。如果我试图在一个txt文件上打印这个输出,那么它就会以我想要的方式出现。

代码有问题

print "[$id]n";
print "Length = $Mnn";
print "Score = $bitS bits ($S), Expect = $Evaln";
print "Identities = $matchnum/$totlen ($ipct%), Positives = $sim/$totlen ($Ppct%), Gaps = $gapnum/$totlen ($Gpct%)nn";
print "Query ";
print "$_"foreach @align1;
print "n";
print "      ";
print "$_"foreach @homol;
print "n";
print "Sbjct ";
print "$_"foreach @align2;
print "nnn";`

input1 YLGGAILAEVIGTTLMKFSEGFTRLWPSVGTIICYCASFWLLAQTLAYIPTGIAYAIWSG

input2 MKWLILVLGILSNASASVLVKYAMLPPRRFPSLADPMAALSNWPFWLGLALYGGAFLLYA

输出应该像这样:

Score = 82.4 bits (202), Expect = 3.973330e-025
Identities = 40/40 (100.0%), Positives = 40/40 (100.0%), Gaps = 0/40 (0.0%)
Query MTDTTLPPGGDAADRVEPVDIQQEMQRSYIDYAMSVIVGR
      ||||||||||||||||||||||||||||||||||||||||
Sbjct MTDTTLPPGGDAADRVEPVDIQQEMQRSYIDYAMSVIVGR

就像在我的网页上一样,我以这种方式进入

Score = 82.4 bits (202), Expect = 3.973330e-025 Identities = 40/40 (100.0%), Positives = 40/40 (100.0%), Gaps = 0/40 (0.0%) Query MTDTTLPPGGDAADRVEPVDIQQEMQRSYIDYAMSVIVGR  |||||||||||||||||||||||||||||||||||||||| Sbjct MTDTTLPPGGDAADRVEPVDIQQEMQRSYIDYAMSVIVGR

返回的是什么内容类型的页眉?如果您告诉浏览器期待HTML,那么它将把您的数据解释为HTML并忽略任何空白(包括换行符)。

如果你发送的是纯文本,那么你应该发送的内容类型为text/plain

您要输出的不是.txt文件,而是HTML,因此必须输出HTML标记,如


和& lt; pre>正确地组织它。将整个输出用

标签应该让你得到你想要的,在这里,即添加:
print "<pre>n";

开头,

print "</pre>n";

结尾,最好加上完整的<和&>

感谢paul-griffiths和Dave Cross分享你们的知识。正如早些时候我使用<Br><p>标签,但我在显示对齐时遇到了同样的错误…最后,用<pre>标签解决我的问题....再次感谢....

最新更新