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

Perl コーディング初心者質問コーナー Part34

■ このスレッドは過去ログ倉庫に格納されています
0001前スレの連投で気分崩したので後よろ04/04/05 16:01ID:???
いらっしゃーい、Perlのコーディングで困ってる人のスレです。

【投稿する際の注意】
質問するときは内容をよく吟味してから投稿してください。
「コマンドの意味がわかんない」とかはマニュアル見ましょう。
回答者さんは何でも屋じゃありません。

1: 自分はこう言う事がしたい。
2: それでこんな風にやってみたが・・・
3: こんなエラーが出て上手く行かなかった。

最低でも1と3が無いと誰も答えられないよ。
ソース貼る時は、全角スペースでインデント忘れずに。
良い回答は良い質問から。一緒に勉強しましょう。

過去ログやお勧めサイトは >>2-10
035235104/04/21 22:29ID:???
すみません、$changeを使ってです。
035333604/04/21 22:30ID:???
んー、Perlだと結構いろんな書き方があるから油断できないんだけど、
( $x >= 1) and ($x <= 100 )
に関して言えば、可読性からもこれでいいのかな。

レスくれたひとサンクス。
0354nobodyさん04/04/21 22:30ID:???
釣堀はここではありませんよ
0355レファランス使え04/04/21 23:08ID:???
>>351
$change = "data";
$data = 'example';
print $$change,"\n";

$change = \$data;
$data = 'example';
print $$change,"\n";
0356nobodyさん04/04/21 23:21ID:???
素直に eval 使えばいいんじゃないだろうか。

$change = '$data';
$data = "example";
print eval $change;
0357nobodyさん04/04/21 23:23ID:???
馬鹿に危険な事教えるなよ
035835104/04/22 00:03ID:???
>>355-356
早速組み込んでみた所、期待通りの動作をしました。Perlにもポインタの様な物が実装されているんですね。
これを機にevalの使い方も覚えました。ありがとうございました。
0359nobodyさん04/04/22 00:20ID:???
質問です。

いくつかのファイルをループ処理でまとめて読み取り、
$dat[ファイルNo.][n行目]
のように一つの2次元配列に格納しようとしています。

@dat[$i] = <FH>;
openした直後に上記のようなコードを入れましたが、
どうも配列は1次元のままで、各ファイルの一行目しか配列に格納してくれませんでした。

どなたか2次元で格納させるヒントをご教授ください。
0360nobodyさん04/04/22 00:27ID:???
@{$dat[$i]} = <FH>;
0361nobodyさん04/04/22 00:29ID:???
Perl に無名スカラーってありますか?

関数やサブルーチンからの戻り値をそのまま return する時に
return \(value()) とかやっているのですが、
例えば複数の値の場合に return [values()] で配列のリファレンスを返せるように、
無名スカラーがあれば良いのになあと。
036235904/04/22 00:30ID:???
>>360
動作確認しました!
即レスありがとうございました!
では再び勉強ROMに戻ります。
036336104/04/22 00:31ID:???
戻り値のリファレンス返すのでそのままではありませんね……。
0364nobodyさん04/04/22 02:12ID:???
return \@{[values %ハシュ変数名]};
かな?
0365nobodyさん04/04/22 09:00ID:???
>>361
無名スカラーって無名スカラーリファレンスってことか?
ハッシュや配列と違って、無名スカラーリファレンスをを作る構文的なサポートは無い。
苦肉の策だが my $anon_sref = do{ my $o; \$o } などとしているな。
しかしこの場合は\(value())ではいけないのか?何か不満か?
0366nobodyさん04/04/22 12:18ID:???
いえ、機能的な不満は全く無いですが、個人的な好みの問題のようなものです。
無いのであれば、今まで通りにする事にします。
0367nobodyさん04/04/23 20:15ID:???
$IMAGEに書かれている文字を、sprintfで文字を3つに(1.1.残り)に分けて、
はじめの文字がaだった場合とそれ以外で読み込むフォルダを分けたいと
思っています。
以下のように記述したのですが、エラーが出てしまいました・・。
どこ違っているのかわからないので、指導お願いします〜。。


$IMAGE = sprintf("%01d/%01d/%04d",$a,$b,$c);

if ($a eq a){print "<IMG src=\"image/$a$b$c.gif\">;
}else{print "<IMG src=\"img/$a$b$c.gif\">";}

