トップページ⇒php
1001コメント311KB

CGIだけど、なんか質問ある? part 6

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん02/04/23 20:28ID:Kp0cZQna
CGIスクリプトの運用に関する質問スレです。

<<注意:CGIは特定の言語に依存するものではありません>>

Perlのコーディングに関する質問はこちら
【Perl】初心者コーナーPart11
http://pc.2ch.net/test/read.cgi/php/1017201229/


過去ログは>>2
0133nobodyさん02/05/03 23:48ID:???
Perlのコーディングに関する質問はこちら
【Perl】初心者コーナーPart12
http://pc.2ch.net/test/read.cgi/php/1019917048/
013412902/05/04 00:24ID:KDDclJiB
>>132
レスどうもです。
print "[$buf]";
とすると、
[]
が返されます。

REQUEST_METHOD
ではPOSTが返ってきます。

ifでPOSTの方に入っていますがreadでSTDINから読めていないのですね。

CGIの分類に入りますよね?この記事は。
013512702/05/04 00:36ID:???
>>134
うち(UNIX)で試してみたけど、出るね。
残念ながら、Windowsの問題かも。
あきらめて sysread() を使うか <> で読むしかないかも。

perlの話になってきたので、続きがあればperlスレで。
0136nobodyさん02/05/04 00:59ID:???
>>134
WinNT(SP6a) + Apache + ActivePerl ではちゃんとでますよ
0137nobodyさん02/05/04 01:14ID:???
CGI.pm使って見れ。
それで表示されなけりゃHTTPDのバグ。
表示されれば100%コーディングミス。

tuka晒したコードが全然参考にならん。
ちゃんとコピー&ペーストしろよ。
0138nobodyさん02/05/04 02:01ID:???
どんな html コードから post したのかサパーリ

ワ カ リ マ セ ー ン
013912902/05/04 02:17ID:KDDclJiB
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<TITLE>$title</TITLE>
</HEAD>
<BODY>
<CENTER>
<FORM action="cgi-bin/test.cgi" id=FORM1 method=post name=FORM1>
<INPUT TYPE="hidden" NAME="md" VALUE="1">
<TABLE bgcolor=#b0b0b0 border=0 cellPadding=3 cellSpacing=2>
<TBODY>
<TR bgcolor=#f0f0f0>
<TD nowrap><FONT size=-1>ハンドル</FONT></TD>
<TD nowrap><INPUT id=hd name=TXT_ID size="22" maxlength="40"></TD>
</TR>
<TR bgcolor=#f0f0f0>
<TD nowrap><FONT size=-1>メッセージ</FONT></TD>
<TD nowrap><INPUT id=ms name=TXT_PASS size="62" maxlength="200"></TD>
</TR>
</TBODY>
</TABLE>
<BR>
<TABLE bgcolor=#b0b0b0 border=0 cellPadding=3 cellSpacing=2>
<TBODY>
<TR bgcolor=#f0f0f0>
<TD nowrap><INPUT id=submit1 name=submit1 type=submit value=" 投稿 "></TD>
<TD nowrap><INPUT id=reset1 name=reset1 type=reset value="リセット"></TD>
</TR>
</TBODY>
</TABLE>
</FORM>
</CENTER>
</BODY>
</HTML>

