[過去ログ] CGI設置について質問【Part3】 (983レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
667
(2): 2009/06/21(日)17:45 ID:5ibI/zs2(1) AAS
AA省
668: 2009/06/21(日)17:55 ID:??? AAS
サーバの設定がかわったんだろ。
500エラーはサーバのエラーログみないと詳しいことはわからん。
669: 2009/06/21(日)17:57 ID:??? AAS
あーあとは読み書きしてるファイルのオーナーやパーミッションのせいで
エラー出てるのかもな。cgiに起因するエラーならそのcgiで拾って表示することはできる
670: 2009/06/23(火)23:30 ID:??? AAS
・保存したデータを使ってevalしてる
・空文字行が入ると変数に適切な値が入らずバグる仕様だった
などいろいろ予想できるな

取りあえずevalで死んでる理由をブラウザに出力してみることをお勧めする
671: 667 2009/06/30(火)11:51 ID:Q3Q4iwEf(1/2) AAS
ありがとうございます。
修復しながら実験していましたが、
>・空文字行が入ると変数に適切な値が入らずバグる仕様だった
が原因であることを確信するに至りました。

cgiAからcgiBに送り、cgiBでdataCを作成し、dataCをcgiAで読み込む、
といった構成をとっているのですが、
例えば直接cgiBを開いてしまうと、dataCには改行のみが記録され、
それをcgiAで読み込むとエラーとなってしまうようでした。
ということでcgiB内で、dataCに必要な配列が空であった場合、
dataCは作成しないといった修正をしたいと考えているのですが、
省1
672: 2009/06/30(火)12:04 ID:??? AAS
それはそういうコードを入れればいいだけだろう。
どんなコードかはキミが元のcgiを書いてないからオレにはわからん。
673
(1): 667 2009/06/30(火)12:59 ID:Q3Q4iwEf(2/2) AAS
私の考えでは、例えば

if ($a = 空であることを示すなにか){
print("数値が正しくありません。データは保存されません。");
}
else{
print("数値は正常です。保存されました。");

open (OUT,">>data/a.txt");
print OUT $a;
close (OUT);

}
省1
674: 2009/06/30(火)15:32 ID:??? AAS
>>673
例えば配列の要素数を見る
配列が空の時は配列の要素は0個

if(scalar @hoge == 0){…

要素を見て undef か空文字列の場合に分岐なら

if($huga eq ''){…

改行も入ってる可能性があるならあらかじめ chomp しておく
省1
675: 2009/07/04(土)00:11 ID:??? AAS
そこまで考えたのになぜやってみないのだろうか…
676: 2009/07/04(土)13:45 ID:??? AAS
手元にPCがないと予想
677
(1): 2009/07/04(土)18:08 ID:C/xVn9DY(1/2) AAS
さくらインターネットを使っています。
html内に
<!--#include virtual="./xxx.txt" -->
と記述して、xxx.txt内のには
<!--#exec cgi="./zzz.cgi" -->
と書かれています。
html内に
<!--#exec cgi="./zzz.cgi" -->
を直接書けば実行されるのですが、
上記の方法でやると、実行してもhtmlのソース内に、
省2
678: 2009/07/04(土)18:17 ID:??? AAS
前者の方法を使う。

または、xxx.txt がHTTP非公開ディレクトリに入ってても
動くのなら、xxx.txt を非公開ディレクトリに入れる。
679
(1): 677 2009/07/04(土)19:03 ID:C/xVn9DY(2/2) AAS
言葉が足らなくてすいません。
後者なら普通に動くのですが、
「前者」の方法でやるとコマンドがhtmlソースに残るだけになるということです。
680
(1): 2009/07/04(土)19:18 ID:JGjY4Dhz(1) AAS
AA省
681
(1): 2009/07/04(土)19:49 ID:??? AAS
スクリプト経由で画像表示させてるからじゃない?
自動で画像に広告挿入されてるから表示されなくなってるからxディレクトリを使うとかで回避
682: 2009/07/04(土)21:08 ID:??? AAS
>>679
・xxx.txt(exec cgi だけ書かれたファイル) → xxx.shtml にリネーム
・include 時の記述も <!--#include virtual="./xxx.shtml" --> にする

こういうこと?気分的にすっきりしないけど
683
(1): 680 2009/07/04(土)23:28 ID:JLuVgr4g(1) AAS
>>681
xディレクトリで回避できました。ありがとうございます。

ただ、掲示板の方でページ上部に表示義務がある広告が表示されなくなったのですが
これを正しく表示させる方法はありますか?
684
(1): 2009/07/04(土)23:46 ID:??? AAS
xディレクトリで表示させたい時は広告タグを手動で埋め込む
685: 683 2009/07/05(日)01:48 ID:TsoP6A8H(1) AAS
>>684
できました!ありがとうございました。
686
(2): 2009/07/07(火)13:59 ID:4tOYVlLE(1) AAS
必須入力の項目を作りたいのですが、以下のようにしたのでは送信できてしまいます。
未入力の場合のエラーメッセージの出し方はどうすればよいでしょうか?

<input type=hidden name="_indispen" value="test">
A<input type="radio" name="test" value="a">
B<input type="radio" name="test" value="b" >

<input type=submit value=" 送信 ">
1-
あと 297 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.019s