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

Perlコーディング初心者質問スレ Part 56

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2007/09/16(日) 19:49:43ID:???
Perlのコーディングで困ってる人のスレです。

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

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

最低でも1と3が無いと誰も答えられないよ。
良い回答は良い質問から。一緒に勉強しましょう。

お勧めサイトは >2 以降

前スレ ttp://pc11.2ch.net/test/read.cgi/php/1180492441/
過去ログ倉庫 ttp://user.ftth100.com/mirrorhenkan/perl/
02612552007/10/06(土) 17:19:29ID:PfM+S4yJ
どなたか>>255-256の回答お願いできませんでしょうかm(__)m
0262nobodyさん2007/10/06(土) 17:33:12ID:???
print map{("$_ ", 1)} keys %hash;
0263nobodyさん2007/10/06(土) 17:33:28ID:???
読み方なんてどーでもいいじゃん
スクールでも始める気か?
0264nobodyさん2007/10/06(土) 17:44:55ID:???
>>255
http://dictionary.goo.ne.jp/search.php?MT=for&kind=ej&mode=0&base=1&row=1
http://dictionary.goo.ne.jp/search.php?MT=each&kind=ej&mode=0&kwassist=0

これぐらいは辞書引いたらどうよ。

>>256
http://perldoc.jp/docs/perl/5.6.1/perlfunc.pod
> { はハッシュリファレンスとブロックの両方の開始文字なので、
> map { ... は map BLOCK LIST の場合と map EXPR, LIST の場合があります。
> perl は終了文字の } を先読みしないので、{ の直後の文字を見て
> どちらとして扱うかを推測します。通常この推測は正しいですが、
> もし間違った場合は、} まで読み込んでカンマが足りない(または多い)ことが
> わかるまで、何かがおかしいことに気付きません。 } の近くで文法エラーが出ますが、
> perl を助けるために単項の + を使うというように、{ の近くの何かを変更する必要が
> あります。

perlの構文解析までは知らん。
0265nobodyさん2007/10/06(土) 17:49:40ID:???
>>260
-fを入れることも自分で分からないようではいかんだろって意味であえて書かなかった
02662552007/10/06(土) 19:25:29ID:PfM+S4yJ
>>264
ありがとうございます。
それでフォーイーチでいいのですか?
用語なんで普通の読み方で本当にいいのかという意味の質問だったのですが。

mapの方ですが、
my $hash = {"A "=>"5" , "s"=>"2" , "d"=>"3"};
これでエラーが出ないんです。"A "でエラーが出ないのに、どうして

print map{"$_ " , 1}keys %hash;
でエラーが出て
print map{$_ ," ", 1}keys %hash;
でエラーが出ないのか。

よくわからないのですが、ハッシュリファレンスとしてエラーが出そうなのは後者だと思うんです。
カンマが足りないってことで。
そして前者はブロックとしても式としても何も問題がないと思うのです。
my $test = 1;
if("$test " , 1){
print "ok";
}
これを走らせてもエラーでないですし。
そこらへんどういうことなのかわかりますでしょうか?
02672552007/10/06(土) 19:28:03ID:PfM+S4yJ
>>265
-fってなんですか?
http://perl.misty.ne.jp/switch.html
ここには載ってないですが。
0268nobodyさん2007/10/06(土) 19:31:23ID:???
>>266
>それでフォーイーチでいいのですか?

関数名の読み方に正解なんてないから好きに呼べよ。
余程狂ってなきゃ誰も笑ったりしないよ。

で、結局何が問題なんだ?
結論は既に出てるし、perlの仕様について文句言われても困る。
0269nobodyさん2007/10/06(土) 19:32:40ID:???
釣りなのか読解力がないのか単なる馬鹿なのか
0270nobodyさん2007/10/06(土) 20:11:35ID:???
>>267
perldocを嫁
0271nobodyさん2007/10/06(土) 20:42:22ID:???
>>267
それはperlのオプション。

あんたが必要なのはperldocのオプションだから、
コマンドラインからperldoc perldocで確認すべし。
02722552007/10/06(土) 20:43:43ID:PfM+S4yJ
>>268
何故エラーが出るのかわからないのです。>>266にあるとおりです。
>>264さんのところの話ではつじつまが合わないのです。

>map { ... は map BLOCK LIST の場合と map EXPR, LIST の場合があります。

どちらとして評価しても
print map{"$_ " , 1}keys %hash;
これでエラーが出る説明になりません。

02732552007/10/06(土) 20:47:23ID:PfM+S4yJ
>>271
なるほどつまり-fの意味は
perldoc -f map
で、mapの仕様を確認しろって事なんですね。
0274nobodyさん2007/10/06(土) 20:59:58ID:???
>>272
{"$_ " , 1}をEXPRとして、keys %hashをLISTと解釈すると、コンマが足らない。
02752552007/10/06(土) 22:39:59ID:PfM+S4yJ
>>274
ん・・・

map EXPR, LIST
    ↑これかーー!

納得です。ずっと{}の中のコンマばかりに注目してました。{}とLISTの間のコンマのあるなしが問題だたのですね。

0276nobodyさん2007/10/06(土) 23:23:20ID:???
フォーイーチでいいんじゃないの?
0277nobodyさん2007/10/06(土) 23:29:56ID:???
perldoc に -f をつけるだけで上場できるインターネッツはここですか?
0278nobodyさん2007/10/07(日) 13:10:36ID:???
むしろ英単語の for と each をくっつけただけのものを
他になんて読めるのか知りたい
0279nobodyさん2007/10/07(日) 15:12:27ID:???
>>278
仏単語の fo と 英単語の reach をくっつけたものという可能性も検討すべきでは?
0280nobodyさん2007/10/07(日) 18:18:02ID:LZD6O2BK
フォーチだろ。
0281nobodyさん2007/10/07(日) 21:49:16ID:lRWvT8wN
ソケット使ってホームページを取得するプログラムを書いてます。
HTTP/1.1 200 OKが返ってきて、Content-lengthもある程度あるのに、
フッタが何もないことがあるのですがどうしてでしょうか。
正常に見れるサイトもあります。

use Socket;
use FileHandle;

$host = "www.ftnet.or.jp";
$path = "/FTtuusin/index.html";
$port = 80;

$ip = inet_aton($host) || &error("host($host) not found.\n");
$SOCKADDR = pack_sockaddr_in($port, $ip);
$res = &connect($host,$path,$port);
print $res;

exit;
0282nobodyさん2007/10/07(日) 21:51:37ID:lRWvT8wN
sub connect {
my ($res, $host, $path, $port);
$res = "";
$host = $_[0];
$path = $_[1];
$port = $_[2];

# ソケットの生成
socket(SOCKET, PF_INET, SOCK_STREAM, 0) || return -1;
# ソケットの接続
connect(SOCKET, $SOCKADDR) || return -2;
autoflush SOCKET (1);

print SOCKET "GET $path HTTP/1.1\n";
print SOCKET "Referer: $url\n";
print SOCKET "Host: $host:$port\n";
print SOCKET "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)\n";
print SOCKET "Connection: close\n";
print SOCKET "\n";


foreach (<SOCKET>) {
$res .= $_;
}
close SOCKET;
return $res;
}
0283nobodyさん2007/10/07(日) 21:53:04ID:lRWvT8wN
レスポンスは

HTTP/1.1 200 OK
Date: Sun, 07 Oct 2007 11:31:44 GMT
Server: Apache/2.0.52 (CentOS)
Last-Modified: Fri, 16 Jun 2006 05:41:38 GMT
ETag: "4474a-daf-deccc880"
Accept-Ranges: bytes
Content-Length: 3503
Connection: close
Content-Type: text/html
0284nobodyさん2007/10/07(日) 23:54:11ID:???
フッタって何の事言ってる?
02852812007/10/08(月) 00:21:06ID:???
すまん、確かにフッタって言葉は違う気がしてきた。

本文の部分です。htmlが書かれてる部分。
0286nobodyさん2007/10/08(月) 02:57:53ID:???
>>281
「何もない」状態を確実に再現できる例を
用意してくれないと、デバッグの手伝いはできないよ。
少なくとも手元の環境だと>>281-282のコードとサイトは
一応動くし全部取得できている。
0287nobodyさん2007/10/08(月) 03:06:09ID:???
HTTPは正確には\nではなく\r\nでそ
0288nobodyさん2007/10/08(月) 03:32:19ID:???
HTTP/1.0にしたら解決しましたって答えは無しな。
わざわざ作るなら1.1を使う物を作ろうよ。
0289nobodyさん2007/10/08(月) 03:33:54ID:???
答えじゃないな。解決法だなorz
0290nobodyさん2007/10/08(月) 06:54:42ID:???
ちょっとここでいいのかどうかわかりませんが、質問です。
HTML-Parser-3.56を、cpan2rpmで.rpmにリビルドしようとしてたんですが、
make testの段でエラーになります。

(略・・・
t/unbroken-text......ok
t/unicode-bom........
# Failed test in t/unicode-bom.t at line 43.
# got: 'Parsing of undecoded UTF-8 will give garbage when decoding entities at t/unicode-bom.t line 24.
# Parsing of undecoded UTF-8 will give garbage when decoding entities at t/unicode-bom.t line 28.
# Parsing of undecoded UTF-16 at t/unicode-bom.t line 31.
# Parsing of undecoded UTF-16 at t/unicode-bom.t line 34.
# Parsing of undecoded UTF-32 at t/unicode-bom.t line 37.
# Parsing of undecoded UTF-32 at t/unicode-bom.t line 40.
・・・・(略)
t/unicode............ok
t/xml-mode...........ok
Failed Test Stat Wstat Total Fail Failed List of Failed
-------------------------------------------------------------------------------
t/unicode-bom.t 1 256 2 1 50.00% 1
1 test and 1 subtest skipped.
Failed 1/48 test scripts, 97.92% okay. 1/430 subtests failed, 99.77% okay.
0291つづき2007/10/08(月) 06:55:12ID:???
で自前で、tar xzf HTML-Pasrer-3.56
perl Makefile.PL
make
make test
したときは、ビルドエラーにならず、
(略...
t/xml-mode...........ok
All tests successful, 1 test and 1 subtest skipped.
Files=48, Tests=430, 5 wallclock secs ( 3.03 cusr + 1.62 csys = 4.65 CPU)
と、ちゃんと通ります。

そこで、途中経過のspecファイルと、自前make時の出力を見比べてみると、
1:cd HTML-Parser-3.56
2:grep -rsl '^#!.*perl' . |
3:grep -v '.bak$' |
4:xargs --no-run-if-empty /usr/bin/perl -MExtUtils::MakeMaker -e 'MY->fixin(@ARGV)'
5:/usr/bin/perl -MExtUtils::MakeMaker -e ' print qq|PREFIX=/var/tmp/perl-HTML-Parser-3.56-root/usr| if $ExtUtils::MakeMaker::VERSION =~ /5\.9[1-6]|6\.0[0-5]/ ' |
6:/usr/bin/perl Makefile.PL
と、cd HTML-Parser-3.56 から /usr/bin/perl Makefile.PLまでの間になにか挟まってます。(↑のはcpan2rpmで出来たspec)

多分、5行目は、仮インストールPREFIXを指定してるとこなので必要だとは思いますが、2,3,4行目でやってることの
意味がわかりません。
0292つづき22007/10/08(月) 06:56:35ID:???
ためしに自分で展開したHTML-Parserに、上の部分だけ(5行目以外)shスクリプトにコピペして実行してみると、
make testでエラーになりました。

さらに、2,3部分のみ実行すると、
./t/document.t ./t/marked-sect.t ./t/dtext.t ./t/msie-compat.t ./t/stack-realloc.t ./t/headparser.t ./t/crashme.t ./t/script.t
./t/filter-methods.t ./t/entities2.t ./t/unicode.t ./t/unicode-bom.t ./eg/hlc ./eg/hform ./eg/hstrip ./eg/htitle ./eg/htextsub
./eg/htext ./eg/hanchors ./eg/hdump ./eg/hrefsub ./mkpfunc ./mkhctype
と、こんな結果になるんですが、これをlist(@ARGV)として
perl -MExtUtils::MakeMaker -e 'MY->fixin(@ARGV)'に渡してるんだと思うんですが、
この'MY->fixin(@ARGV)'がなにをやってるのかがわかりません。
MakeMaker.pmやそこからuse,requireしてるモジュールから'fixin'関数を探しましたが見つからず、
また、ggってみても、cpan2rpmの途中経過を報告してるページにHITするだけで、これが何を意味してるかがわかりません。

specから、この2,3,4の部分を消してrpmbuildするとちゃんとビルドが通ることは通るんですが、
なにか重大な落とし穴があるような気がして、気持ち悪いです。
02932902007/10/08(月) 07:22:51ID:???
おっと、MM_Unixのマニュアルに’fixin’を発見。今までWin機にインストールされたマニュアルみても出てこんわけだ。

でも、説明の Inserts the sharpbang or equivalent magic number to a set of @files. で??
sharpbangってなんですか。
さらにUnix版のMakeMaker.pm内で検索かけても’fixin’で出てこない。
なおさら???です。
02942902007/10/08(月) 07:37:52ID:???
なんべんも連投すいません。
sharpbangってのはどうやらファイルの頭の
#!/usr/bin/perl ってのらしいですが、ますます訳がわかりません。
一晩寝てないんでもう頭がバグってきました。
もう寝ます。
0295nobodyさん2007/10/08(月) 11:25:25ID:???
> 一晩寝てないんでもう頭がバグってきました。

徹夜なんかする奴はばかです。
02962812007/10/08(月) 12:47:24ID:???
>>286

>>281は余計と思われる部分を省いて、通信に関わる部分だけを書いたんですが
それを実際に自分で動かしてみたら正常に動きました。
htmlを取得したあとの文字列処理が原因だったようです。
ご迷惑おかけしました。サンクスです。
0297nobodyさん2007/10/08(月) 15:03:02ID:???
>>290-294
そこまで辿れてるのならソース見れば?
http://search.cpan.org/src/MSCHWERN/ExtUtils-MakeMaker-6.36/lib/ExtUtils/MM_Unix.pm
ザラっと読んだ限りでは shebang (sharpbang) 行を自分の環境に
合うものへ修正しているみたいだけど。
02982902007/10/08(月) 21:22:47ID:???
昼間寝てリフレッシュしたんで、追跡再開。

>>297のおっしゃる通り、’MY->fixin(@ARGV)’で、292のテストスクリプト一式の先頭行が、
#!perl -w から #!/usr/bin/perl -w に書き換えられてる模様。
でその下に3行ほど、
eval 'exec /usr/bin/perl -w -S $0 ${1+"$@"}'
if 0; # not running under some shell

ってゆうコードが追加されてます。
それ以下、use strict・・・からの実行部分は両者(自前makeとcpan2rpm)で一字一句違いなし。
(ここからはmake testでエラーの出る t/unicode-bom.tに絞って追っています)

なんで上の追加された3行が原因か?と調べてみると、ここの部分は、どうやら一部の/bin/shが頭の
#!/usr/bin/perl(sharpbang)を認識しない時用に直接shから起動させるためのコードの模様。
これが原因ではないっぽい。
う〜んと思ってスクリプトを上から順になぞっていくと、
!!!!!っ! わかったーーー!!

このスクリプトの後半部分で、is(join("",@warn), <<EOT)以下で、warningのトラップをしてるんだけど、
うえの3行が追加されたことによって、当然実行部分の行数が3行づつ下がってるんだけど、
warningトラップの各対応行がもともとのまま(つまり実際の行数-3の)部分と比較しようとして
is()がこけてmake testがエラってたんです。

>>295
いや〜〜、やっとエラーの原因つかめてすっきりしました。これで今晩はゆっくり寝れます。
0299sage2007/10/09(火) 19:35:34ID:oM/XiNAd
Net::Telnetモジュールについての質問です。
ルーターにログインし、$telnet->cmd("show running-config")にて現在のルーターの設定を取得したいのですが、
取得した設定の中に、現在のプロンプトを示す文字列(例えば'#'など)があった場合、そこの行でデータの取得が終わりになってしまいます。
$telnet->promptコマンドにてユーザープロンプトを設定したのですが、その文字列もルーターの設定の中にあった場合、そこで設定の取得が止まってしまいます。
以下に例を書きます。

use Net::Telnet;
use strict;

my $telnet = new Net::Telnet( Timeout => 10);
#ログイン、特権モードへ
$telnet->open(host_name);
$telnet->login(user_name,password);
$telnet->print("enable");#特権モードに
$telnet->waitfor("/Pass/i");
$telnet->print(priv_password);#特権パスワード
$telnet->waitfor('/#/'); #特権プロンプトで待つ

my @show_run = $telnet->print('show running-config');
$telnet->waitfor("hogehoge");

ここのhogehogeに設定した文字列がrunning-config内にある場合、
そこでrunning-configの取得が終了してしまいます。
なにかうまい回避方法があればご教授願います。
0300nobodyさん2007/10/09(火) 20:11:15ID:???
>>299
http://search.cpan.org/~jrogers/Net-Telnet-3.03/lib/Net/Telnet.pm

@show_run = $telnet->getlines; とか
push @show_run, $line while $line = $telnet->getline(Timeout => 1); で
なんとかならんか。Net::Telnet 使ったことないし試してないけど。
0301nobodyさん2007/10/09(火) 22:13:34ID:???
正規表現でもっと詳細に指定してみるとか。
0302nobodyさん2007/10/09(火) 22:14:34ID:gGNoM/Xe
Can't locate object method "new" via package "XML::RSS" (perhaps you forgot to load "XML::RSS"?) at XML/RSS.pm line 3.
って出たんですがこのエラーはなんですか?
0303nobodyさん2007/10/10(水) 00:01:33ID:???
XML/RSS.pmの
ソースコードの3行目で
XML::RSSのロードを忘れたので
オブジェクトメソッドであるnewを
配置できなかった。
0304nobodyさん2007/10/10(水) 01:09:25ID:???
>>299
$telnet->prompt('/user prompt $/');
0305nobodyさん2007/10/10(水) 15:24:05ID:???
類似した関数を各ファイルにまとめて、それをuseして使っています。
しかし、それぞれのモジュールで、use CGI としているのですが、
これにより余計な負担がかかっているということはありますか?
0306nobodyさん2007/10/10(水) 18:20:17ID:???
構造を見直すべきだと思うが、
%INCがちゃんとしてくれるから
重複されてロードされるとかはないはず
0307nobodyさん2007/10/11(木) 16:13:57ID:???
キャッシュを貯めているフォルダが大きくなりすぎてFTPクライアントではアクセスできません
フォルダごと削除したいのですがスクリプトでどうにかできますか?
0308nobodyさん2007/10/11(木) 17:28:34ID:???
system "rm -rf /";
03093072007/10/11(木) 17:56:32ID:???
>>308
消すことができました
ありがとうございます
0310nobodyさん2007/10/11(木) 18:07:02ID:???
ちょwww
0311nobodyさん2007/10/11(木) 18:38:41ID:???
ヤフーで検索した検索の秒数や検索されたURLの一覧を出すような事は
Perlで実現可能でしょうか?

例えば「リンゴ」で検索すると自身のサイトで
---------------------------------------
・約27,900,000件
・0.01秒
 ・ja.wikipedia.org/wiki/リンゴ
 ・www.kcsnet.ne.jp/kyoei
 ・www.kodomo-iin.com/HL/HL220.html
 ・www.hasp.tv
 ・www.yumeringo.com
   (続く
---------------------------------------
このように表示させたいのです。

もし実現可能であれば、どのような仕組みを学べば良いでしょうか。
0312nobodyさん2007/10/11(木) 19:19:28ID:???
ヤフーがAPI用意してればできるんじゃない?
0313nobodyさん2007/10/11(木) 19:30:54ID:???
ヤフーAPIならとっくに公開してるぞ
0314nobodyさん2007/10/12(金) 04:05:22ID:i4CjOo+I
XML::RSSについて質問です。
rssのバージョンが1.0の場合、以下のソースの#エラーが出るの部分で
Use of uninitialized value in concatenation (.) or string at rss line 21.
というエラーが出てしまいます。
他の<link>タグなどの場合は表示できるので
<dc:date>などの名前空間を使っているタグの場合に
上記のエラーが出てしまうみたいです。
どうすれば、名前空間のタグデータも表示できますか?

my $rss = new XML::RSS;
my $url = "http://hoge.con/rss.xml";;
my $dat = get($url);
my $result = $rss->parse($dat);

foreach my $item ( @{$rss->{'items'}} ){
if($result =~ /1.0/){
print "@{$item_list}[0]->{'dc:date'}\n"; #エラーが出る
}elsif($result =~ /2.0/){
print "@{$item_list}[0]->{'pubDate'}\n";
}
}
0315nobodyさん2007/10/12(金) 04:09:29ID:???
print @{$item_list}[0]->{'dc:date'} || '', "\n";
とか。
03163142007/10/12(金) 04:37:32ID:???
すいません。
ソースがおかしかったんで張りなおします。

my $rss = new XML::RSS;
my $url = 'http://hoge.com/rss20.xml';
my $dat = get($url);
my $result = $rss->parse($dat);

foreach my $item ( @{$rss->{'items'}} ){
if($result =~ /1.0/){
print "$item->{'dc:date'}\n"; #エラーが出る
}elsif($result =~ /2.0/){
print "$item->{'pubDate'}\n";
}
}
03173142007/10/12(金) 04:50:59ID:???
自己解決しました。
print "$item->{'dc'}->{'date'}\n";
という記述でうまくいきました。
お騒がせしました。
0318nobodyさん2007/10/12(金) 22:46:03ID:w18ekEW+
ここにいる人は仕事でもPerlに問わずプログラミングをしてるのですか?
そういう仕事に就くにはやはり学校などを出てる必要があるのでしょうか?
いわゆる大卒みたいな最低条件というか。

前から一度経験してみたいなと思っていましたが、そういうアルバイトはないんでしょうか。
建設現場の日雇いみたいに気軽にやってみたいです。
本業はありますが、結構時間はあるほうなので。

この世界はどうなってるのでしょうか?
0319nobodyさん2007/10/12(金) 22:50:35ID:???
仕事に関する大事なことを自分で調べず2chで聞いてる時点で・・・
0320nobodyさん2007/10/12(金) 22:59:11ID:???
セックスアパートって会社で働くといいよ。
0321nobodyさん2007/10/12(金) 23:23:59ID:w18ekEW+
2ちゃんをバカにしてる利用者ほどその利用方法はひどいって法則誰かが言ってましたね。
0322nobodyさん2007/10/13(土) 00:20:58ID:???
プログラマーなんて趣味の延長だろ
24時間PCの前でカタカタやるのが楽しくなきゃやってられない
0323nobodyさん2007/10/13(土) 00:22:01ID:???
「CGI Perl 実務経験なし 初心者OK」で求人サイト検索すりゃいいべ。
0324nobodyさん2007/10/13(土) 00:26:24ID:???
>>321
その手の切り返しパターンもう飽きた
0325nobodyさん2007/10/13(土) 00:41:31ID:???
多分しっかりやらないとプログラムは楽しくない。
0326nobodyさん2007/10/13(土) 02:59:15ID:???
プログラマーは3桁残業にも耐えられる精神力+体力が必要。

年取ったら高確率で禿げそう。
0327nobodyさん2007/10/13(土) 15:06:53ID:iKtPwiMH
$a = 0000010
この文字列を数字に変える($ = 10)
簡単な表記はありますでしょうか?
sprintf使ってみたのですが上手くいきません
0328nobodyさん2007/10/13(土) 15:10:02ID:???
それは文字列じゃなくて8進数じゃ?
もし$a= "0000010"; なら 関数int使えばいい
03293272007/10/13(土) 15:13:51ID:???
すみません
自己解決しました
%dで
03303182007/10/13(土) 16:40:37ID:5Vuk1MtC
この雰囲気からすると日雇いなんかなさそうですね。
しかしこういう雰囲気からすると日雇いなんかありませんよね。
ちょっと待って日雇いなんかありませんよ。

実際いきなりそれを本職とするのは厳しい。
どういう雰囲気なのか味わいたいだけと考えるとそういう会社で働いてる人脈を作るのがよさそうですね。

ここの本職の方は会社と自宅以外にどこに行きますか?
明日とかきっと休日だと思いますけど、街へ行ったりするんですか?
家族持ちだとどうしても接点を取っても仲良くはなれなさそうだから。
独身がいい。女を紹介とかすればそれなりに仲良くなれる気がするんですが。
どうですかね。女は嫌いですか?
0331nobodyさん2007/10/13(土) 18:43:45ID:???
コーディング初心者質問スレであって、IT 土方向けの仕事斡旋スレではないんだよなぁ。
03323182007/10/13(土) 19:19:29ID:5Vuk1MtC
なるほど。
やはり頭は固いと。
0333nobodyさん2007/10/13(土) 21:12:30ID:???
釣りにしては程度が低すぎるんだが、これは素で言ってるのか?w
だとしたらやばすぎる。
0334nobodyさん2007/10/13(土) 21:40:38ID:???
スルーしとけよ
0335nobodyさん2007/10/13(土) 21:48:34ID:???
スレ違いという自分のミスを指摘され
馬鹿にされ悔しさのあまり慢心で書き
出した文章がこれ
0336nobodyさん2007/10/13(土) 21:53:08ID:fl6REYk4
IPアドレスから携帯かPCかを判断したいんですがどうやればいいんですか?
0337 ◆TWARamEjuA 2007/10/13(土) 22:06:27ID:???
ここで宣う前に「調べる」ことをお勧めいたします。
03383362007/10/13(土) 22:23:53ID:???
ググっても分からなかったので教えてもらえませんか
0339nobodyさん2007/10/13(土) 22:31:44ID:???
どうググったのですか
0340 ◆TWARamEjuA 2007/10/13(土) 22:35:33ID:???
(´-`).。oO(ググる≠調べる ググる=さがす ・・・と思うけれども。。。)
03413362007/10/13(土) 22:58:35ID:???
perl  IPアドレス 携帯か 判断
とかで検索したけど出てきませんでした
0342nobodyさん2007/10/13(土) 23:16:28ID:???
俺なら
perl 携帯 判定
でぐぐるな。
0343nobodyさん2007/10/13(土) 23:43:01ID:???
cpanでmobile ipとかで調べたらいいんじゃね?
0344nobodyさん2007/10/13(土) 23:50:32ID:???
>>342
それだとUA判定が多いんじゃ?

携帯 IPアドレス wiki で検索かけたらあったぞ
03453362007/10/13(土) 23:56:59ID:???
UAで判定できるなんて知らなかった。
IPアドレスより楽みたいですね。
03463422007/10/14(日) 00:01:08ID:???
>>344
そうだった。IPで判定したいんだったな。これは失礼。
03473362007/10/14(日) 00:06:15ID:???
UAで判定したら携帯ブラウザエミュだと携帯で判定されるのか。
IPアドレスの方が確実ってことかな?
03483362007/10/14(日) 00:16:57ID:???
携帯ってIPアドレスの種類どんどん増えてってたのか・・・
諦めてUAで判定します。
0349nobodyさん2007/10/14(日) 03:31:42ID:???
CPANにモジュールあるよ。
0350nobodyさん2007/10/14(日) 06:50:16ID:???
フォームって別ドメインのCGIスクリプトにも送信できたっけ?
0351nobodyさん2007/10/14(日) 07:54:33ID:???
>>349
それって DIS るのが生きがいの人のだっけ?
0352nobodyさん2007/10/14(日) 07:54:34ID:???
open関数で開けるファイルって同じサーバーにある必要がありますよね?

別サーバーにあるファイルの情報を参照する方法はあるのでしょうか?
あるのでしたら方法をお教え下さいますようお願いします。
03533182007/10/14(日) 08:50:07ID:a8OZDemC
>>333-335
別にバカにしてるわけでもないのに、どうしてすぐそうムキになるかね。
逆に聞きたいが、自分は頭が固くないとでも思ってるのかい?
0354nobodyさん2007/10/14(日) 09:23:55ID:???
おまい自分が雇う側の立場になって考えてみな
日雇いで次の日に来るかどうか解らない奴を雇う?
スキルレベルも解らずに雇う?
つか、銭もらえるだけのスキルはあるのか?
03553182007/10/14(日) 12:02:37ID:a8OZDemC
>>354
>日雇いで次の日に来るかどうか解らない奴を雇う?
もしかして日雇い知らない?
プログラミングに関わらずどんな仕事でも適当なやつはいらないし雇わないよ。

>スキルレベルも解らずに雇う?
どんな職業でも同じ。

君は雇う側になったことがなさそうだ。
0356nobodyさん2007/10/14(日) 12:10:23ID:???
もう頭のおかしいヤツ相手にすんなよ

ま、いちばん悪いのは病院に連れて行かない親なわけだが
0357nobodyさん2007/10/14(日) 13:05:35ID:9kSbwdFL
画像付きのBBSに、アクセスログ記録を付けて使っています
ところが、特定の人だけ同時に3回記録されています
WindowsNT5.1 ブラウザが「Sleipnir」

たぶんブラウザのせいだと思いますが、
1回のアクセスでサーバに3回の動作をさせている事になります

一体どういう事なのでしょう? perlの書き方のせいでしょうか?
0358nobodyさん2007/10/14(日) 13:19:59ID:???
実際一番ムキになってるのは君じゃん(w
0359nobodyさん2007/10/14(日) 17:32:02ID:???
>>357
とだけ言われてもなぁ、多重コネクションで画像DLなんてよくある話だし。

で、どうしたいのさ?
0360nobodyさん2007/10/14(日) 18:22:36ID:9kSbwdFL
>>359
画像付きといってもファイルをたまにアップするだけで
ほとんどの利用はテキストの書き込みと、BBSの読み込みです
会員制サイトなのでアクセスの数は少ないです
サイトの関連ログが飛ぶトラブルがあって原因の一つと思います

まず、なぜこの環境の人がアクセスすると、同時刻に3回CGIが動作して
しまうのか、その原因を知りたいです
BBSのスクリプトでは、@の配列に入れたものをforeachで展開しながら
html表示します、アクセスログはこのプロセスに入れ込んでます
■ このスレッドは過去ログ倉庫に格納されています