このフォームです。
0140nobodyさん02/05/04 02:54ID:???
method="POST"
014111002/05/04 09:50ID:oeq3Bzwc
マルチしている馬鹿です。
ログファイルの$hoge[3]にそれぞれ数字がありまして
その数の合計を求めるにはどうすれば宜しいのでしょうか?
ログファイルは\tで区切ってあります。
答えろや!!
0142(゚Д゚)ハァ?02/05/04 10:27ID:???
(゚Д゚)ハァ?
0143nobodyさん02/05/04 10:32ID:???
最近の若者の国語力はこんな感じなのか。
それとも141は外国人なのか。
どちらにしても頭が悪い人は施設に収容した方がいいと思う。
地球の人口も増え続けていることだし、詩んでください141。
0144nobodyさん02/05/04 10:47ID:???
マルチ(;゚∀゚)=3ハァハァ
0145nobodyさん02/05/04 13:28ID:???
>>141
ここで答えてるじゃん・・・
http://pc.2ch.net/test/read.cgi/php/1019561283/319
014614502/05/04 13:28ID:???
>>145
間違った。こっち。
http://pc.2ch.net/test/read.cgi/php/1019917048/319
0147nobodyさん02/05/04 14:21ID:???
>>145-146
たぶんネタだよ。
014814502/05/04 14:26ID:???
>>147
あぅ・・・まさかオレ、ネタニマジレス・・・
014913902/05/04 15:49ID:HBkDorCd
原因がわかりました!!
use CGI;
my $cgi = new CGI;
これのせいでSTDINからPOSTの場合取得できなかったのです。
自前フォームデータ取得と共存できないということなのでしょうか?
0150nobodyさん02/05/04 15:50ID:???
クッキーの読み込みで、
a1
a:aaaa
*
a2
a:aaa
*
a3
a:aa
*
こんな感じで保存されているクッキーがあって、
$COOKIE{a}と書くと
aaaaのみ表示されて、
aaaa
aaa
aa
と表示されません。
どうすればいいのでしょうか?
0151nobodyさん02/05/04 16:41ID:???
↑最近ネタが多いな。
015215002/05/04 17:00ID:???
>>151
ネタじゃないんですが、、、。
0153nobodyさん02/05/04 17:08ID:???
>150
sub a1{$a = "a";}
sub a2{$a = "aa";}
sub a3{$a = "aaa";}
sub a4{$a = "aaaa";}
この書き方から
a
aa
aaa
aaaa
と書く方法があったら教えてくれ。
tu-ka,コーディングに関することは↓こっちで。
ttp://pc.2ch.net/test/read.cgi/php/1019917048/
0154nobodyさん02/05/04 18:10ID:BiCGNSgG
ダウンロードプログラムで、
Content-Disposition: attachment; filename="XXXXX"
Content-Type: Application/octet-stream
をヘッダに設定しています。
NN4,NN6ではうまくいきますが、
IE5,IE6のSSLモードではうまくいきません。
(ダウンロードダイアログでサーバに接続できないエラーになります)
どうすればよいですか?
0155nobodyさん02/05/04 18:16ID:???
>>154
NN4,NN6のSSLモードではうまくいくの?
0156nobodyさん02/05/04 18:34ID:BiCGNSgG
>>155
うまくいきます。
015715502/05/04 18:37ID:???
>>156
むぅ、だとすると、すまんがオレにはわからん。
0158 02/05/04 18:45ID:???
ハァ。誘導してる割にはレベルが低いんだなぁ、、、。
015915402/05/04 18:50ID:BiCGNSgG
IE5,IE6のSSLモードでもうまくいく
方はいらっしゃいますか?
0160あぼーんNGNG
あぼーん
016115502/05/04 18:54ID:???
>>158
ハァ。なら煽ってないで教えてくれよ、、、。
0162nobodyさん02/05/04 20:25ID:???
(´-`).。oO(>>159 インターネットオプションの詳細をいぢってしまったとか?)
0163nobodyさん02/05/05 08:35ID:UV8B0Y8+
遥か昔の旧スレを上げた馬鹿者です。どうか知恵をお貸しください。

THE ROOMさんのアイコンチャットを使っておるのです。
このチャットURLをオートリンクをしてくれるのはいいのですが、フレーム内に取り込んでしまいます。
なんとかtarget=_blank属性をつけたいのですが、無知なりにいろいろ試してみても直らず。
情けない話ですがソースのどの部分を提示してよいやらわかりませんので、
とりあえず配布ページを晒します。
http://dream.lib.net/room/cgi/e_ichat.html

配布元で質問しようにもこれは改造の話になるかと思いまして、
どうかご教示くださいませ。
0164nobodyさん02/05/05 08:51ID:???
>>163
ichat.cgiの792行目を
$msg =~ s/(http:\/\/[a-zA-Z0-9\.\/\-+#_?~&%=^\@:;]+)/<a href="$1" target="_blank">$1<\/a>/g;
にすればいいと思う。
けど、スレ違いなんで気をつけてな。

スクリプト改造工房 Part4
http://pc.2ch.net/test/read.cgi/php/1012839651/
0165nobodyさん02/05/05 10:32ID:???
質問あんだけどさ。
ディレクトリの構成ってどういう意味なの?
なんかよくわかんないんだけど。
例を書いて詳しくキボンヌ
0166 02/05/05 11:29ID:???
>>165
質問あんだけどさ。
わかんないんだけどってどういう意味なの?
なんかよくわかんないんだけど。
例を書いて詳しくキボンヌ
0167dosv02/05/05 11:49ID:12OG6xB2
今Ezweb対応の掲示板を作製しようとしているのですが、CGI側の処理がよくわからないのです。
もし宜しければ教えてください。

<HDML version=3.0 markable=true>
<ENTRY name=name key=name>
<ACTION type=accept task=go dest=#text>
名前入力
</ENTRY>

<ENTRY name=text key=text>
<ACTION type=accept task=go dest="xxxx.cgi" method=post postdata="name=$name&text=$text">
内容入力
</ENTRY>
</HDML>


このように名前と内容を入力して xxx.cgi に送った時、どのように受け取ればいいのでしょうか?。
0168 02/05/05 12:00ID:???
>>167
どのようにって・・・。
$nameと$textを受け取ればいいだけでしょ。
0169dosv02/05/05 12:09ID:12OG6xB2
え〜っと。
HTMLの普通のフォームからなら cgi-lib.pl を使って

if ($ENV{'REQUEST_METHOD'} eq "POST"){
&ReadParse();

$name = $in{'name'};
$text = $in{'text'}

で変数に代入できるのですが、Ezweb(HDML)でのやり方がよくわからないのです(T_T)
0170nobodyさん02/05/05 12:29ID:???
>>166

質問あんだけどさ。
お前の存在くさってんじゃないの?
なんかよくわからないんだけど。
例を書いて詳しくキボンヌ
0171nobodyさん02/05/05 13:14ID:???
>>170
よくわからないんなら書くなよ(w
0172nobodyさん02/05/05 13:37ID:???
>>169
とりあえず、
print "Content-type: text/plain\n\n";
print $_ while(<>);
の結果キボン。
0173nobodyさん 02/05/05 14:27ID:TrmCPbRt
ウィン、アパッチ、アクティブパールであぷろだのテストしてるんだけど、
ファイルあぷできない場合はどうしたらいいのかなぁ・・・
0174nobodyさん02/05/05 14:36ID:???
>>173
あぷろだのせっていまちがってるとおもう。
あぷろどさきのでぃれくとりめいとかおかしんじゃない?
0175dosv02/05/05 14:49ID:12OG6xB2
>>172
それはどのような処理なのでしょうか?。
CGI初心者なので教えて頂けないでしょうか?。申し訳ございません。
0176nobodyさん02/05/05 14:53ID:???
>>175
初心者というかお前何を勉強してここに来た?
0177さゆ ◆ugYa5.J6 02/05/05 15:29ID:???
>>175
>>172は、OSTされてくるものを全部表示するスクリプトだね。
0178nobodyさん02/05/05 16:50ID:???
(´-`).。oO(【なにを】【こうしたら】【こうなった】ぐらい書けや、腐れ黄金房共が…)
0179nobodyさん02/05/05 16:52ID:???
(´-`).。oO(おまえらは【こうなった】事しか書いてねぇだろうが、それで解ると思ってるのがアフォ共…)
0180dosv02/05/05 17:42ID:???
>>176
すみません。修行しなおします(~_~;)

>>177
ありがとうございます。
018116302/05/05 18:32ID:???
>>164
お答えいただきありがとうございました。
上手くいきました。

スレ違い申し訳ありませんでした。
0182nobodyさん02/05/05 20:39ID:???
(´-`).。oO これで答えているNobodyさん、
(・∀・)イイ!人だっ (惚
0183nobodyさん02/05/06 11:12ID:???
ログ詰まり?
かちゅ〜しゃ動作test
0184nobodyさん02/05/07 21:54ID:Y09RJpX9
アクセスカウンタのように、<img src="xxx.cgi?act=%24">と
画像表示タグでCGIプログラムを呼び出すやつって、
どんなふうにつくれば(*゚∀゚*) イイんですか?
0185nobodyさん02/05/07 23:15ID:???
>>164
ヘッダーが画像になるように出力して。
画像データを、そのまま出力すればよいのです。

print 'Content-type: image/jpeg',"\n\n";
open IN,"<適当なjpeg のファイル";
binmode IN; # DOS バイナリストリームに配慮
binmode STDOUT; # DOS バイナリストリームに配慮
@data =<IN>;
print @data;
0186nobodyさん02/05/08 12:53ID:7MwNUEiI
すいません、質問です
ssiを使わずにcgiでhtml内にランダムで単語を埋め込みたいんです。
で、例えばアメリカの歴代大統領の名前をランダムで表示させるとすると、
まず、大統領の名前だけを改行で縦に羅列しただけのテキストファイルpresident.txtを作って、こんな感じにしました。

-------president.cgiのないよう---------
$president='president.txt';
open(DATAIN,"$president");
@president= <DATAIN>;
close(DATAIN);
$random = int(rand(@president));
$president=$president[$random];
chomp($president);
print "Content-type: text/html\n\n";
print "<!--\n";
print "document.write(\"$president\")\;\n";
print "//-->\n";
--------------------------------------
html側にはこれをはさみます。
<script language=JavaScript src=president.cgi>
</script>

ようはcgiを外部javascript的に使う方法だと思うのですが、
うまくいくにはいったのですが、いくらリロードしてもランダムで名前が変わってくれません。
最初に読み込んだ時と同じ名前のまま。
cgi側のURLをアドレスバーに打ち込むとちゃんとランダムで変わってるので、
ブラウザが一度president.cgiを呼びに行くと、2度目からは横着しとるようです。

<script language=JavaScript>
<!--
i=Math.random();
document.write(i);
// -->
</script>
<script language=JavaScript src=president.cgi?a=i>
</script>
html側だけ苦し紛れに上みたいな感じにしてみましたが、同じでした。
何かいい方法ないでしょうか?おねがいします。
018718602/05/08 14:05ID:7MwNUEiI
すいません、186です
上の最後の方の
document.write(i);
は関係ないです。無視してください。
あと、長文でごめんなさい
0188nobodyさん02/05/08 14:53ID:???
なんでtext/htmlなん?あきらかに違うべ。

Pragma: no-cache
Cache-Control: no-cache
とかあったほうがいいのか?
でもcgiって普通キャッシュしないのか?
hogehoge.cgi?xxxxxxxxxxx <- ランダムな文字列をjavascriptで書き出す
とかもありかな?
0189186 でけた!02/05/08 15:49ID:7MwNUEiI
>188
> hogehoge.cgi?xxxxxxxxxxx <- ランダムな文字列をjavascriptで書き出す

ではできませんでしたが
print "CacheControl: no-cache\n";
print "Pragma: no-cache\n";
print "Expires: -1\n\n";
を加えることで出来ました!!
ありがとうございます!
0190nobodyさん02/05/10 01:28ID:kiNPE2Bo
今更EzGetで放浪中。
結局のトコ、内部処理自体は専用ヘッダ+バイナリを
吐き出すだけという認識でいいれすか?
スレ違いだったらスマソ
0191nobodyさん02/05/11 02:39ID:r65u0NIV
Perlについて質問です。
1つのプログラムファイルにたくさんのサブルーチンを作ると、処理速度は遅くなりますか?
サブルーチンと言っても、2〜300行のものが2つです。
カウンターで、ログ表示部分とセッティング部分を別のファイルに分散するか
1つのファイルにまとめてしまうかを迷っています。
0192nobodyさん 02/05/11 03:17ID:um9GfuZV
たいした量ではない
0193nobodyさん02/05/11 03:28ID:???
>>191
プログラムを組む人間だったら、1つのファイルにまとめたほうが
きれいだし、配布する際にも説明がしやすい。ので1つがいいと感じるはず。
処理スピードは300行程度じゃ人間には感じられないくらいの差だよ。
ただでさえ汚いソースになるPerlなんだから。。ねぇ?
0194nobodyさん02/05/11 03:45ID:2K/qf1ca
cで書けばもっと早くなる。
0195nobodyさん02/05/11 03:58ID:???
200〜300行サブルーチン!?
話題とずれるがもうちょっと処理ごとに短くした方がいいと思うが
0196nobodyさん02/05/11 04:41ID:???
検索エンジンのCGIなのですが、
データー部分とCGI本体を別鯖にしてる場合、データー側の鯖への負荷ってどの位なのでしょうか?
0197nobodyさん02/05/11 11:21ID:r65u0NIV
>>192-193
そうですか。
まとめた方がよさそうですね。
配布cgiなのですが、設置する手間は少ない方がよいですね。

>>195
カウンターのセッティング処理・ログ表示処理とかなので、分ける必然性も
ないと思って、まとめてサブルーチンにしました。
0198nobodyさん02/05/11 15:55ID:ao+wsWev
┃
┣cgi-bin━bbs.cgi
┃
┗www━index.htm

こういうディレクトリのとき、bbs.cgiからindex.htmを
ローカルで指すパスの書き方ってありますか?
http://から書いても、フルパスでも駄目でした。

http://www.midnightroam.org/
の
mini BBS++ ver2.79
使ってます。
0199 02/05/11 15:58ID:???
>>198
../www/index.html
020019802/05/11 16:05ID:ao+wsWev
>>199
くだらねえ質問に即レスどうもありがとうございます。
020119802/05/11 16:25ID:ao+wsWev
上の問題は解決しましたが、まだ問題が出てきました。

index.htmの中にbbs.cgiを取り込んだような形になるcgiです。
(htmlファイルに<--bbs-->と書けば、そこに掲示板が表示される)

http://〜/cgi-bin/bbs.cgi
でテスト読み込みをしてみるとエラー等なくindex.htmを読んでくれて、
bbsのcgiが表示されますが、
http://〜/index.htm
にアクセスすると何も表示されません。

くだらない質問で、スレ違いかもしれませんがどうかよろしくお願いします。
0202nobodyさん02/05/11 16:36ID:???
>(htmlファイルに<--bbs-->と書けば、そこに掲示板が表示される)

こんなんできるの?
掲示板(bbs.cgi)に投稿したら HTMLファイルの <--bbs--> 部分に記事が
挿入される形のスクリプトかと思うが、、、
こういう場合はどこのスクリプトなのかまずはっきりさせていただきたい。
020319802/05/11 16:38ID:ao+wsWev
>>202
どこの・・・というと?
スクリプトの行でしょうか?

つかってるcgiの事でしたら
http://www.midnightroam.org/
の
mini BBS++ ver2.79
です。
0204nobodyさん02/05/11 16:41ID:???
>>203
ごめん、上のほうちゃんと読んでなかった
020519802/05/11 16:43ID:ao+wsWev
<!--bbs--->
です、すみません
0206 02/05/11 16:54ID:???
>>201
あたりまえです。何も表示されるわけはありません。
根本的に動作を勘違いしています。
index.htmlがbbs.cgiを読み込むのではなく、bbs.cgiにアクセスすると
index.htmlをテンプレートとしてその中にbbs.cgiの吐き出す部分を
埋め込んで表示される仕組みです。
0207nobodyさん02/05/11 16:56ID:???
>>198
そのスクリプトDLしてきました。あなたは大きな誤解をしていると思います。

このスクリプトは index.htm をブラウザに表示させたら <!---BBS---> の部分に
掲示板が表示されるのではなく、minibbs2_279.cgiをブラウザに表示させたら
index.htmの<!---BBS--->部分に掲示板が表示されるものだと思います。

ttp://www.midnightroam.org/ にアクセスしたら掲示板がでているではないかと
言われるかもしれませんが、.htaccessでいじれば ttp://www.midnightroam.org/
と入力したときに index.htmlではなくindex.cgi にアクセスさせることができます。
0208 02/05/11 16:56ID:???
補足
つまり、アクセスはあくまでbbs.cgiであり、前後に他の何かを
表示させたいのならテンプレートhtmlを好きに編集すればいいという
だけです。
020919802/05/11 16:57ID:???
根本的に間違ってたんですね・・・(゚д゚)マズー

ほんとくだらねえ質問にお付き合いくださってどうもありがとうございました。
0210nobodyさん02/05/11 16:57ID:???
>>203
そのサイトは DefaultIndex を .htaccess か何かで弄っているんでしょ。
index.html無いし。
0211nobodyさん02/05/11 16:58ID:???
カブタ(;´Д`)
021219802/05/11 17:01ID:???
>>199 >>202 >>204 >>206-208 >>210-211

お世話になりました。
助かりました。どうもありがとうございました。
0213あぼーんNGNG
あぼーん
0214nobodyさん02/05/11 17:27ID:WnQgyRup
CGI設置しようとしているんですが、
パーミッションの設定の仕方がわかりません。

ファイルは大学から某有料サーバーへ転送しているのですが、
大学はunixなのでコマンドラインのftpしか使えません。
有料サーバーはTelnet禁止です。

状況説明不足でしたら補足します。
0215nobodyさん02/05/11 18:02ID:???
ログファイルとか、あとでデータの書き換えを行う可能性のあるファイルは666、
cgi本体は755、jcode.plは644
0216nobodyさん02/05/11 18:06ID:WnQgyRup
>>215
すみません、何を質問してるのかもっと詳しく書くべきでした(汗
215さんの言っている事はわかります、
その変更をどうやって行ったらいいのかわからないんです…

telnet禁止なのでchmodは使えないし、
あらかじめ設定してから転送しても元に戻っているし…
0217nobodyさん02/05/11 18:15ID:???
>>216
貴様の使ってるFTPクライアントソフトのマニュアルを読んでください
0218 02/05/11 18:22ID:???
>>216
ftpでログインしたのならchmod使えばいいだけでしょ。
コマンドはmanで調べればいい。
以降、UNIX板ででも聞いてください。
0219nobodyさん02/05/11 18:26ID:WnQgyRup
やっぱりFTPしかないですか…

FTPのマニュアルは読みましたが
パーミッションを設定するという類のコマンドは
見つかりませんでした。
0220nobodyさん02/05/11 18:28ID:WnQgyRup
>>218
Invalid commandでした…
UNIX板逝ってきます…。
0221nobodyさん02/05/11 19:33ID:???
(´-`).。oO(>>218 ワロタ…)

>>214

どんな ftp クライアント使っているか解らないけど…
一応、大抵の ftp クライアントで使える方法教える

>site help
これで、chmod 使えるかどうかは解る

>site chmod <permit> <filename>
んで、これで <filename> で指定したファイルが <permit> で
指定されたパーミッションになる
0222nobodyさん02/05/11 19:45ID:???
Perl歴3ヶ月。モジュールを1度も使ったことがありません。
データベースをCGIで作りたいと考えていますが、
なにを勉強すればいいのかさっぱりです。
どこか初心者向け勉強サイトがあれば教えていただけませんか。
本はダメです。お金がないから。
0223nobodyさん02/05/11 20:24ID:1yiBbWME
Tripod.co.jpでCGIのパーミッションが設定できないんですが、
どげんしたらよいでしょうか?
0224nobodyさん02/05/11 20:28ID:???
>>222-223
このサイト結構使えるYO!
http://google.com
0225nobodyさん02/05/11 23:40ID:JXrRw2rR
>224
ほかのサバはできるけど、Triだけなぜか設定しても、設定が反映されないという意味
0226nobodyさん02/05/12 00:05ID:???
>>225
Tripod CGI パーミッション 設定 できない
http://www.google.com/search?num=100&hl=ja&as_qdr=all&q=Tripod+CGI+%83p%81%5B%83%7E%83b%83V%83%87%83%93+%90%DD%92%E8+%82%C5%82%AB%82%C8%82%A2&btnG=Google+%8C%9F%8D%F5&lr=lang_ja
0227nobodyさん02/05/12 14:30ID:???
KENT WEBにあるDay Counterはなぜ累計カウンター用の画像と今日・昨日カウンタ用の
画像を用意しなければならないのでしょうか?
0228nobodyさん02/05/12 14:36ID:???
>>227
画像を変えることで、累計と今日/昨日違いをわかりやすくしてんじゃないの?
いやなr設定のとこ書き換えて累計用と今日/昨日用の画像同じの使うようにすればいいじゃん。
0229nobodyさん02/05/12 15:30ID:u+TnkKJY
>>228
CGIの神。
023022702/05/12 16:15ID:???

あーなるほど、つまり仕様の問題上そうするしか仕方ないとかそんなんじゃなく、
単に累計用カウンタと今日/昨日用の画像に違う画像を使いたいって時のためか。。

あと今KENTさんのコード見ながらカウンタを作ってみたんですが
ちょっとロック処理の部分で分からないところがあります。。

ロック処理サブルーチンの一部分↓↓↓↓

if (-e $lockfld)

{
# 現在時刻を取得し$nowに代入
my($now) = time;
# $lockfldの最終変更時間
my($val) = (stat($lockfld))[9];

# 30秒以上経過していれば削除
if ($now - $val > 30) { &lockend; }
}

exit

↑↑↑↑ここまで

下に続く
023122702/05/12 16:16ID:???
以下うえの続き

--------------------

ログ読み込みからログ更新までの間、同じ階層にフォルダを作って
フォルダがある場合は他のユーザーを弾くようにして、
上の処理ではもしロック処理が終了したにも関わらずフォルダが削除されなかった
場合に、そのフォルダの最終変更日を取得し、現在時刻と比較し30秒以上経過して
いたらフォルダを削除するようにしてあるんです。

で、なにがダメかというと、上の処理のコードの書き方を簡略化しようと思い、
以下のようにしましたが、なぜか下のコードだと動きません。なぜか分かるでしょうか?

ここから↓

if (-e $lockfld) || exit;

# 現在時刻を取得し$nowに代入
my($now) = time;
# $lockfldの最終変更時間
my($val) = (stat($lockfld))[9];

# 30秒以上経過していれば削除
if ($now - $val > 30) { &lockend; }
0232nobodyさん02/05/12 16:23ID:???
>>231
・・・・(;´Д`)
コマンドラインから実行してみたのかと小(略
■ このスレッドは過去ログ倉庫に格納されています