また、1.1.残りと分けたいのですが、画像ファイルの名前が4〜6文字とランダムなのですが、上の書き方だとだめなんですよね・・?
どうすればいいんでしょうか?
0368nobodyさん04/04/23 20:17ID:???
>>325まだ見てるか?

最近アクセス解析CGI作ったから require で呼び出せるように書き換えて
提供してやろうか?

いるなら捨てアドさらせ。
さらしてから書き換えに2〜3日掛かるからその後送ってやる
0369nobodyさん04/04/23 21:00ID:???
>>367
print $IMAGE =~ /^A/ ? "<IMG src=\"image/$IMAGE.gif\">" : "<IMG src=\"img/$IMAGE.gif\">";
0370nobodyさん04/04/23 21:04ID:???
>>367
>$IMAGEに書かれている文字を、sprintfで文字を3つに(1.1.残り)に分けて
使う関数が目的に合っているかよく調べろ。

>$IMAGE = sprintf("%01d/%01d/%04d",$a,$b,$c);
これじゃあ$a,$b,$cを指定のフォーマットにして/をはさんだ文字列として
$IMAGEに代入する式だ。

こんなのでもいいだろ。
$a = substr($IMAGE,0,1);
$b = substr($IMAGE,1,1);
$c = substr($IMAGE,2);
037136904/04/23 21:12ID:???
あ、質問よく読んでなかった。
037236704/04/23 21:23ID:???
>>370
書きながら、これだけ代入が逆なのか・・と思いながら書いてました。

substrの意味を調べて納得です。
助かりました。。
0373nobodyさん04/04/24 12:42ID:ftCx7p61
Pod を書くのに日本語つかってもいいですか?
0374nobodyさん04/04/24 13:44ID:???
なんかその質問前にもあったぞ。
037537304/04/24 14:07ID:???
ポッキーあげるから、教えてくださいよ〜
0376nobodyさん04/04/24 15:41ID:???
>>373
自分で使う分には構わないって事でファイナルアンサーしてたような。
CPANに登録するのなら英語(Ascii?)で書かかないと。

http://www.perldoc.com/perl5.8.0/README.jp.html
http://search.cpan.org/~nwclark/perl-5.8.4/README.jp
EUC-JPで化けるみたいだしね。
# UTF-8だといけるのかな?
037737304/04/24 21:14ID:???
ありがとう!!!
お陰で彼女が出来ました
0378nobodyさん04/04/25 11:23ID:KCQtln8X
モジュールって、相互に宣言しても、大丈夫ですか??
例えば、MOD_A.pm と MOD_B.pm を自作して

MOD_A.pm 内のソースで use MOD_B; を宣言
MOD_B.pm 内のソースで use MOD_A; を宣言

cgiプログラムを作ってるんですが、そのcgiプログラムの中で
use MOD_A;
use MOD_B;

とかやりたいんですがどう?

もっとさらに言うと、MOD_A.pm の中で自分自身を
use MOD_A;

とかやっても大丈夫ですか?
0379nobodyさん04/04/25 11:41ID:???
そんなことを聞くようなやつがモジュールなんか作るな
0380nobodyさん04/04/25 11:42ID:???
やってみればわかることを聞くヤシっているよね
0381nobodyさん04/04/25 14:33ID:???
>378
相互 use、自己 use とも無限ループにはならない。
ttp://www.perldoc.com/perl5.8.0/pod/func/use.html
ttp://www.perldoc.com/perl5.8.0/pod/func/require.html
ただし、自己 use することに何の意味もない。
さらに、相互 use することにも意味がない。
>378 の例だと CGI の中の use MOD_B; と、MOD_B.pm の中の use MOD_A; は
あってもなくても変わらない。
とりあえず、相互に use するような設計がおかしいので考え直せ。
0382nobodyさん04/04/25 21:00ID:???
cgiにjava scriptを組み込もうとしているのですが、500エラーがでます。

HTMLでの " は \" になることは知っているので、そうしたのですが、
 ! や ? の記号の前にも \ が必要なのですか?それとも他の記号なのでしょうか?
0383nobodyさん04/04/25 21:06ID:???
まずはソースを出せ。
話はそれからだ。
0384nobodyさん04/04/25 22:15ID:???
>>382
cgiで文字列の出力をしようとしているのですが、500エラーがでます。

