OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
締切り
済み

CGIだとうまくいかない!

  • すぐに回答を!
  • 質問No.217669
  • 閲覧数30
  • ありがとう数0
  • 気になる数0
  • 回答数3
  • コメント数0

お礼率 35% (34/97)

まずは下記ソースをご覧ください。
これを実行させると上下2のフレームができまして、上フレームにある「Jump C」と
いうリンクをクリックすると、下フレームが「ccccccccc」というところまでジャンプ
するように作りました。
まずは実験版としてCGIでなくPC上でHTMLファイルを作成(main.cgiがmain.htmになる)
しました。その時はうまく下フレームの「cccccccc」までジャンプしたのですが、これを
CGIに作り直して実行させたところ、何も動作しないままでした。
CGIでもHTML上同様の動きをさせるにはどのようにしたらよろしいでしょうか?
どなたかご存知の方いましたら、ご鞭撻のほどお願い致します。
-------------- main.cgi -------------------------------------
<HTML>
<HEAD><TITLE>フレームテスト</TITLE></HEAD>
<FRAMESET ROWS="20%,*">
<FRAME SRC="top.cgi" NAME="FRAME2">
<FRAME SRC="btm.cgi" NAME="FRAME3">
</FRAMESET>
</HTML>

-------------- top.cgi -------------------------------------
<HTML>
<head>
</head>
<body>
<a href="right_btm.cgi#c" target="FRAME3">Jump C</a>
</body>
</html>

-------------- btm.cgi -------------------------------------
<HTML>
<head>
</head>
<body>
<A NAME="#a">aaaaaaaaa<br><br><br><br><br><br><br><br><br>
<A NAME="#b">bbbbbbbbb<br><br><br><br><br><br><br><br><br>
<A NAME="#c">ccccccccc<br><br><br><br><br><br><br><br><br>
<A NAME="#d">ddddddddddd<br><br><br><br><br><br><br><br><br>
</body>
</html>
------------------------------------------------------------
このCGIを実行すると、
通報する
  • 回答数3
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

回答 (全3件)

  • 回答No.1
レベル12

ベストアンサー率 24% (124/500)

<A NAME="#a">がおかしいと私は思います。 このタグの対応は <A NAME="名前">に対して、 <a href="ファイル名#名前">が正しいので、 <A NAME="a">とすべきところのはず。 HTMLで書いたときはその辺がいい加減に解釈されて ...続きを読む
<A NAME="#a">がおかしいと私は思います。

このタグの対応は
<A NAME="名前">に対して、
<a href="ファイル名#名前">が正しいので、
<A NAME="a">とすべきところのはず。

HTMLで書いたときはその辺がいい加減に解釈されて無視されてても、
CGIでは#によって処理(ちょっと度忘れしましたが)されてるかもしれません。

一応実行したときのソースを確かめて表示が正しいことも確認しながら、
そこを直してみてください。
補足コメント
yo-he

お礼率 35% (34/97)

早速のアドバイスありがとうございます。
指摘点を頂いた後、私の方でもおかしいことに気づき<a name=~>の
箇所で#を取り除きやってみたのですが、残念ながらそれでも問題点は解決されないようでした。
また何かお気づきの点ありましたら、宜しくお願い致します。
投稿日時 - 2002-02-14 14:49:53

  • 回答No.2
レベル12

ベストアンサー率 24% (124/500)

投稿してすぐに思い出しました。 #は「そこからコメントアウト」の記号なので、 そこから後ろが表示されないかも。 perlで出力させるときはついでに print "<a href=\"right_btm.cgi\#c\" target=\"FRAME3\">" のように前にエスケープマークの\をつけてみるのはいかがでし ...続きを読む
投稿してすぐに思い出しました。

#は「そこからコメントアウト」の記号なので、
そこから後ろが表示されないかも。

perlで出力させるときはついでに
print "<a href=\"right_btm.cgi\#c\" target=\"FRAME3\">"
のように前にエスケープマークの\をつけてみるのはいかがでしょうか。
補足コメント
yo-he

お礼率 35% (34/97)

早速のアドバイスありがとうございます。
ご指摘の点ですが、ここのHTMLの箇所は

print << STD_OUT
<HTML>
<HEAD>
(以下省略・・・・・)
STD_OUT

のように記述を行いましたので、CGIを起動後
HTMLソースを確認しても#は正常についているようでした。
説明不足があって大変申し訳ありません。
お手数ですが宜しくお願い致します。
投稿日時 - 2002-02-14 14:54:07
  • 回答No.3
レベル10

ベストアンサー率 34% (61/176)

top.cgiでのリンクが btm.cgiではなく、right_btm.cgiになっているからではないのですか? ...続きを読む
top.cgiでのリンクが btm.cgiではなく、right_btm.cgiになっているからではないのですか?
補足コメント
yo-he

お礼率 35% (34/97)

早速のアドバイスありがとうございます。
タイプミスで「right_btm.cgi」ではなく「btm.cgi」ミスでした。
重ね重ねミスがあり、大変ご迷惑をおかけして大変申し訳ありません。
宜しくお願い致します。
投稿日時 - 2002-02-14 15:15:58
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このQ&Aにこう思った!同じようなことあった!感想や体験を書こう
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