[戻る]

cgiのEOMについて

name:XKYグループ 2005/10/24 17:59:14

お久しぶりです。
当方が設置しているSOにちょっとした(ゲームの進行上では何の問題もないのだが)問題が起きたので、
その解決の手助けをしてもらいたいと思って書き込むことにしました。

・SOでは_config.cgiの追加メニューで追加をすることが可能だが、携帯電話ではなぜかその部分が表示されない。

というわけで、考えたことが、_config.cgiで追加された部分を_base.cgiの市場とかオークションとかが並んでいる部分に組み込むということです。
こうすれば、携帯電話にも表示されます。
しかし、ここで問題が生じました。
追加メニューに追加していたのは、どれもHTMLタグを多用した(とはいってもあまり多くは無いが)HTMLファイルだったのです。
掲示板スクリプトなど、無駄にDLして設置してないCGIをあさってみたら、
(<は半角です)
print<<EOM;
EOM
というのを見つけました。おっしゃ!これならいける!と思って、早速そのまま移植したら500エラー。
さてはusr/bin/perlとか、その辺を追加するのを忘れただろうと思って確認してみると、ちゃんと書いてあったし、
パーミッションも705(SOはこれで動作)となっている。

という状況に遭遇してそこでhtmlのcgi移植は中断される羽目になってしまいました。
必要があれば、移植したいhtmlの内容を全て書き込みます。どうか、宜しくお願いします。

name:fuku@管理人 2005/10/25 00:18:26

お久しぶりです。

>・SOでは_config.cgiの追加メニューで追加をすることが可能だが、携帯電話ではなぜかその部分が表示されない。
追加メニューとは「@CUSTOM_MENU」のことでしょうか?
これの出力制御は_base.cgiのOutHTMLで行われるので、少しいじれば携帯でも表示できると思います。

書き込みの内容だとHTMLの中身を常にページに展開しようとしているように感じますが、
リンクを張るわけではなく、メニュー辺りに組み込むということでいいでしょうか?


print<<EOM;
EOM

については、名前は忘れましたが、「複数行の文字列」指定になります。
<<に続いて入力した文字列が行頭に出現するまでの間、改行も含めて文字列扱いされるというものです。
中の文字列は基本的にはそのまま扱われますが、変数展開は行います。

500エラーが出るということですが、500エラーだけでは情報不足なため、
ローカルでコンソールから実行するなどして得たエラーメッセージをお願いします。
(おそらく、文字列中にEOMが入ったか、変数展開中にエラーになったものと思われますが・・・)

ついでですが、この掲示板は基本的にタグ無効なんで<>なども半角で書いて大丈夫です〜。

name:XKYグループ 2005/10/26 16:21:41

解決に至りました^^

(オークション機能の追加のときに似たようなことをやったので、簡単にいきました^^b)

名前

URL(任意)

本文