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

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

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん03/06/28 01:18ID:???
いらっしゃーい、Perlのコーディングで困ってる人のスレです。

【投稿する際の注意】
質問するときは内容をよく吟味してから投稿してください。

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

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

関連スレ
【Perl上級者コーナーPart01】
http://pc2.2ch.net/test/read.cgi/php/1024741312/
CGI: Common Gateway Interface part 11
http://pc2.2ch.net/test/read.cgi/php/1055597189/
【Perl,CGI】参考書籍 第三版
http://pc2.2ch.net/test/read.cgi/php/1030209573/
【 スクリプト改造工房 PART 6 】
http://pc2.2ch.net/test/read.cgi/php/1047806915/

過去ログやお勧めサイトは >>2-10
0377あぼーんNGNG
あぼーん
0378nobodyさん03/07/08 22:29ID:SfDnct30
プログラムからcrontabにスケジュール追加する時、
通常はどうやって追記してますか。

var/spool/cronを直接いじってもいいのですが、
何か効率のいい方法がありましたら教えてください。
0379あぼーんNGNG
あぼーん
0380nobodyさん03/07/08 22:30ID:???
ああ、ごめんなさい。
/var/spool/cron内はroot以外入れないですね。
それだとなおさら何か方法あるのか疑問です。
0381nobodyさん03/07/08 22:33ID:???
crontab -e
スレ違いだYO!
0382nobodyさん03/07/08 23:03ID:???
$ORG[0]->{kana} = "カリフォルニア";
$ORG[1]->{kana} = "ロンドン";
$ORG[2]->{kana} = "アラバマ";
$ORG[3]->{kana} = "アラスカ";
・・・てかんじで、地名が入っているんですが、

これを並び替えたいと思ってます。
その基準は、
(1)あらかじめ定められたいくつかの地名は、優先的に、定められた順番で表示
(2)それ以外の地名は、その後にアイウエオ順で表示
です。

(1)の地名は、@seq = ("ニューヨーク","ロンドン","パリ"・・・・);
というように(この順番で)格納されているものとします。


(2)だけなら、

@tmp = sort { (${ORG[$a]->{kana}} cmp ${ORG[$b]->{kana}}) } 0 .. $#ORG;
foreach (@tmp) { push(@tmp_ORG,$ORG[$_]);}
@ORG = @tmp_ORG;
undef @tmp_ORG;
でいいとわかるんですが・・・。

これのどこに(1)を組み込めばいいのか・・・
0383nobodyさん03/07/08 23:11ID:???
>>381
いや、ターミナル上ではなくてperlでスケジュールを追加したいの
ですが、何か方法はないですか
0384nobodyさん03/07/08 23:54ID:???
>>375
クライアントを作るとはどういうことですか?
0385の03/07/09 00:12ID:6fG8Iq33
>>382
こんな感じか?

my @seq = ("ニューヨーク","ロンドン","パリ");
my %hseq;
my $n = 0;
foreach my $i (@seq) { $hseq{$i} = ++$n; }
my @ORG;
$ORG[0]->{kana} = "カリフォルニア";
$ORG[1]->{kana} = "ロンドン";
$ORG[2]->{kana} = "アラバマ";
$ORG[3]->{kana} = "アラスカ";
$ORG[4]->{kana} = "パリ";
sub ordfunc {
my $aa = $a->{kana};
my $bb = $b->{kana};
if (defined $hseq{$aa}) {
return defined $hseq{$bb}? ($hseq{$aa} <=> defined $hseq{$bb}):-1;
} else {
return defined $hseq{$bb}? 1:($aa cmp $bb);
}
}
my @a = sort ordfunc @ORG;
$n = 0;
foreach my $i (@a) {
printf "%d: \"%s\"\n", $n++, $i->{kana};
}
--
俺的ポータルサイトを作ろう
http://mysite.ddo.jp/
0386あぼーんNGNG
あぼーん
0387の03/07/09 00:20ID:6fG8Iq33
>>385
すまん、一箇所間違ってた。
>return defined $hseq{$bb}? (defined $hseq{$aa} <=> $hseq{$bb} ):-1;
<return defined $hseq{$bb}? (defined $hseq{$bb} <=> $hseq{$aa} ):-1;
0388あぼーんNGNG
あぼーん
0389nobodyさん03/07/09 07:37ID:???
>>384
LWPモジュール使わずにソケット使って通信するプログラムを作れと言っている。
既存のモジュールの機能に満足できないのであれば、自作するしかないだろ?
0390nobodyさん03/07/09 13:02ID:???
>>373
>Location: とかのデータがありませんし…。
ProxyomitronとLWPは全く同じリクエストを送ってるのか?
Host指定するとLocationは来ないぞ。↓参照