" は \" になることは知っているので、そうしたのですが、
 ! や ? の記号の前にも \ が必要なのですか?それとも他の記号なのでしょうか?
0385nobodyさん04/04/25 22:15ID:???
>>382
500エラーなんてものでデバッグしてることからして論外。
まずはちゃんとした環境を用意してから出直してきてください。
0386nobodyさん04/04/26 16:42ID:NLGfQi9F
/private
ディレクトリに、Basic認証もしくはDigest認証をかけて
/private/secure.cgi
へアクセスをした場合に、ユーザ名・パスワードを引数として
渡すには、どうやったら良いのでしょうか?

どなたかご教授、お願い致します。
0387nobodyさん04/04/26 17:04ID:???
ユーザ名は環境変数 REMOTE_USER で引き渡されます。

パスワードを CGI に引き渡すのは
少なくとも現行の CGI というインタフェースを使う限りでは
原理的に不可能です。
これは Perl コーディング上の制限ではなく
CGI というインタフェース仕様上の制限です。

CGI 以外の方法なら、
例えば mod_perl を使って PerlAuthenHandler を組むやり方であれば
Apache Request オブジェクトの get_basic_auth_pw() メソッドを使って
パスワードを取得することができます。
038838604/04/26 17:18ID:NLGfQi9F
>>387
レスありがとうございます。

REMOTE_USERでのユーザ名引き渡し、確認できました。
パスワードはやはり無理ですか...
ユーザ名だけを利用して(重要な部分へは再認証という形で)
対応していきます。
0389nobodyさん04/04/26 17:45ID:8MkOGNrL
DBD::Pgを使ってDB接続を試みているのですが、
エラー処理ができなくて困っております。

例えば、
my $dbh = DBI->connect("dbi:Pg:dbname=$dbname;port=$port", $user, $password, {RaiseError => 1, AutoCommit => 0}) || print "error";
これで$dbnameが存在していないものを指定すると、printにいってくれず、
Internal Server Errorが出てしまいます。↓error_log
DBI connect('dbname=--;port=--','',...) failed: FATAL: database "--" does not exist at --.cgi line --

ご教授いただけませんでしょうか。
宜しくお願いします。
0390nobodyさん04/04/26 18:09ID:???
>>389
dieしてるのでevalで捕まえられると思うよ。
0391nobodyさん04/04/26 18:11ID:???
>>388
横槍入れるようだが、同じパスワードで何回認証しても意味ないと思うんだが。
ユーザー名は追跡の為に追うこともあるだろうけど。
0392nobodyさん04/04/26 18:24ID:???
>>386
ユーザ名とパスはリクエストヘッダAuthorizationで渡されるから拾えばいい。
例えば.htaccessで
RewriteEngine on
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule test.cgi test.cgi$1 [e=HTTP_CGI_AUTHORIZATION:%1]

($scheme, $data) = split (' ', $ENV{'HTTP_CGI_AUTHORIZATION'});
if ($scheme eq 'Basic') {
 $data = &decode_base64 ($data);
 ($ENV{'REMOTE_USER'}, $ENV{'REMOTE_PASSWORD'}) = split(':', $data);
}
sub decode_base64 {
 my ($str) = "@_";
 my ($res, $len) = "";
 local($^W) = 0;
 $str =~ tr|A-Za-z0-9+=/||cd;
 if length($str) % 4;
 $str =~ s/=+$//;
 $str =~ tr|A-Za-z0-9+/| -_|;
 while ($str =~ /(.{1,60})/gs) {
  $len = chr(32 + length($1)*3/4);
  $res .= unpack("u", $len . $1 );
 }
 return ($res);
}
print "Content-type: text/html", "\n\n";
print "$ENV{'HTTP_CGI_AUTHORIZATION'}<br>\n";
print "$ENV{'REMOTE_USER'}<br>\n";
print "$ENV{'REMOTE_PASSWORD'}<br>\n";
0393nobodyさん04/04/26 18:28ID:???
>>389
RaiseError => 1 を設定するのを止める。つーかコピペプログラマは氏ね
0394nobodyさん04/04/26 18:39ID:???
>>392
ちょっと間違った
RewriteEngine on
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule test.cgi test.cgi [e=HTTP_CGI_AUTHORIZATION:%1]

