Perl コーディング初心者質問コーナー Part34
■ このスレッドは過去ログ倉庫に格納されています
0001前スレの連投で気分崩したので後よろ
04/04/05 16:01ID:???【投稿する際の注意】
質問するときは内容をよく吟味してから投稿してください。
「コマンドの意味がわかんない」とかはマニュアル見ましょう。
回答者さんは何でも屋じゃありません。
1: 自分はこう言う事がしたい。
2: それでこんな風にやってみたが・・・
3: こんなエラーが出て上手く行かなかった。
最低でも1と3が無いと誰も答えられないよ。
ソース貼る時は、全角スペースでインデント忘れずに。
良い回答は良い質問から。一緒に勉強しましょう。
過去ログやお勧めサイトは >>2-10
0486nobodyさん
04/05/02 22:05ID:???or
chomp(@data);
0487485
04/05/02 22:21ID:???なるほど、$"でスカラー変数出力時の区切り文字を変更できるんですね。
試してみたら奇麗に出力出来ました。本当にありがとうございました。。。
0488485
04/05/02 22:24ID:???今まで一々ヒアドキュメントを終了させてからforeachで出力していたので本当に助かりました。。。
0489nobodyさん
04/05/03 00:22ID:???0491nobodyさん
04/05/03 01:11ID:???_ /- イ、_
__ /: : : : : : : : : : : (
〈〈〈〈 ヽ /: : : : ::;:;: ;: ;:;: ; : : : ::ゝ
〈⊃ } {:: : : :ノ --‐' 、_\: : ::}
∩___∩ | | {:: : :ノ ,_;:;:;ノ、 ェェ ヾ: :::}
| ノ ヽ ! ! 、 l: :ノ /二―-、 |: ::ノ
/ ● ● | / ,,・_ | // |/ /::ノ
| ( _●_) ミ/ , ’,∴ ・ ¨ 〉(_二─-┘{/
彡、 |∪| / 、・∵ ’ /、//|  ̄ ̄ヽ
/ __ ヽノ / / // |//\ 〉
(___) / / // /\ /
/ / /
↑初心者 Perlオタク↑
\ ∩─ー、 ====
\/ ● 、_ `ヽ ======
/ \( ● ● |つ
| X_入__ノ ミ Perlオタクを!首吊って引き殺せ━━━━━!!
、 (_/ ノ /⌒l
/\___ノ゙_/ / =====
〈 __ノ ====
\ \_ \
\___) \ ====== (´⌒
\ ___ \__ (´⌒;;(´⌒;;
\___)___)(´;;⌒ (´⌒;; ズザザザ
ここは不親切な奴ばかりで死んでほしいね!初心者質問は禁止!!質問した者は
荒らしと同罪!!!<終終終 了了了><書き込み禁止>
0492nobodyさん
04/05/03 01:12ID:???_ /- イ、_
__ /: : : : : : : : : : : (
〈〈〈〈 ヽ /: : : : ::;:;: ;: ;:;: ; : : : ::ゝ
〈⊃ } {:: : : :ノ --‐' 、_\: : ::}
∩___∩ | | {:: : :ノ ,_;:;:;ノ、 ェェ ヾ: :::}
| ノ ヽ ! ! 、 l: :ノ /二―-、 |: ::ノ
/ ● ● | / ,,・_ | // |/ /::ノ
| ( _●_) ミ/ , ’,∴ ・ ¨ 〉(_二─-┘{/
彡、 |∪| / 、・∵ ’ /、//|  ̄ ̄ヽ
/ __ ヽノ / / // |//\ 〉
(___) / / // /\ /
/ / /
↑初心者 Perlオタク↑
\ ∩─ー、 ====
\/ ● 、_ `ヽ ======
/ \( ● ● |つ
| X_入__ノ ミ Perlオタクを!首吊って引き殺せ━━━━━!!
、 (_/ ノ /⌒l
/\___ノ゙_/ / =====
〈 __ノ ====
\ \_ \
\___) \ ====== (´⌒
\ ___ \__ (´⌒;;(´⌒;;
\___)___)(´;;⌒ (´⌒;; ズザザザ
ここは不親切な奴ばかりで死んでほしいね!初心者質問は禁止!!質問した者は
荒らしと同罪!!!<終終終 了了了><書き込み禁止>
0493nobodyさん
04/05/03 01:14ID:???_ /- イ、_
__ /: : : : : : : : : : : (
〈〈〈〈 ヽ /: : : : ::;:;: ;: ;:;: ; : : : ::ゝ
〈⊃ } {:: : : :ノ --‐' 、_\: : ::}
∩___∩ | | {:: : :ノ ,_;:;:;ノ、 ェェ ヾ: :::}
| ノ ヽ ! ! 、 l: :ノ /二―-、 |: ::ノ
/ ● ● | / ,,・_ | // |/ /::ノ
| ( _●_) ミ/ , ’,∴ ・ ¨ 〉(_二─-┘{/
彡、 |∪| / 、・∵ ’ /、//|  ̄ ̄ヽ
/ __ ヽノ / / // |//\ 〉
(___) / / // /\ /
/ / /
↑初心者 Perlオタク↑
\ ∩─ー、 ====
\/ ● 、_ `ヽ ======
/ \( ● ● |つ
| X_入__ノ ミ Perlオタクを!首吊って引き殺せ━━━━━!!
、 (_/ ノ /⌒l
/\___ノ゙_/ / =====
〈 __ノ ====
\ \_ \
\___) \ ====== (´⌒
\ ___ \__ (´⌒;;(´⌒;;
\___)___)(´;;⌒ (´⌒;; ズザザザ
ここは不親切な奴ばかりで死んでほしいね!初心者質問は禁止!!質問した者は
荒らしと同罪!!!<終終終 了了了><書き込み禁止>
0494nobodyさん
04/05/03 01:14ID:???_ /- イ、_
__ /: : : : : : : : : : : (
〈〈〈〈 ヽ /: : : : ::;:;: ;: ;:;: ; : : : ::ゝ
〈⊃ } {:: : : :ノ --‐' 、_\: : ::}
∩___∩ | | {:: : :ノ ,_;:;:;ノ、 ェェ ヾ: :::}
| ノ ヽ ! ! 、 l: :ノ /二―-、 |: ::ノ
/ ● ● | / ,,・_ | // |/ /::ノ
| ( _●_) ミ/ , ’,∴ ・ ¨ 〉(_二─-┘{/
彡、 |∪| / 、・∵ ’ /、//|  ̄ ̄ヽ
/ __ ヽノ / / // |//\ 〉
(___) / / // /\ /
/ / /
↑初心者 Perlオタク↑
\ ∩─ー、 ====
\/ ● 、_ `ヽ ======
/ \( ● ● |つ
| X_入__ノ ミ Perlオタクを!首吊って引き殺せ━━━━━!!
、 (_/ ノ /⌒l
/\___ノ゙_/ / =====
〈 __ノ ====
\ \_ \
\___) \ ====== (´⌒
\ ___ \__ (´⌒;;(´⌒;;
\___)___)(´;;⌒ (´⌒;; ズザザザ
ここは不親切な奴ばかりで死んでほしいね!初心者質問は禁止!!質問した者は
荒らしと同罪!!!<終終終 了了了><書き込み禁止>
0495nobodyさん
04/05/03 01:15ID:???_ /- イ、_
__ /: : : : : : : : : : : (
〈〈〈〈 ヽ /: : : : ::;:;: ;: ;:;: ; : : : ::ゝ
〈⊃ } {:: : : :ノ --‐' 、_\: : ::}
∩___∩ | | {:: : :ノ ,_;:;:;ノ、 ェェ ヾ: :::}
| ノ ヽ ! ! 、 l: :ノ /二―-、 |: ::ノ
/ ● ● | / ,,・_ | /=^ |/ /::ャm
| =@ ( _●_) ミ/ , ’,∴ ・ ¨ 〉(_二─-┘{/
彡、 |∪| / 、・∵ ’ /、//|  ̄ ̄ヽ
/ __ ヽノ / / // |//\ 〉
(___) / / // /\ /
/ / /
↑初心者 Perlオタク↑
\ ∩─ー、 ====
\/ ● 、_ `ヽ ======
/ \( ● ● |つ
| X_入__ノ ミ Perlオタクを!首吊って引き殺せ━━━━━!!
、 (_/ ノ /⌒l
/\___ノ゙_/ / =====
〈 __ノ ====
\ \_ \
\___) \ ====== (´⌒
\ ___ \__ (´⌒;;(´⌒;;
\___)___)(´;;⌒ (´⌒;; ズザザザ
ここは不親切な奴ばかりで死んでほしいね!初心者質問は禁止!!質問した者は
荒らしと同罪!!!<終終終 了了了><書き込み禁止>
0496nobodyさん
04/05/03 03:58ID:???0497nobodyさん
04/05/03 04:33ID:???0498nobodyさん
04/05/03 04:41ID:???0499nobodyさん
04/05/03 04:48ID:???て言うかこいつ一年くらい前からいるんですよ。
0500nobodyさん
04/05/03 05:18ID:???0501nobodyさん
04/05/03 05:29ID:???確か誰にも理解できない日本語で質問(っていうか書き込み)して、
無視した(っていうか何を答えたらよいか誰も分からなかった)ら、
「初心者には不親切だ」って勝手に切れて粘着してる。
ちゃんと質問すればちゃんと答えるのにねえ。
0502nobodyさん
04/05/03 12:58ID:???よく続くと関心するくらいだ
たしか格ゲースクリプトだっけな
0503nobodyさん
04/05/03 13:22ID:???punch *= 2.0/5.0;
終了
0504nobodyさん
04/05/03 14:42ID:???0505nobodyさん
04/05/03 14:45ID:???0506nobodyさん
04/05/03 20:26ID:???来てたのわからなかった。
0508nobodyさん
04/05/04 12:04ID:???たまにアク禁されるのかパタリと来なくなるんだよね。
でもそういう時、あいつどうしてるんだろう・・・とちょっとモヤモヤして気になるんだよ。
0509nobodyさん
04/05/04 16:43ID:???0510nobodyさん
04/05/04 18:59ID:???エラー表示されるまでに時間がかかります。
(ブラウザがアップロードに専念しているため)
つまりはブラウザのアップロード処理を中断させて、
即エラー表示させたいのですが、Perlで制御できますか?
0512nobodyさん
04/05/04 19:33ID:???ISDNのおじさんブチ切れますよ?
初めからファイル容量計算しろ
0513nobodyさん
04/05/04 19:49ID:???0514nobodyさん
04/05/04 19:55ID:???_ /- イ、_
__ /: : : : : : : : : : : (
〈〈〈〈 ヽ /: : : : ::;:;: ;: ;:;: ; : : : ::ゝ
〈⊃ } {:: : : :ノ --‐' 、_\: : ::}
∩___∩ | | {:: : :ノ ,_;:;:;ノ、 ェェ ヾ: :::}
| ノ ヽ ! ! 、 l: :ノ /二―-、 |: ::ノ
/ ● ● | / ,,・_ | // |/ /::ノ
| ( _●_) ミ/ , ’,∴ ・ ¨ 〉(_二─-┘{/
彡、 |∪| / 、・∵ ’ /、//|  ̄ ̄ヽ
/ __ ヽノ / / // |//\ 〉
(___) / / // /\ /
/ / /
↑初心者 Perlオタク↑
\ ∩─ー、 ====
\/ ● 、_ `ヽ ======
/ \( ● ● |つ
| X_入__ノ ミ Perlオタクを!首吊って引き殺せ━━━━━!!
、 (_/ ノ /⌒l
/\___ノ゙_/ / =====
〈 __ノ ====
\ \_ \
\___) \ ====== (´⌒
\ ___ \__ (´⌒;;(´⌒;;
\___)___)(´;;⌒ (´⌒;; ズザザザ
ここは不親切な奴ばかりで死んでほしいね!初心者質問は禁止!!質問した者は
荒らしと同罪!!!<終終終 了了了><書き込み禁止>
0515nobodyさん
04/05/04 19:56ID:???_ /- イ、_
__ /: : : : : : : : : : : (
〈〈〈〈 ヽ /: : : : ::;:;: ;: ;:;: ; : : : ::ゝ
〈⊃ } {:: : : :ノ --‐' 、_\: : ::}
∩___∩ | | {:: : :ノ ,_;:;:;ノ、 ェェ ヾ: :::}
| ノ ヽ ! ! 、 l: :ノ /二―-、 |: ::ノ
/ ● ● | / ,,・_ | // |/ /::ノ
| ( _●_) ミ/ , ’,∴ ・ ¨ 〉(_二─-┘{/
彡、 |∪| / 、・∵ ’ /、//|  ̄ ̄ヽ
/ __ ヽノ / / // |//\ 〉
(___) / / // /\ /
/ / /
↑初心者 Perlオタク↑
\ ∩─ー、 ====
\/ ● 、_ `ヽ ======
/ \( ● ● |つ
| X_入__ノ ミ Perlオタクを!首吊って引き殺せ━━━━━!!
、 (_/ ノ /⌒l
/\___ノ゙_/ / =====
〈 __ノ ====
\ \_ \
\___) \ ====== (´⌒
\ ___ \__ (´⌒;;(´⌒;;
\___)___)(´;;⌒ (´⌒;; ズザザザ
ここは不親切な奴ばかりで死んでほしいね!初心者質問は禁止!!質問した者は
荒らしと同罪!!!<終終終 了了了><書き込み禁止>
0516nobodyさん
04/05/04 19:57ID:???_ /- イ、_
__ /: : : : : : : : : : : (
〈〈〈〈 ヽ /: : : : ::;:;: ;: ;:;: ; : : : ::ゝ
〈⊃ } {:: : : :ノ --‐' 、_\: : ::}
∩___∩ | | {:: : :ノ ,_;:;:;ノ、 ェェ ヾ: :::}
| ノ ヽ ! ! 、 l: :ノ /二―-、 |: ::ノ
/ ● ● | / ,,・_ | // |/ /::ノ
| ( _●_) ミ/ , ’,∴ ・ ¨ 〉(_二─-┘{/
彡、 |∪| / 、・∵ ’ /、//|  ̄ ̄ヽ
/ __ ヽノ / / // |//\ 〉
(___) / / // /\ /
/ / /
↑初心者 Perlオタク↑
\ ∩─ー、 ====
\/ ● 、_ `ヽ ======
/ \( ● ● |つ
| X_入__ノ ミ Perlオタクを!首吊って引き殺せ━━━━━!!
、 (_/ ノ /⌒l
/\___ノ゙_/ / =====
〈 __ノ ====
\ \_ \
\___) \ ====== (´⌒
\ ___ \__ (´⌒;;(´⌒;;
\___)___)(´;;⌒ (´⌒;; ズザザザ
ここは不親切な奴ばかりで死んでほしいね!初心者質問は禁止!!質問した者は
荒らしと同罪!!!<終終終 了了了><書き込み禁止>
0517nobodyさん
04/05/04 19:58ID:???/::::::::::::::::::::::::::::::::゙:、
. /:::::::::::::::::::,r-:::::::::::::::::゙::、
.. ,l':::::::::::::::::::/-〃゙゙''''''゙\:::::::゙、
l:::::::::::::::::::,l' ll'l ゙l;:::::::l,
,;:::::::::::::::::::l .ll.l.. l:::::::::l
,ィ:::::::::::::,r-- '''''--=-'l''=-''り::::l
〃::::::::::::::l' ゙ - ' ;. l゙ - ' l::::::l ここのスレには…
ソ::::::::::::::::l , ア__,.l,.('' .t:::::j'
. l::rk:::::::::::::゙l ,..'゙-、=-:,.゙ t ゙レ 書き込まないで…ほしいです…
ゝj:::::::,、::::::゙、 ; -==ヲ'弋''''{ ゙l,
,.-'::;==' ノ::::::::>'~::::゙=、_,l,.;'゙^'''゙l. ゙、
....,.='' ,,〃'ヘ:::/:::::::::::::::::゙l爪. l,
,.r'',:,:,:,:,:,^~",:,:,:,:,:,:,:7'''',=';,''''ヘ:ノ爻゙、 ,.=''-、
k,:,\、,:,:,:,:,:,:,:,:,:,l,:,:,:,:/ (ふ勺 ,''l' j::l ゙l,-='',:,:,:,:,:,:゙、
,l',:,:,:,:゙、,:,:,:,:,:,:,:,:l,:,:,:,:l---===,,'.j^~:::l ,-゙,:,:,:,:,:,:,:,:,:,:,゙、
/,:,:,:,:,:,:,゙、,:,:,:,:,:,:j,:,:,:,:,:l l':::::゙ュ), l.,' ;::;,/,:,:,:,:,:,:,:,:,:,:,:,:,:,:,ヘ
j,:,:,:,:,:,:,:,:,:,゙、,:,:,:,:,l,:,:,:,:,:,k:::::::ヒ_l .;:::ll,:,:,:,:,:,:,l,:,:,:,:,:,:,:,:,:,:,ハ
,l,:,:,:,:,:,:,:,:,:,:,:,z,:,:,:,l,:,.,. '^.、::_:j':::::::::::::::::::l,:,:,:,:,:,:,:\,:,:,:,:,:,:,:,:,:,:,\
0518512
04/05/04 19:58ID:???おじさんマジ切れますよ?I/Oの関数みろYO!!!
@stat=stat $file;
$size=$stat[7];
if(104857600<=$size) print "100MBより多いぞゴルァ";
0519nobodyさん
04/05/04 19:59ID:???....:::..∧Y∧ .
.::::::::. ・ ・ ::ヽ
( )●( ) 初心者書き込み禁止!!
丶 ー / BY PERLオタク
l, j
i i .j
| 八 |
{ }
| i し " i '|
|ノ ( i i|
( '~ヽ ! ‖
│ i ‖
| ! ||
| │ |
| | | |
| | | |
| ! | |
0520nobodyさん
04/05/04 20:01ID:???....:::..∧Y∧ .
.::::::::. ・ ・ ::ヽ
( )●( ) 初心者書き込み禁止!!
丶 ー / BY PERLオタク
l, j
i i .j
| 八 |
{ }
| i し " i '|
|ノ ( i i|
( '~ヽ ! ‖
│ i ‖
| ! ||
| │ |
| | | |
| | | |
| ! | |
0521nobodyさん
04/05/04 20:02ID:???....:::..∧Y∧ .
.::::::::. ・ ・ ::ヽ
( )●( ) 初心者書き込み禁止!!
丶 ー / BY PERLオタク
l, j
i i .j
| 八 |
{ }
| i し " i '|
|ノ ( i i|
( '~ヽ ! ‖
│ i ‖
| ! ||
| │ |
| | | |
| | | |
| ! | |
0522nobodyさん
04/05/04 20:02ID:???....:::..∧Y∧ .
.::::::::. ・ ・ ::ヽ
( )●( ) 初心者書き込み禁止!!
丶 ー / BY PERLオタク
l, j
i i .j
| 八 |
{ }
| i し " i '|
|ノ ( i i|
( '~ヽ ! ‖
│ i ‖
| ! ||
| │ |
| | | |
| | | |
| ! | |
0523nobodyさん
04/05/04 20:03ID:???....:::..∧Y∧ .
.::::::::. ・ ・ ::ヽ
( )●( ) 初心者書き込み禁止!!
丶 ー / BY PERLオタク
l, j
i i .j
| 八 |
{ }
| i し " i '|
|ノ ( i i|
( '~ヽ ! ‖
│ i ‖
| ! ||
| │ |
| | | |
| | | |
| ! | |
0524nobodyさん
04/05/04 20:05ID:???ゲームで、対戦で、攻撃はパンチとキック、どちらかは2分の1
パンチの場合は、5回に1回はダメージ低い。
さらに5分の2の確率でミスをする。
というのを、1ターンの各攻撃を下のスクリプトに書いたが動かない
誰かこの初心者を助けてください
0525ちょっと入れ子して綺麗にしてみた
04/05/04 20:11ID:???プレイヤー1は$play11の攻撃
プレイヤー2は$play22の攻撃
$play11 = $sentaku1 //Syntax Error
$play22 = $sentaku1 //Syntax Error
$kik = 60 //Syntax Error
$sentaku ={ //Syntax Error
$play1 = int(rand 2) //Syntax Error
if($play1 == 0) $kik //Syntax Error $kikって何だよオブジェクトか?で、メソッドは?
} //Syntax Error
else($play1 == 1) { //Syntax Error Elseに条件つけんなよw
$bougyo = int(rand 5) //Syntax Error だからセミコロン・・・
if($bougyo =< 1) 0;
else($bougyo >= 2) 1;
}
{ //Syntax Error エエエエ・・・・ なにこの括弧
$panti = int(rand 5);
if($panti == 0) $panti1 = 10;
else($panti > 0) $panti2 = 20;
} //Syntax Error 括弧・・・
* $bougyo; //Syntax Error おい、オペランド足りんぞ
} //Syntax Error 括弧・・・
} //Syntax Error 括弧・・・
括弧の対応おかしいーーwww
0526510
04/05/04 20:12ID:???念のためにファイル化した後もサイズチェック。
なにかしら処理途中でレスポンスヘッダを送信できれば、
アップロードに専念しているブラウザも止められるかなぁ?
・・・と、考えつつも案が浮かばず放置している状態なのです。
0527nobodyさん
04/05/04 20:13ID:???>念のためにファイル化した後もサイズチェック。
だから、その行為がクライアントから見ると「アップロード」になるわけで・・・
CONTENT_LENGTHで判断するだけでいいだろ
0528nobodyさん
04/05/04 21:35ID:???http://httpd.apache.org/docs/mod/core.html#limitrequestbody
Apacheであれば、規定量を超えたら413(Request Entity Too Large)が
返るように設定できるけど、クライアントを止められるかどうかは不明。
同様の処理はmod_perlであればヘッダ解析フェーズで可能かも。
CGIレベルでは無いことは確か。
0529nobodyさん
04/05/04 21:56ID:???(´-`).。oO(なんで鯖までいじらにゃならんのよ・・・)
0530510
04/05/04 22:00ID:???残念だけど諦めます。
> CONTENT_LENGTHで判断するだけでいいだろ
申し訳ない。今のロジックをみたらCONTENT_LENGTHのチェックと、
STDINからデータ取得時のチェックの二段階だけだった。
0531nobodyさん
04/05/04 22:02ID:???my @attack = (
sub {
my($damage, $rate) = (100, 10);
$damage *= 1 + ((1 / 2 <=> rand) * rand $rate) / 100;
$damage *= 1 / 3 unless int rand 5;
$damage = 0 if 2 > rand 5;
'パンチ', int $damage;
},
sub {
my($damage, $rate) = (200, 10);
$damage *= 1 + ((1 / 2 <=> rand) * rand $rate) / 100;
'キック', int $damage;
}
);
for (1..20) {
print $attack[rand 2]->(), "\n";
}
0532nobodyさん
04/05/05 13:19ID:???閉じたとき」にCookieをクリアするためにはexpiresを空に、
有効期限を決めるにはexpiresを設定すればいいだけのこと
ですが、この2種を同居させることは不可能でしょうか。
つまりやりたいことは、「有効期限を設定しておいても、ブラウザ
が閉じられればCookieはクリアされる」ということです。
うまくいかないので質問させていただきました。
宜しくお願い致します。
0536 ◆Emx7X7JtuI
04/05/05 21:16ID:jTThsR/v$day = "20040505";
の時、$dayから 2004、05、05を分けて取り出すには、
$yyyy = substr($day, 0, 4);
$mm = substr($day, 4, 2);
$dd = substr($day, 6, 2);
とするしかないでしょうか?
もう少し良い方法がありましたらご教授お願いします。
0538nobodyさん
04/05/05 21:40ID:???TMTOWTDI.
# substr
my($yyyy, $mm, $dd) = (substr($day, 0, 4), substr($day, 4, 2), substr($day, 6, 2));
# unpack
my($yyyy, $mm, $dd) = unpack 'A4A2A2', $day;
# パターンマッチ
my($yyyy, $mm, $dd) = $day =~ /^(\d{4})(\d\d)(\d\d)/;
# 回りくどい方法
my @tmp = split //, $day;
my $yyyy = join '', splice @tmp, 0, 4;
my $mm = join '', splice @tmp, 0, 2;
my $dd = join '', @tmp;
0539nobodyさん
04/05/05 21:45ID:???ありがとうございます!
umpackという手がありましたね。
これでいこうと思います。
>>538
>#バターンマッチ
この書き方がよく分かってないんですよ<私
サンプルソースを写して、何となくうまくいってるって感じで(汗)
がんばって勉強します!
0541540 ◆Emx7X7JtuI
04/05/05 21:50ID:???0542nobodyさん
04/05/05 22:22ID:???.htaccessのファイルの内容を、指定したサーバーの順番に、Socketでデータと一緒にPOSTして、受け取ったCGIでそれを元の.htaccessと書き換えるという流れで逝きたいんですが、
一つのデータ送信+ファイル更新用の親CGIと、受信+ファイル更新用の子CGIという仕組みです。
私はPerl初心者で、今までソケットについては一切書いてないので知識が無いので、
最近ネットでPerlのSocket.pmについて調べてるんですが、どうもソケットについて詳しく解説してるサイトが無くて困ってます。
何方かSocketについての解説サイトをご教授してください。
0543nobodyさん
04/05/05 22:26ID:???0544nobodyさん
04/05/05 22:26ID:???0545542
04/05/05 22:29ID:???私自身、10つのサーバーで複数のコンテンツを公開してるので。。。
アップロードファイルがこんがらがってるのでこういうCGIを実装したいのです。
0546nobodyさん
04/05/05 22:33ID:???0547nobodyさん
04/05/05 22:34ID:???0548nobodyさん
04/05/05 22:35ID:???0550nobodyさん
04/05/05 22:37ID:???この板だけじゃないけどすんなり書き込めななくなったな。
0551nobodyさん
04/05/05 22:49ID:???http://www.accesstrade.net/at/c.html?rk=010003h3000dcb
http://www.accesstrade.net/at/r.html?rk=010008la000dcb
0552nobodyさん
04/05/05 23:24ID:???Socket.pmが使えるということは、標準モジュールが使えるのだから、
IO::Socket::INETを使えばハンドル操作だけで楽になるよ。
さらにLWPモジュール群を使えば、ハンドル操作さえ不要に。
0553nobodyさん
04/05/06 02:57ID:???前のレベルに戻すまで1ヶ月はかかるからよ
∧_∧
∧_∧ (´<_` ) 今ちょうど
( ´_ゝ`) / ⌒i 人生最大の危機に
/ \ | | 直面しているな
/ / ̄ ̄ ̄ ̄/ |
__(__ニつ/ FMV / .| .|____
\/____/ (u ⊃
0554nobodyさん
04/05/06 17:07ID:???0555nobodyさん
04/05/06 18:11ID:???0556nobodyさん
04/05/06 21:28ID:???---- xml2.xml ----------------------------------------
<?xml version="1.0" encoding="Shift_JIS"?>
<data>
<shop num="01">
<name val="a">AAAshop1</name>
<name val="b">AAAshop2</name>
<tel>012-345-6789</tel>
</shop>
<shop num="02">
<name>BBBshop</name>
<tel>098-765-4321</tel>
</shop>
</data>
------------------------------------------------------
0557続き
04/05/06 21:29ID:???------------------------------------------------------
#!/usr/local/bin/perl
use XML::DOM;
$xmlfile = "./xml2.xml";
my $parser = new XML::DOM::Parser;
my $doc = $parser->parsefile ("$xmlfile");
my $nodes = $doc->getElementsByTagName ("shop");
my $n = $nodes->getLength;
for (my $i = 0; $i < $n; $i++){
my $node = $nodes->item($i);
my $attr = $node->getAttribute("num");
print $attr."-attr\n";
my $child = $node->getElementsByTagName("name");
my $nn = $child->item(0);
my $val = $nn->getAttribute("val");
print $val."-val\n";
my @child_val = $node->getElementsByTagName("name");
my $child_val = $child_val[0];
print $child_val."-child_val\n";#●
}
------------------------------------------------------
0558続き2
04/05/06 21:29ID:???01-attr
a-val
XML::DOM::Element=ARRAY(0x843e234)-child_val
02-attr
-val
XML::DOM::Element=ARRAY(0x84406fc)-child_val
------------------------------------------------------
このような表示になります。
●の部分が「XML::DOM::Element=ARRAY(0x843e234)-child_val」こうなってしまいますが
「AAAshop1」や「AAAshop2」「BBBshop」を取得するにはどうすれば良いのでしょうか?
0559nobodyさん
04/05/06 21:41ID:???今までテキストか、リストによるものだけだったんですが
今回、チェックボックスを使いたいんですが、
どのようにperl側に情報が送られてくるのでしょうか・・・。
0565nobodyさん
04/05/06 23:47ID:21UK75Lzmy @child_val = $node->getElementsByTagName("name");
my $child_val = $child_val[0];
の部分を
my $child_val = $nn->getFirstChild->getData;
0566556-558
04/05/07 10:22ID:???全文は自分で書いてませんが
ttp://member.nifty.ne.jp/hippo2000/perltips/xml/dom.htm
を参考に部分部分を変えて書きました。
>>565
ありがとうございます!ばっちり表示できました。
おかげ様でやっと次の段階に進めそうです。
0567nobodyさん
04/05/07 12:50ID:p3Wu+afh$honbun =~ s/$FORM{'text'}/<font style=\"background:#00ffff\">$FORM{'text'}<\/font>/g;
print "本文=$honbun";
というプログラムで本文を置換したいんですけどフォームからaaaなどを入力してもエラーにはならないけど
コーヒーと入力するとエラーになってしまいます。
どうしたらコーヒーと入力してもエラーがでないんでしょうか?
0570nobodyさん
04/05/07 15:03ID:???$honbun = 'aaabbbcccdddeeefffコーヒー';
$keyword = 'コーヒー';
$keyword =~ s/([\+\*\.\?\^\$\[\-\]\|\(\)\\])/\\$1/g;
$honbun =~ s/($keyword)/<b>$1<\/b>/g;
print "本文=$honbun";
0571nobodyさん
04/05/07 15:35ID:???これをHTML上に表示するにはどのようにすればよいのでしょうか?
現在は$files[1]〜$files[15]というように1個1個記述してます。
何か良い方法があればアドバイスいただければと思います。
0573nobodyさん
04/05/07 15:44ID:???0574571
04/05/07 15:55ID:???ありがとん
foreach $key (@files) { print "<a href=\"$key\">$key</a><br>\n";}
ってやったら出来た
サンクスコ
0575nobodyさん
04/05/07 16:45ID:???0576nobodyさん
04/05/07 20:24ID:zsY2eiyt一人複数投票をなるべく避けるようにしたいのですが、こういう
場合、どのような工夫があるでしょうか?
とりあえず同一アドレスははじきます。リスクはありますが、
プロバイダの同一サクセスポイントもはじこうと思っています。
他にどういう手があるでしょうか?もちろん100%防ぐのは
無理だと思いますし、そんな厳密なアンケートでもない
(どっちかというと遊びっぽい)ので、少しでも役立つ
方法をご存知でしたら、教えてください。
よろしくお願いします。
0577nobodyさん
04/05/07 20:26ID:???> プロバイダの同一サクセスポイントもはじこうと思っています。
ネタだろ?
0578nobodyさん
04/05/07 20:33ID:???個数をカウントするにはどうすればいいですか・・?
0579nobodyさん
04/05/07 20:35ID:???0582nobodyさん
04/05/07 21:12ID:???0583576
04/05/07 21:46ID:???>>581
あ、クッキーという手がありましたね。消して再投票する人もありえるでしょうが、
一定の効果はありそうですね。ありがとうございます。
0584nobodyさん
04/05/07 22:57ID:???@array にたとえば「あ」「い」「う」が入っているとして、
それを$aiuにマッチすればそのまま、マッチしなければそのループを抜ける
という表記なつもりなのですが、結果がうまくいきません。
foreach $i (@array){
if ($aiu =~ /^([\x00-\x7F]|[\x8E\xA1-\xFE][\xA1-\xFE]|\x8F[\xA1-\xFE]{2})*$i/i) { ; }
else { next; }
}
どのようにかきかえればいいでしょうか?
0585nobodyさん
04/05/07 23:13ID:???foreach my $str (@array){
$str = quotemeta $str;
if( !$aiu =~ /$str/){
last; # ループを抜けるのはlastです
}
}
こんなもんでどうなんでしょう? 正規表現はそんなにややこしくする必要ありですか?
0586nobodyさん
04/05/07 23:39ID:???まずそれは EUC-JP とうまく付き合いたがっているコードなわけだけど
@array と $aiu はきちんと EUC-JP ですか?
■ このスレッドは過去ログ倉庫に格納されています