$ telnet www.google.com 80
Trying 216.239.39.101...
Connected to www.google.com.
Escape character is '^]'.
HEAD / HTTP/1.1
Host: www.google.co.jp
Connection: close

HTTP/1.1 200 OK
Content-Length: 2716
Server: GWS/2.1
Date: Wed, 09 Jul 2003 04:01:05 GMT
Content-Type: text/html
Cache-control: private
Set-Cookie: PREF=ID=2f2a324164376c04:LD=ja:TM=1057723265:LM=1057723265:S=N4MltwrSeSo_i7Vp; expires=Sun, 17-Jan-2038 19:14:07 GMT; path=/; domain=.google.co.jp

Connection closed by foreign host.
0391nobodyさん03/07/09 13:05ID:???
>>373
とりあえずLWP::UserAgent->new(parse_head => 0);にしたら

Content-Type: text/html; charset=Shift_JIS
Title: Google

は消える。
これはHTMLのHEAD内を解析して取ってくるオプションだから。

で、Client-XXXはソース見たらLWP::UserAgentが勝手に埋め込んでるみたいだな。
こいつは抜き取るしかなさそうだが、同じ名前で送られてこないとも限らないか。

Locationはリダイレクト。
http://www.google.com/にリクエストしてhttp://www.google.co.jp/に行けって言われてるんじゃないの?
これはデフォルトがリダイレクト先を取得する設定になってるから出てこない。
リダイレクトしないように設定すればおけ。

Cneonctionについてはぐぐってくれ;-)
※Connectionじゃないのなw

というわけで、
$ua = LWP::UserAgent->new(parse_head => 0, requests_redirectable => []);
みたいにオプションつけて、HEADで取得、Client-XXXを適当に消す、って感じか。
オプションの意味についてはちゃんと自分で調べてくれよ。

あとリダイレクトなんかで$res->is_successが偽になる場合もあるから注意。
302 Foundとかね。


まあ、純粋なヘッダが欲しいんなら自分で作った方がいいかもしれないけどね。
0392nobodyさん03/07/09 13:20ID:???
>>373
print $res->headers_as_string; じゃダメなの?

Cache-Control: private
Date: Wed, 09 Jul 2003 04:15:46 GMT
Server: GWS/2.1
Content-Length: 2716
Content-Type: text/html
Content-Type: text/html; charset=Shift_JIS
Client-Date: Wed, 09 Jul 2003 04:15:47 GMT
Client-Peer: 216.239.57.99:80
Client-Response-Num: 1
Cneonction: Close
Set-Cookie: PREF=ID=4bbf69507377e862:LD=ja:TM=1057724146:LM=1057724146:S=ISp-xtd
7MZcyLh4p; expires=Sun, 17-Jan-2038 19:14:07 GMT; path=/; domain=.google.co.jp
Title: Google
0393nobodyさん03/07/09 13:31ID:???
こっちはYahooね

Cache-Control: private
Connection: close
Date: Wed, 09 Jul 2003 04:28:10 GMT
Pragma: no-cache
Content-Type: text/html;charset=euc-jp
Client-Date: Wed, 09 Jul 2003 04:28:10 GMT
Client-Peer: 210.81.150.5:80
Client-Response-Num: 1
P3P: policyref="http://privacy.yahoo.co.jp/w3c/p3p.xml", CP="CAO DSP COR CUR ADM
DEV TAI PSA PSD IVAi IVDi CONi TELo OTPi OUR DELi SAMi OTRi UNRi PUBi IND PHY O
NL UNI PUR FIN COM NAV INT DEM CNT STA POL HEA PRE GOV"
Title: Yahoo! JAPAN
0394nobodyさん03/07/09 13:55ID:???
>>392
それは$res->headers->as_stringと同じだろ。
この結果は>>373でお気に召さないと書いてある。
039533703/07/09 14:19ID:???
>>391-394
レスありがとうございます。