sub decode_base64 {
 my ($str) = "@_";
 my ($res, $len) = "";
 local($^W) = 0;

 $str =~ tr|A-Za-z0-9+=/||cd;
 $str =~ s/=+$//;
 $str =~ tr|A-Za-z0-9+/| -_|;
 while ($str =~ /(.{1,60})/gs) {
  $len = chr(32 + length($1)*3/4);
  $res .= unpack("u", $len . $1 );
 }
 return ($res);
}
039538604/04/26 20:29ID:???
>>394
そういう方法もあるんですね。
とても参考になりました。
ありがとうございます。
0396nobodyさん04/04/26 21:22ID:BWwI4BSi
このスレでPerlで作ったCGIの質問してもいいのかな…

cgiでcss文書を吐き出したいんですが、Content-type:text/cssと最初につけておけばよいのでしょうか?
infoseek iswebでこれをやると広告がついてきてcssとして使えなくなるんですが、普通にうpしたcssファイルはhttpでgetできます。
この差はCGI作り手側のミス?それとも拡張子cgi=広告付加とかCGI作り手側じゃどうしようもないものですか?
0397nobodyさん04/04/26 21:28ID:???
鯖の仕様なんてそれぞれ。鯖缶に問い合わせろ。
0398nobodyさん04/04/26 22:16ID:???
>>396
スレ違い。
Perl以外で作っても成立する質問でしょ。
0399nobodyさん04/04/26 23:30ID:???
>396-397
そうでしたか…失礼。
0400nobodyさん04/04/27 17:46ID:m4JuDEBr
perl cgiで開きポートをチェックする方法ってありますか?
0401nobodyさん04/04/27 17:51ID:???
基本的に総当りで調べるしかないな
0402nobodyさん04/04/27 17:56ID:m4JuDEBr
掲示板で80と8080くらいわかればいいんですけど…
できるだけ早く処理できる方法があったらお願いします。
0403nobodyさん04/04/27 18:04ID:???
reject が帰ってくれば早いが、timeout を待つことになると時間がかかるな。
できるだけ待ち時間を短くするための工夫としては、
ソケットを non-blocking で開いて並列で処理する、ぐらいか。
0404nobodyさん04/04/27 20:01ID:D2O5MFhm
サブディレクトリにあるhtml文書を読み込んで表示するプログラムは、下ではダメなのでしょうか。

print "content-type: text/html\n\n";
open(TEST, "sub/test.htm");
while (<TEST>) {
print $_ ;
}
close(TEST);
exit;

ローカルではうまくいくのですが、サーバーに上げて実行してみると上手くいきません。
0405nobodyさん04/04/27 20:12ID:???
>>404
どう上手くいかないのか書け
0406nobodyさん04/04/27 20:14ID:???
エラーをトラップして調べる癖をつけないといつまでも聞くことになるぞ。
それに「うまくいかない」で読んでるやつがどうなったかわかると思うか?
0407nobodyさん04/04/27 22:30ID:???
掲示板のログが飛ぶ事が多いので
先頭にtime値を書き込んで、新しい方を読み,古い方に書く
2重ファイル方式を取入れたのですが、ログが消えた時はそのままでした。
flock考やperlメモのやり方でもたまに飛ぶので(ローカルでは書き込みプログラムを何個走らせても飛ばないんですが…)
バックアップ的にこのやり方を導入したいんですが、アドバイス願えないでしょうか?
0408nobodyさん04/04/27 22:36ID:???
ローカルテストは本当にしたか?
並列で処理しないとロックの検証にはならないよ。
でなきゃ鯖の問題だな。
0409nobodyさん04/04/27 22:55ID:???
どうせ、なんちゃってロックだろ。笑ってやるからロックのところ貼り付けてみろ。
0410nobodyさん04/04/27 23:00ID:???
time値の新しい方と古い方って、アクセス集中すると
同じ値になるだろ
0411nobodyさん04/04/27 23:01ID:???
秒単位だからね
041240404/04/28 00:18ID:2okML1Hb
>>404はPerlのパス名のタイポでした。お騒がせしました。ごめんなさい。
ですがまた問題が発生しました。
sub/test.htmから<n月>という文字列がある行をマッチさせたいのですが、下のようにすると
ローカルではマッチするんですが、サーバーに上げるとマッチせず。。。

