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

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
664: 2009/06/14(日)10:25 ID:i84kd9Ro(2/3) AAS
&ではなく@でした。
665: 2009/06/14(日)10:40 ID:i84kd9Ro(3/3) AAS
たびたび申し訳ありません、%であまりを使うなら@daysの数字が正しくありませんでした。
666: 2009/06/14(日)11:46 ID:??? AAS
>663
time()の結果は、ある瞬間からの経過秒数を示す整数。
だから、いまから10分後の時間は、単純にtime()の結果に10 * 60を足せば求まる。1日なら60*60*24を足せばいい。
で、その後localtime()で日付形式に直す、と。
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ディレクトリで回避できました。ありがとうございます。

ただ、掲示板の方でページ上部に表示義務がある広告が表示されなくなったのですが
これを正しく表示させる方法はありますか?
1-
あと 300 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.017s