> というわけで、
> $ua = LWP::UserAgent->new(parse_head => 0, requests_redirectable => []);
> みたいにオプションつけて、HEADで取得、Client-XXXを適当に消す、って感じか。
> オプションの意味についてはちゃんと自分で調べてくれよ。

おおかた、>>391 さんの言っている事が理解できました。
あとは、自分で調べてやってみます。

※使っている PC がへぼいせいかもしれませんけど、
LWP の最初のロードが遅いですね
0396nobodyさん03/07/09 18:32ID:T8daMjJB
結局、perlスクリプトでcrontabを操ることは
不可能なのでしょうか。
できるならcrontab編集ツールとか作りたいの
だけど、、、
0397nobodyさん03/07/09 18:50ID:???
「crontab -」で標準入力から突っ込むことができるから、たいして難しくないでしょ?
むしろ、運用の方が大変じゃないかなぁ。
何を突っ込まれるか分からないわけだし。
0398nobodyさん03/07/09 19:36ID:???
>>387
お返事有難うございます。
ええと、初心者のためいまいちイメージが湧きません。
標準入力から書き込む、ということは具体的にどういったことでしょうか。
度重なる質問すみません。
0399nobodyさん03/07/09 20:14ID:???
>>398
標準入力へ書き込むって事じゃ?

open( CRONPIPE, "| crontab - " );
 ・
 ・
 ・
close( CRONPIPE );
0400nobodyさん03/07/09 20:50ID:???
400 GET

  _,,..i'"':,
  |\`、: i'、   ≡≡≡(´⌒;;;≡≡≡
  .\\`_',..-i
   .\|_,..-┘ ズサーーーーーー