print "content-type: text/html\n\n<html>";
open(TEST, "sub/test.htm");
while (<TEST>) {
if ($_ =~ /<.*?月>/) {print $_;}
}
close(TEST);
print "</html>";
exit;

4行目を
if ($_ =~ /<(.*?)月>/) {print $_;}
に書き換えるとローカルでもサーバーでもマッチします。なぜでしょうか。
0413nobodyさん04/04/28 00:46ID:???
>>412
そりゃ初耳だ。
こんな世知辛い世の中に笑いをありがとう。
和んだよ。
0414nobodyさん04/04/28 00:54ID:???
>>413
答えられないなら黙ってろ。
0415nobodyさん04/04/28 01:00ID:???
>>414
何だ釣りだったのか?
釣りを楽しむ余裕が

今はある!!!

誘導くらいしてあげるよ
http://pc5.2ch.net/test/read.cgi/php/1069245758/l50
0416nobodyさん04/04/28 01:05ID:???
>>414
君は404かい?
それなら俺も大笑いしてあげる
041740404/04/28 01:33ID:???
>>414は私ではありません。とにかく、誘導ありがとうございます。
むこうの過去ログを見てみて、それでもわからなかったら質問しようと思います。
0418nobodyさん04/04/28 01:59ID:???
スルーされるんじゃないかと心配しておりました。
回答ありがとうございました。

>>408
5台くらいで鯖マシンに(perlの)duke撃ちまくってテストしました。

>>409
現在携帯からなので無理ですが
perlメモのロックの部分とflock考えの奴をそれぞれやりました。

>>410
そうでした…
ただifの条件に合わないと、elseで指定されている方を読み込みますし大丈夫なのでは?



サイトの方は日に200くらいの書き込みで、そんなに多くは無いんですが、
2,3ヵ月に1回は飛んでしまいます。
逆にtopのカウンタは2重ファイルってだけで
ロックは使って
0419nobodyさん04/04/28 02:10ID:???
>>418
そのぐらいのアクセスでログが飛ぶなんて不思議。
コードそのものに問題があるような気がするが。
0420nobodyさん04/04/28 06:01ID:???
ロックはしっかりしてても、サーバ自体がファイルオープンしたまま
落ちたりしたらログ飛ぶわなあ。
0421nobodyさん04/04/28 07:36ID:???
>>419-420
そういう可能性もあるんですね。
読み書き両用でopenして…と思いましたが、どっちみちサイズを0にした時点で落ちたら意味無いですよね…

ツリー型なので700件残るようにしてますが、少し多いづしょうか?サイズは130KBくらいです。
0422nobodyさん04/04/28 09:58ID:???
>>421
だったらhoge.newに新しい内容作ってからrenameするとか
やり方はいろいろありそうなものだが。
0423nobodyさん04/04/28 13:45ID:???
>>422
なるほど…
こっちの方が楽ですね。その方法でやってみます。
0424nobodyさん04/04/28 16:05ID:S7OIBKMs
#!/usr/bin/perl

`halt`;
----------------------------------------------
以上のスクリプト実行しても鯖ダウン出来ませんでした。

