• 締切済み

CGIメールフォームの入力エラーページだけをサイズ指定の別ウィンドウで開きたい!

CGI初心者です(><) メール送信フォームをフリーのCGIスクリプトを カスタマイズして処理するページを制作しています。 CGIはなんとか無難に稼働したのですが、ひとつ本体のhtmlで デザイン的な問題が。。。 入力OKで終了した場合は、たとえば「ok.html」のような サイト全体と同様スタイルのデザインページhtmlが表示 されるようになっていますが、フォーム入力にエラーがあった場合 CGIで処理された非常にシンプルで文字だけのページが 表示されてしまいます。 CGI初心者なのでエラーが返ったときに表示される内容を デザインされたページにするにはCGIをどう書き換えてよいか わからず、だったらエラーページだけ小窓表示したい、と考えました。 そこでメールフォームhtmlのフォームタグに <form method="POST" action="mailform.cgi" onSubmit="window.open("mailform.cgi","new",'width=300px,height=300px');return(false);"> と入れましたが、これだとやはりエラーページも_selfで表示されます。(※そのうえ小窓サイズ指定も指定されず普通に同ウィンドウに表示) <form method="POST" action="mailform.cgi" target="_blank" onSubmit="window.open("mailform.cgi","new",'width=300px,height=300px');return(false);"> だと、エラー入力がなくすべてOkで終了した場合のページも _blankで別ウィンドウで開いてしまいます。(※こちらも小窓サイズ指定が指定されず普通に別ウィンドウで開く) どうしたら、エラーの場合のみサイズ指定した 別ウィンドウで開いてくれるか、どなたか教えていただけないでしょうか?!どうぞよろしくお願いします(TT)

みんなの回答

  • outbrave
  • ベストアンサー率60% (231/380)
回答No.1

CGIで入力エラーは判断できますが、HTMLページで判断するのは難しいのでは?(Javascriptで可能かも知れませんが) ページデザインの問題なら、文字だけのエラーページの部分を探して書き換えればよいので比較的簡単だと思います。 また、テンプレートを使用しているメールフォームなら、さらに簡単ですね。 また、そのフォームタグですが括弧が間違っているので、指定サイズにはならないと思います。 と、いうわけで、テンプレートを使用しているメールフォームをお勧めします。

専門家に質問してみよう