0401nobodyさん03/07/09 20:57ID:???
プラットフォームに依存しない CD-ROM ドライブアクセスモジュールって無い?
0402nobodyさん03/07/09 21:10ID:PDgcqehQ
>>401
Perlじゃないよヴォケ。JavaScript逝けや
0403nobodyさん03/07/09 21:17ID:???
>>402
ハァ?
0404nobodyさん03/07/09 21:26ID:???
>>402
わざわざageで。ご苦労なこった。
0405nobodyさん03/07/09 21:39ID:???
>>399
isweb,xareaはcrontabが禁止されてる。
0406nobodyさん03/07/09 23:31ID:???
SQLの話かもしれないけど、
mysqlで、主キーにAUTO_INCREMENTついたテーブルに
insertした場合、insert後に主キーが何になったかを知る方法ってありますか?
DBIつかってて、今は、普通に$dbi->do(..でSQL文発行してます。。
0407nobodyさん03/07/10 00:34ID:MG1pWe0Y
>>403=>>404
無能がそろいもそろって・・・・
0408nobodyさん03/07/10 02:24ID:???
みんな書けよ。
0409nobodyさん03/07/10 02:25ID:???
Perlスレを盛り上げよう。
0410nobodyさん03/07/10 02:30ID:izTOLa86
掲示板で使っているクッキーを別のcgiで使う
ってことはできますか?
レスキューのminibbsのちょっと前のを使っているのですが
そのまま使うと掲示板自体を表示しちゃうんです
0411nobodyさん03/07/10 02:33ID:???
意味わかんない
0412nobodyさん03/07/10 02:46ID:izTOLa86
つまり
投稿してクッキーとして記録された名前などを、別のcgiで流用し
たいのです。
元のBBSのスクリプトのクッキー部分を移植すると動作はしますが、
その後にその掲示板が表示されてしまうのです。 これです、行間詰めてます。
$reloadに掲示板のURLが設定してあるのです。

$cookies= $ENV{'HTTP_COOKIE'};
@pairs = split(/;/,$cookies);
foreach $pair (@pairs) {
($name, $value) = split(/=/, $pair);
$name =~ s/ //g;
$DUMMY{$name} = $value;
}
@pairs = split(/,/,$DUMMY{$reload});
foreach $pair (@pairs) {
($name, $value) = split(/:/, $pair);
$COOKIE{$name} = $value;
}
0413nobodyさん03/07/10 02:52ID:???
>>399
ありがとうございます。
なんとなくイメージが湧きました。
これからやってみますね
0414nobodyさん03/07/10 03:34ID:???
>>412
cookieに何を書き込むかは発行するCGIが決める。
読んだcookieのどの部分を使うも読んだCGIが決める。
ルーチン丸ごと使うからそんなことになるんだよ。
0415あぼーんNGNG
あぼーん
0416あぼーんNGNG
あぼーん
0417nobodyさん03/07/10 06:46ID:???
>412
頭悪いと大変ですね。
0418nobodyさん03/07/10 09:35ID:wjfeVSSe
>>414
頭悪くて申し訳ないですけど、
解決策教えてもらえないですかね?
頼みます。
0419nobodyさん03/07/10 09:40ID:???
>>418
通り掛りのもんだけど、
$reloadに新しいページを入れた?
0420nobodyさん03/07/10 10:45ID:hGiFYAot
はい
いれるとクッキーの取得ができません
0421nobodyさん03/07/10 10:57ID:???
あはは、別のCGIで取得したcookieを利用するんなら、
そっちのCGIをrequireするか、cookieで取得した値を
ファイルに書き出しとかなきゃだめじゃん。
requireするのは、やってる内容にもよるがたぶん無理。
つか、あなたの腕では、ファイルに書き出すのもたぶん
無理。
0422nobodyさん03/07/10 11:16ID:DU/pTK24
そうですか、ファイルに書き出すとたぶん
環境変数で書き出した値と照合するしかないですよね?
これでは特定が完全ではないでしょう?

ならば、本体のbbsでルーチン組んで動作分離させるか、
別のcgiから一旦bbsを起動させて動作分技させます
htmlファイルを書き換える仕様にしているのですが、
すでに膨大なリンクがあるので後者で済ましたいです。

上手くいかなかったらまた質問します。
0423あぼーんNGNG
あぼーん
0424nobodyさん03/07/10 11:41ID:???
>>422
$cookies= $ENV{'HTTP_COOKIE'};
@pairs = split(/;/,$cookies);
foreach $pair (@pairs) {
($name, $value) = split(/=/, $pair);
$name =~ s/ //g;
$DUMMY{$name} = $value;
}

これだけ使えばいいじゃん
それぞれのCGIからcookieを書き込むときに

print "Set-Cookie: NAME=name; expires=$wday, $mday-$mon-$year 00:00:00 GMT; path=/\n";
print "Set-Cookie: MAIL=mail; expires=$wday, $mday-$mon-$year 00:00:00 GMT; path=/\n";

のようにしてpathを強制的にサイトのルートにしちゃえばいいんだよ
そうすればどのCGIからも同じcookieで読み書きできるようになる
0425nobodyさん03/07/10 11:49ID:???
>>424
やるなら書き込み後にcookieのファイルを開いて自分のアカウントの
ルートになっているか確認してね。
0426nobodyさん03/07/10 12:52ID:uIFBr8e3
<input type="radio" name="site_ja" value="1">あり
<input type="radio" name="site_ja" value="0">なし

から送られる値を、
$in{site_ja}に格納しているのですが、
どちらのボタンを押されていない場合、
エラーを出したいと思っています。

で、
if (!defined($in{site_ja})){$HtmlErrorText .= "<li>日本語版サイトを選択してください</li>";}
で判断しようとしたのですが、
if文が偽になってしまって、エラーが出せません。
どうしてなのでしょうか・・・?
0427nobodyさん03/07/10 12:55ID:???
if ($in{site_ja} == 0)じゃいかんのか。
値が0でもdefineはされてるだろ。
0428nobodyさん03/07/10 12:59ID:???
>>426
definedを使ったから。existsを使えばいい。
0429nobodyさん03/07/10 13:00ID:???
<input type="radio" name="site_ja" value="1">あり
<input type="radio" name="site_ja" value="0" checked>なし
or
<input type="radio" name="site_ja" value="on">あり
<input type="radio" name="site_ja" value="off">なし

(´-`).。oO(こうすれば悩まなくて済むのになぁ・・・)
0430あぼーんNGNG
あぼーん
0431nobodyさん03/07/10 14:14ID:mUbItvZA
$p=int(rand(8));
について、連続で同じ数字は
出ない様にしたいです。
例えば1回目が3なら、
2回目は3が出ないように。
すいませんけど、どうやるのか、
教えて下さいませ。
043242603/07/10 14:30ID:???
>>427
どっちのボタンも押されてないと、値はNullだと思うのですが・・・かんちがいしてる?

>>428
if (!exists($in{site_ja})){$HtmlErrorText .= "<li>日本語版サイトを選択してください</li>";}
に変えてみたのですが、
症状が変わらないのですが・・・・
0433nobodyさん03/07/10 15:03ID:???
>>432
どっちかボタンを押すように言え。
押さないような香具師はアボーン汁。
0434nobodyさん03/07/10 15:13ID:???
>>432
チェックされていなければ、site_jaは送信されてこない。
よってvalueも存在しないからNull判定でやってはダメ。

definedでやった場合は変数が未定義ならいいが、予約された
変数の場合は保証されない。
existsならハッシュのキーの有無で判定できる。

テストしてみたが、!existsでちゃんと処理できた。
0435nobodyさん03/07/10 15:30ID:???
>>431
まずはクッキーでもファイルでもセッションでも良いから
何かで記憶させておかないといけないでしょ。
それが出来たらまたおいで。
043642603/07/10 15:50ID:???
>>434 さんの言うことはすごく理解できました。(existsの意味勘違いしてた)
ありがとうございます。

しかし、
if (!exists($in{'site_ja'})) {$HtmlErrorText .= "<li>日本語版サイトを選択してください</li>";}

としても、スルーされてしまいます・・・
どこかケアレスミスしているんだろうか・・・
043743603/07/10 15:52ID:???
すいません、ケアレスミスでした。ごめんなさい。

if($HtmlErrorText) {&HtmlError($HtmlErrorText);}
の一文をいつのまにか消してました・・・

ごめんなさい。
if (!exists($in{'site_ja'})) {$HtmlErrorText .= "<li>日本語版サイトを選択してください</li>";}
でばっちりです。
0438nobodyさん03/07/10 17:04ID:mUbItvZA
すいません。
$v -= int(sqrt($ud)) if($bst =~ /S/);
の意味を分かる範囲で教えて下さい。
因みに、$ud は防御力です。
0439nobodyさん03/07/10 18:11ID:???
$bst =~ /S/ が真(true)だったら、$vからsqrt($ud)を引いたものを新しい$vとする。
0440nobodyさん03/07/10 18:14ID:???
もし$bstにSという文字が入っていたら
防御力の平方根を求め、小数点以下を切り捨てる。
$vからその値を減算したものが$vになる。
0441nobodyさん03/07/10 18:54ID:???
IDとパスワードをフォームに入力してもらったあと、
foo.cgiにとんで、そのあとアクセスをカウントしたあと、
そのIDとパスワードを、
保持したまま、別のlogin.cgiにとびたいんですが、
Location:http://www.xxx.ne.jp/login.cgi?id=$id&pass=$pass
だと、
idとpassがURL欄に丸見えでまずいじゃないですか。

で、別の方法(つまりは、getでなくpostメソッドで)
login.cgiに飛べて、
しかもidとpassを渡せる方法ってありませんか?

自分が考えつくのは、
ソケット通信で、
地道にpostメソッドで渡す方法くらいなんですが・・・。

よろしくお願いします。
0442nobodyさん03/07/10 19:23ID:???
>>441
暗号化
0443nobodyさん03/07/10 19:43ID:???
セッションで管理する
0444nobodyさん03/07/10 20:20ID:???
>441
あなたがやりたい方法は JavaScript で出来ますが、
セッション管理やクッキー等、他の方法を利用した方がいいでしょう。
0445nobodyさん03/07/10 20:38ID:???
>>431
それって乱数といえるのか?
ビンゴのようにするのだったら、必要な数字を配列に入れて乱数で取り出してみるとか。
0446nobodyさん03/07/10 21:39ID:???
>>431
2つが連続してはいけないのなら、前回の数字を覚えておいて、
* 乱数を取り出したときに一致しているか調べて、一致しなくなるまで繰り返し取り出す
* 前回の数字が存在しないと仮定して、一つ少ない大きさまでの乱数を取り出す。それ>=前回ならば、1増やす

>>445のが答えなら、効率を上げるため、数字が入った配列をかき混ぜて(Perlメモ)前から取り出す。

>>441
順番を逆にすれば?
0447nobodyさん03/07/10 22:06ID:???
はじめまして。
フォームから誕生日を入力して、その数字を元に占いをさせようと思っています。
数字によって異なる結果を書いたページに振り分けるために

@message = ("aa","bb","cc", 〜 );

として移動先のURLの一部を記述しておき、

$buf = $ENV{"QUERY_STRING"};
($year,$month,$day) = split(/&/,$buf);
($tmp,$value_year)=split(/=/,$year);
($tmp,$value_month)=split(/=/,$month);
($tmp,$value_day)=split(/=/,$day);

$point = ($value_year+$value_month+$value_day) % $num_of_shop;

として数値計算、その結果から

print "Location: http://www.hogehoge.com/result/\$message[\$point].html\n\n";

として振り分けようとしたところ、「ページを表示できません」になってしまうのですが
どうしてでしょうか?

当然ながら移動先のページ(aa.html等)は正しい位置にアップロードしてあります。
0448nobodyさん03/07/10 22:14ID:???
>>447
そのLocationの値を画面に表示して、正しいURLが生成されているか確認してみよう。
0449nobodyさん03/07/10 22:40ID:???
ツリー型掲示板の管理モードでツリー削除の他に「過去ログ送り」を
作ってみたのだが現行ログからの削除はできても過去ログへの書き込みがうまくいかないのです

@new=();
open(IN,"$log") || &error("Open Error : $log");

$top = <IN> if (!$in{'past'});
while (<IN>) {
     ($no) = split(/<>/);
     if ($in{'no'} != $no) { push(@new,$_); }
     }
     close(IN);
     unshift(@new,$top);
     open(OUT,">$log") || &error("Write Error : $log");
     print OUT @new;
     close(OUT);
     unlink("$logdir$in{'no'}\.cgi");

     open(OUT,">>$pastfile") || &error("Write Error : $pastfile");
     print OUT "$in{'res'}<>$sub<>$res<>\n";
     close(OUT);
045044103/07/10 23:03ID:???
>>443-444
ほんとはセッション管理したいんですけど、
他の部分は全部完成しちゃってるんで、
今さら無理なんですわ・・・(泣)

>>442
会社で>>441のカキコして、帰りの電車で自分も暗号化思いついたんですけど、
暗号化したID/PASS同士で照合するってことですか?

やり方としては、
foo..cgi の中で、
$id = crypt($id) #暗号化
$pass = crypt($pass) #暗号化
Location:http://www.xxx.ne.jp/login.cgi?id=$id&pass=$pass
して、
login.cgi の中で、
サーバに入ってるid と passのデータを暗号化させて、
そいつと、クエリーストリングとしてやってくる、暗号化IDと暗号化PASSを、
照合させると・・・いうことで問題ないですか?
045144703/07/10 23:09ID:???
>>448
http://www.hogehoge.com/cgi-bin/form.cgi?year=03&month=7&day=10
となっています。

URLの中に配列変数の中身を文字列として直接入れているのが
エラーの原因なのでしょうか?
045244803/07/10 23:28ID:???
>>451
いや、そういうことを言いたかったんじゃないんだが……

print "Location: http://www.hogehoge.com/result/\$message[\$point].html\n\n";
これをいきなりヘッダに出力して「ページが表示できない」じゃなくて、
まず画面にそのまま表示して見られる状態で目視して、変数の展開状況などが
正常かどうか調べてみるべきかと。
0453nobodyさん03/07/11 00:25ID:???
キタ━━━━(゚∀゚)━━━━!!
http://cgi32.plala.or.jp/mg916/bbs.cgi
0454nobodyさん03/07/11 00:45ID:???
>>452
print〜の文を画面出力して確認しながら修正を加え、無事動作させることができました。

勘違いが原因だったとは…こんな初歩的トラブルに
親切なご教示ありがとうございました。
045544703/07/11 00:46ID:???
>>454=>>447です
0456nobodyさん03/07/11 01:00ID:???
>>454
大丈夫。Web系の開発で飯食って10年になるけど、エラーの大半は初歩的ミス。
だから、もし人に聞くときはこれでもかというくらい慎重にしなきゃならん。
045744703/07/11 01:46ID:???
>>456
どうもです。

また何かトラブったらお伺いするかもしれません。
そのときはよろしくお願いします。
0458nobodyさん03/07/11 02:28ID:???
ホントだよね。
俺も3時間はまって、もういいや、寝よっと思って布団はいったとたんに気づいたよ。
外のループと内のループのカウンタ変数混同してた。。。。

それもちゃんと動いてたの途中で壊してやんの。

ずーーーとさかのぼっても駄目であきらめて寝よ、と思ったのに、

手許だよ、テモト!!

ぐしゃっ
0459nobodyさん03/07/11 08:27ID:+GXxdBTx
おはよう。
0460あぼーんNGNG
あぼーん
0461nobodyさん03/07/11 13:23ID:XltnJZI3
すいません。
以下のPERLで、敵が普通に反撃する時の
条件はどの様になっているのか、
教えて下さい↓
http://gekiya77.gi-ga.net/cgi/oshiete.txt
見れば分かると思いますが、
$pに1〜6迄のランダムの数字を与え、
それに従い技を出します。
ただ、420行目からある普通の攻撃もして
くる場合があるので、それはどんな条件に
なった時なのか、教えて下さい。
宜しくお願い致します。
0462nobodyさん03/07/11 13:29ID:???
>>461
600行近くあるソースを「見れば分かる」かよ……
それ以前に何を聞きたいのか不明。日本語の勉強をしてから出直してきてくれ。
0463nobodyさん03/07/11 13:30ID:???
>>461
if elsif else がわからないのか?
上から条件式で判定してどれにもあてはまらないときに&bogu_bt;で
# 敵キャラ通常攻撃処理のサブルーチンに飛ぶだけだろ。
046440103/07/11 13:35ID:???
perlじゃできないってこと?
046546103/07/11 13:35ID:XltnJZI3
>>463
分からないから聞いてるんでしょうが。
まあ、とりあえず、どうもでした。
>>462
何を聞きたいのかは充分に書いて
あるでしょうが。
もう、その表現を使えば勝てると
思ってるね、この馬鹿はw
貴方が日本語の勉強をされた方が、
以下略・・・。
046644103/07/11 13:35ID:???
>>450にだれかおこたえプリーズ
0467nobodyさん03/07/11 13:47ID:???
>>465
基本的な文法もわからないようじゃどうにもならんな。
何度か同じような初歩的質問をしているが、もう相手にしない。
ある程度勉強して理解できるようになるまで二度と来るなよ。
0468nobodyさん03/07/11 13:49ID:???
>>464
「プラットフォームに依存しない」 ← 無理
0469nobodyさん03/07/11 13:52ID:???
>>466
完璧な安全性が保たれるとは言えないけど、
実用レベルの強度は得られるんじゃない?
0470nobodyさん03/07/11 14:04ID:???
>>465
まともなコードも書けない時点であんたは負けてんのよ。
0471nobodyさん03/07/11 14:10ID:???
どうしたのこの子>>465
0472nobodyさん03/07/11 14:15ID:???
>465 ??

$ whois gekiya77.jp
[ JPNIC & JPRS database provides information on network administration. Its ]
[ use is restricted to network administration purposes. For further infor- ]
[ mation, use 'whois -h whois.nic.ad.jp help'. To suppress Japanese output, ]
[ add'/e' at the end of command, e.g. 'whois -h whois.nic.ad.jp xxx/e'. ]

Domain Information: [ドメイン情報]
[Domain Name] GEKIYA77.JP

[登録者名] 西園修
[Registrant] Osamu Nishizono

[Name Server] ns.gekiya77.jp
[Name Server] dns.wadax.ne.jp

[登録年月日] 2003/06/23
[有効期限] 2004/06/30
[状態] Active
[最終更新] 2003/06/23 18:34:07 (JST)

Contact Information: [公開連絡窓口]
[名前] ワダックス
[Name] WADAX
[Email] [email protected]
[郵便番号] 556-0005
[住所] 大阪府大阪市浪速区日本橋4-1-4-903
[Postal Address] 4-1-4-903,Nipponbashi,Naniwa Ward,Osaka City,
[電話番号] +81(6)6630-6049
[FAX番号] +81(6)6630-6049
0473nobodyさん03/07/11 14:17ID:???
if文もわからないやつが書いたソースじゃないだろ
拾い物でしょ
047440103/07/11 14:18ID:???
>>468
じゃぁ、依存するものでもいいからどっかに転がってませんか?
047546603/07/11 14:21ID:???
>>469
その安全性の強度ってのは、ctyptの安全性の強度に依存するって意味ですか?
0476nobodyさん03/07/11 14:28ID:???
>>401
CD-ROM読むだけなら、モジュールいらねーぞ。普通にopen使えば?
0477nobodyさん03/07/11 14:31ID:???
>>475
そういうことだね。
■ このスレッドは過去ログ倉庫に格納されています