どうやったら鯖ダウンできますか?
0425nobodyさん04/04/28 17:32ID:???
rootがいるじゃろ?
0426nobodyさん04/04/29 00:19ID:DqcSI5IG
質問ですm(__)m
index.htmlがあるとしてこの中の一部にxxx.cgiを表示したいのですが
どぅやったら表示出来るのでしょう?
表の中に表示させたいのですがインラインフレームしかありませんか?
0427nobodyさん04/04/29 00:27ID:???
Perlとどこに関係がありますか?
板違いです。
0428nobodyさん04/04/29 00:42ID:???
>>426
それはSSI。
0429nobodyさん04/04/29 13:25ID:???
CGIの拡張子を .html 設定にするだけだろ
0430nobodyさん04/04/29 14:16ID:???
>>429
釣り乙
0431nobodyさん04/04/29 14:52ID:???
>>429
馬鹿かお前。初心者はすっこんでろよ。
0432nobodyさん04/04/29 14:59ID:???
案外、本気で答えてたりしてなw
0433nobodyさん04/04/29 20:58ID:???
逆の方法もあるじゃん。
htmlをcgiに取り入れたら?
0434nobodyさん04/04/29 21:11ID:???
(´-`).。oO(無理すんなよなぁ・・・)
0435nobodyさん04/04/29 22:36ID:???
use Pgからuse DBIに切り替えプログラミングしているのですが、
use Pgのgetvalueみたいなものはuse DBIにないのでしょうか。

すみませんがご教授いただきたいです。
0436nobodyさん04/04/30 01:19ID:???
fetch
0437nobodyさん04/04/30 01:52ID:???
$tup_num と $field_num を指定して目的のとこだけ取ってくるようなメソッドは無いような気がするが
DBIスレの方がちゃんと知ってる人が多いと思う
http://pc5.2ch.net/test/read.cgi/php/1015943725/
0438nobodyさん04/04/30 03:25ID:SiN+gHBL
質問です。
バッククオートで外部プログラムを実行し、標準出力を受け取りたいと考えてます。

$tmp = `/usr/bin/wget -d http://example.com/test.cgi?d=domain\&p=password -O -`
このとき、アンパサンド「&」をエスケープできません。( http://example.com/test.cgi?d=domain でwgetが実行される)
どうすればよいでしょうか。

perl -v > This is perl, v5.6.1 built for i386-linux.
シェルで/usr/bin/wget -d http://example.com/test.cgi?d=domain\&p=password
はちゃんとgetの長いメッセージとして実行できてます。

GETはやめてPOSTにしろ、はなしでお願いします。。
0439nobodyさん04/04/30 10:18ID:???
>>438
かなり卑劣かも。
$tmp = q|http://example.com/test.cgi?d=domain&p=password -O -|;
$tmp = `/usr/bin/wget -d $tmp`;
0440nobodyさん04/04/30 10:20ID:???
>>438
`/usr/bin/wget -opt 'URI'`
0441nobodyさん04/04/30 10:46ID:???
なんて恐ろしい事をしているんだ。
俺には真似出来ねえ。
044244204/04/30 17:56ID:G+Ai2Hl9
perlでxmlを読み込もうとしています。
このようなxmlファイル(test.xml)があったとして、
-------------------------------------------------
<?xml version="1.0" encoding="Shift_JIS"?>
<data>
 <member num="01">
   <name>AAA</name>
 </member>
 <member num="02">
   <name>BBB</name>
 </member>
</data>
-------------------------------------------------
その中から、「AAA」と「BBB」を取り出すには
perlどのように書けばよいのでしょうか?
↓から続きがかけません・・
-------------------------------------------------
#!/usr/local/bin/perl
use XML::Parser;
:
:
:
print $name01; #AAA
print $name02; #BBB
-------------------------------------------------
0443nobodyさん04/04/30 18:34ID:???
>>442
google って知ってる? とっても便利だから使ってみなよ。
http://www.google.co.jp/search?lr=lang_ja&q=perl+XML%3A%3AParser
044444204/04/30 18:51ID:???
googleで探していろいろ見てみて
ttp://member.nifty.ne.jp/hippo2000/perltips/xml/parser.htm
とか良さそうだったのですが、解説を呼んでもいまいちよくわかりませんでした・・
044543804/04/30 20:25ID:???
どもです。 >439 で対処できました。
必ず直前で変数に固定値を代入するので、変数るのを納得しときます
0446nobodyさん04/04/30 22:38ID:???
>445
バッククォートでは変数展開とかがかかるので、\& が & になった状態でシェルに渡されてる。
なので、\\& にしても通るとは思うんだが、>440 のようにシングルクォートを使う方が素直だと思う。
0447nobodyさん04/04/30 22:54ID:5VEFp/rm
質問です。既出だったらスマソ。
ポートチェックってどうやったらできますか?
掲示板の荒らし対策に80と8080のチェックしたいんです。
ググってもいいページが見つからないんで・・・
できればスクリプトごとお願いします。
0448nobodyさん04/04/30 23:30ID:???
>>447
Socket使って、接続できたらあいてるってことでいいんじゃ?
0449nobodyさん04/04/30 23:37ID:???
>>448
普段perl使わないんで実装方法が・・・
0450nobodyさん04/04/30 23:45ID:???
>447 = >400 ?

とりあえず Socket.pm のマニュアルでも読めば。
0451nobodyさん04/05/01 00:12ID:???
Socket使うらしいということまではわかったんですが構文や応答の有無の判別がわかりません・・・
■ このスレッドは過去ログ倉庫に格納されています