ラウンジの追加発言フォームが崩れてしまうのは?

[上に] [前に] [次に]
みっちゃん [E-Mail] 2000/02/03(木) 23:35:36
とほほのラウンジを使わせてもらってます。
あれこれ書き加えていくうちに、トピックに追加発言をするときのフォームの位置が崩れてしまいました。要するに新規質問のフォームはきちっとしているのに、追加発言のフォームでは、ずれてしまいます。特にそこのCGIはいじってません。どうすればいいでしょう?
http://www.projecta.co.jp/moug/boards/wordopr/cgi-bin/wwwlng.cgi?print+200001/00010004.txt
http://www.projecta.co.jp/moug/boards/wordopr/cgi-bin/wwwlng.cgi?print+200001/00010002.txt

2000/02/04(金) 00:06:23
<PRE>タグでネストされているので,改行が反映されている.
それだけ.

みっちゃん 2000/02/04(金) 00:26:55
せっかく教えてもらっているのにすいません。
原因はわかったのですがどう対処すればよいのでしょうか?

びぎな++ 2000/02/04(金) 01:10:43
オリジナルスクリプトに自分で
print "<PRE>\n";
とか
print "</PRE>\n";
って書き加えたんですよね? たぶん・・・

そのスクリプトを見せてもらわないと,わからないと思います。

みっちゃん [E-Mail] 2000/02/04(金) 01:45:18
お手数おかけして申し訳ございません。いろいろ調べたんですけど結局中途半端で・・・・。スプリクトですね。こんな感じです。

# トピック内容を書き出す
#
sub printTopicContent #(IN)
{
    local(*IN) = @_;

    while (<IN>) {
        s/[\r\n]+//;
        if (/^Reply-To: /) {
            next;
        } elsif ($hflag && /^From: /) {
            s/^From: //;
            print "<HR>\n";print "<PRE>";
#            print "<FONT COLOR=red><B>$_</B></FONT>\n";
            print "<FONT COLOR=red><B>$_</B></FONT>";
        } elsif ($hflag && /^E-Mail: /) {
            s/^E-Mail: //;
#            print "<A HREF='mailto:$_'>[E-Mail]</A>\n";
            print "<A HREF='mailto:$_'>[E-Mail]</A>";
        } elsif ($hflag && /^HomePage: /) {
            s/^HomePage: //;
#            print "<A HREF='$_'>[HomePage]</A>\n";
            print "<A HREF='$_'>[HomePage]</A>";
        } elsif ($hflag && /^Date: /) {
            s/^Date: //;
#            print "$_<BR>\n";
            print "$_<BR>";
        } elsif ($hflag && /^Solved: /) {
#            print "[[<FONT COLOR='#008080'>解決</FONT>]]<BR>\n";
            print "[[<FONT COLOR='#008080'>解決</FONT>]]<BR>";
        } elsif (/^========================================[\r\n]*$/) {
            $hflag = 1;
        } elsif ($hflag && ($_ eq "")) {
            $hflag = 0;
        } else {
            s/(http:\/\/[a-zA-Z0-9\.\/\-+#_?~&%=^\@:;]+)/<A HREF="$1">$1<\/A>/g;
            s/^((&gt;|>).*$)/<FONT COLOR="#400040">$1<\/FONT>/;
            print "$_\n";
#            print "$_<BR>\n";
        }
    }
    print "</PRE>";
}
ホントにご迷惑おかけします。

みっちゃん 2000/02/04(金) 01:48:48
もう本当にすいません。
「スプリクト」ではなく「スクリプト」です。
2度とこんなことのないようにします。

2000/02/04(金) 02:01:08
ぱっと見ですが,whileループ内で<pre>を出力してるのにループ外で</pre>を出力してるのが問題っぽい.当然閉じタグが足りなくなる.

後ろのほうです
            print "$_\n";
#            print "$_<BR>\n";
        }
    }
    print "</PRE>";
}
を            print "$_\n";
#            print "$_<BR>\n";
        }
    print "</PRE>";
    }
}
にしたら良くなりませんか?

みっちゃん 2000/02/04(金) 12:27:04
たびたびすいません。
<PRE>タグの位置をいろいろ変えてみました。追加発言のフォームはばっちり決まったんですが、トピックのフォントサイズが小さいのと1行とびになってしまいます。ここのラウンジのようにぎゅっぎゅっとしまった感じにしたいのですが。
# トピック内容を書き出す
#
sub printTopicContent #(IN)
{
    local(*IN) = @_;

    while (<IN>) {
        s/[\r\n]+//;
        if (/^Reply-To: /) {
            next;
        } elsif ($hflag && /^From: /) {
            s/^From: //;
            print "<HR>\n";
#            print "<FONT COLOR=red><B>$_</B></FONT>\n";
            print "<FONT COLOR=red><B>$_</B></FONT>";
        } elsif ($hflag && /^E-Mail: /) {
            s/^E-Mail: //;
#            print "<A HREF='mailto:$_'>[E-Mail]</A>\n";
            print "<A HREF='mailto:$_'>[E-Mail]</A>";
        } elsif ($hflag && /^HomePage: /) {
            s/^HomePage: //;
#            print "<A HREF='$_'>[HomePage]</A>\n";
            print "<A HREF='$_'>[HomePage]</A>";
        } elsif ($hflag && /^Date: /) {
            s/^Date: //;
#            print "$_<BR>\n";
            print "$_<BR>";
        } elsif ($hflag && /^Solved: /) {
#            print "[[<FONT COLOR='#008080'>解決</FONT>]]<BR>\n";
            print "[[<FONT COLOR='#008080'>解決</FONT>]]<BR>";
        } elsif (/^========================================[\r\n]*$/) {
            $hflag = 1;
        } elsif ($hflag && ($_ eq "")) {
            $hflag = 0;
        } else {
            s/(http:\/\/[a-zA-Z0-9\.\/\-+#_?~&%=^\@:;]+)/<A HREF="$1">$1<\/A>/g;
            s/^((&gt;|>).*$)/<FONT COLOR="#400040">$1<\/FONT>/;print "<PRE>";
            print "$_\n";
#            print "$_<BR>\n";
             print "</PRE>";
        }
    }
}

[上に] [前に] [次に]