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

【Perl】初心者コーナー Part14

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん02/07/18 16:34ID:jemWJhH3
いらっしゃーい、Perlの「コーディング」で困ってる人のスレです。

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

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

CGIだけど、なんか質問ある? Part 6 (その2)
http://pc.2ch.net/test/read.cgi/php/1025930486/
参考書籍の話題は【【Perl,CGI】参考書籍 第2版】
http://pc.2ch.net/test/read.cgi/php/988809842/
その他の雑多な話題は、【CGIに依存しないPerlの話題一般】
http://pc.2ch.net/test/read.cgi/php/991313362/
スクリプトの改造依頼は 【スクリプト改造工房 Part4】
http://pc.2ch.net/test/read.cgi/php/1012839651/

過去ログ、その他の役立ち情報は>>2-10あたりを見よう。
0002nobodyさん02/07/18 16:34ID:jemWJhH3
[過去ログ]
Part1 http://tako.2ch.net/test/read.cgi?bbs=perl&key=957208980 参照不能
 DAT: http://tako.2ch.net/perl/dat/957208980.dat
Part2 http://tako.2ch.net/test/read.cgi?bbs=perl&key=971817087 参照不能
 DAT: http://tako.2ch.net/perl/dat/971817087.dat
Part3 http://tako.2ch.net/test/read.cgi?bbs=perl&key=979894521 参照不能
 DAT: http://tako.2ch.net/perl/dat/979894521.dat
Part4 http://tako.2ch.net/test/read.cgi?bbs=perl&key=984430156 参照不能
 DAT: http://tako.2ch.net/perl/dat/979894521.dat
Part5 http://pc.2ch.net/php/kako/988/988728069.html
Part6 http://pc.2ch.net/php/kako/996/996075607.html
Part7 http://pc.2ch.net/php/kako/1000/10002/1000267444.html
Part8 http://pc.2ch.net/php/kako/1003/10039/1003900311.html
Part9 http://pc.2ch.net/php/kako/1009/10095/1009549309.html
Part10 http://pc.2ch.net/php/kako/1014/10145/1014556702.html
Part11 http://pc.2ch.net/php/kako/1017/10172/1017201229.html
Part12 http://pc.2ch.net/test/read.cgi/php/1019917048/
Part13 http://pc.2ch.net/test/read.cgi/php/1022731565/

[ひまぢん氏のミラー]
Part1 http://www.angelfire.com/ak5/2ch-web-program/kako/957208980.html
Part2 http://www.angelfire.com/ak5/2ch-web-program/kako/971817087.html
Part3 http://www.angelfire.com/ak5/2ch-web-program/kako/979894521.html
Part4 http://www.angelfire.com/ak5/2ch-web-program/kako/984430156.html
Part5 http://www.angelfire.com/ak5/2ch-web-program/kako/988728069.html

0003nobodyさん02/07/18 16:34ID:jemWJhH3
[総合]
 ・Perl Com: http://www.perl.com/pub/
 ・CPAN.com: http://search.cpan.org/
 ・ActivePerl: http://www.activestate.com/
 ・CGI-ML:http://forest.ne.jp/cgi-ml/

[お薦め]
 ・Perlメモ: http://www.din.or.jp/~ohzaki/perl.htm ★読んどけ
 ・Perl Recipes: http://www.effectiveperl.com/recipes/
 ・Randal's WebTechniques columns: http://www.stonehenge.com/merlyn/WebTechniques/
 ・Perlの部屋: http://www.cc.rim.or.jp/~midorin/mad-p/perl/index.html
 ・Perl初心者の部屋:http://www.harukaze.net/~mishima/perl/
 ・Perlリファレンス:http://www.big.or.jp/~mio/ga/pl/plref/pl_ref.htm
 ・Perlのページ:http://homepage1.nifty.com/nomenclator/perl/
0004nobodyさん02/07/18 16:35ID:jemWJhH3
[Document&Tutorial]
 ・Perl News: http://www.news.perl.org/
 ・Perl Monks: http://www.perlmonks.org/
 ・use Perl; : http://use.perl.org/
 ・Learn Perl - Perl Education: http://www.devdaily.com/perl/edu/index.shtml
 ・Perldoc.com: http://www.perldoc.com/
 ・Using Perl5 in Web: http://docs.rinet.ru/Using_Perl5_in_Web/
 ・Rex Swain's Home Page: http://www.rexswain.com/
 ・Robert's Perl Tutorial: http://www.netcat.co.uk/rob/perl/win32perltut.html
 ・Perl Tuts: http://savage.net.au/Perl-tutorials.html
 ・Beginning Perl Tutorials: http://www.pageresource.com/cgirec/index2.htm
 ・jcode.pl の私的な解説書: http://www.mikeneko.ne.jp/~lab/kcode/jcode.html
 ・Logical Choice Software, Home Page: http://www.logsoft.com/perltips/
 ・Perlfect Solutions: http://perlfect.com/
 ・The Perl Archive : http://www.perlarchive.com/
 ・Perl6 & Parrot VM についての情報: http://dev.perl.org/perl6/
 ・use Object; : http://perl.infoware.ne.jp/

[Module]
 ・Perl Module Reference: http://www.bekknet.ad.jp/~bero/docj/module_/
 ・PPMPackages: http://www.activestate.com/PPMPackages/
 ・河馬屋二千年堂's Page: http://member.nifty.ne.jp/hippo2000/index.htm

[Security]
 ・安全なプログラミングのためのガイドライン:http://www.FreeBSD.org/ja/security/#spg
 ・Perl security:http://www.perldoc.com/perl5.6/pod/perlsec.html
 ・Perl security和訳:http://www.kt.rim.or.jp/%7ekbk/perl5.005/perlsec.html
 ・CGI and Security http://www.ansi.co.jp/tech/cgi/security/
 ・The Unofficial Web Hack FAQ:http://www.nmrc.org/faqs/www/
 ・How to Write Secure Code:http://www.shmoo.com/securecode/
 ・Safe CGI Programming :http://www.improving.org/paulp/cgi-security/safe-cgi.txt

[OS]
 ・Linux日本語マニュアル:http://www.linux.or.jp/JM/
 ・FreeBSD日本語マニュアル:http://www.jp.freebsd.org/man-jp/
0005nobodyさん02/07/18 16:35ID:???
【Perl】
http://pc.2ch.net/test/read.cgi/php/1026968140/l50
0006nobodyさん02/07/18 16:37ID:???
6get
0007nobodyさん02/07/18 16:44ID:???
もういいのかな?
とりあえず乙彼
0008nobodyさん02/07/18 16:45ID:???
[Document&Tutorial]
 ・Perl News: http://www.news.perl.org/
 ・Perl Monks: http://www.perlmonks.org/
 ・use Perl; : http://use.perl.org/
 ・Learn Perl - Perl Education: http://www.devdaily.com/perl/edu/index.shtml
 ・Perldoc.com: http://www.perldoc.com/
 ・Using Perl5 in Web: http://docs.rinet.ru/Using_Perl5_in_Web/
 ・Rex Swain's Home Page: http://www.rexswain.com/
 ・Robert's Perl Tutorial: http://www.netcat.co.uk/rob/perl/win32perltut.html
 ・Perl Tuts: http://savage.net.au/Perl-tutorials.html
 ・Beginning Perl Tutorials: http://www.pageresource.com/cgirec/index2.htm
 ・jcode.pl の私的な解説書: http://www.mikeneko.ne.jp/~lab/kcode/jcode.html
 ・Logical Choice Software, Home Page: http://www.logsoft.com/perltips/
 ・Perlfect Solutions: http://perlfect.com/
 ・The Perl Archive : http://www.perlarchive.com/
 ・Perl6 & Parrot VM についての情報: http://dev.perl.org/perl6/
 ・use Object; : http://perl.infoware.ne.jp/

[Module]
 ・Perl Module Reference: http://www.bekknet.ad.jp/~bero/docj/module_/
 ・PPMPackages: http://www.activestate.com/PPMPackages/
 ・河馬屋二千年堂's Page: http://member.nifty.ne.jp/hippo2000/index.htm

[Security]
 ・安全なプログラミングのためのガイドライン:http://www.FreeBSD.org/ja/security/#spg
 ・Perl security:http://www.perldoc.com/perl5.6/pod/perlsec.html
 ・Perl security和訳:http://www.kt.rim.or.jp/%7ekbk/perl5.005/perlsec.html
 ・CGI and Security http://www.ansi.co.jp/tech/cgi/security/
 ・The Unofficial Web Hack FAQ:http://www.nmrc.org/faqs/www/
 ・How to Write Secure Code:http://www.shmoo.com/securecode/
 ・Safe CGI Programming :http://www.improving.org/paulp/cgi-security/safe-cgi.txt

[OS]
 ・Linux日本語マニュアル:http://www.linux.or.jp/JM/
 ・FreeBSD日本語マニュアル:http://www.jp.freebsd.org/man-jp/
0009 ◆JAPH9PWA 02/07/18 16:57ID:???
あー、そっか。終わったらそう書くべきだったね、ゴメン。
0010nobodyさん02/07/18 17:02ID:???
削除依頼提出済み

==終了==
0011nobodyさん02/07/18 17:24ID:AnxO1cAd
foreachがわからなくて卒業できませんでした。
はぁ〜。/Д`)
0012nobodyさん02/07/18 18:01ID:???
記念カキコ
0013nobodyさん02/07/18 18:34ID:???
パターンマッチがうまくいってないです。
同じ文法でデータベースを変えるとちゃんと走りやがります。
つらいです。
0014nobodyさん02/07/18 20:51ID:s7bVAL5C
質問

フレーム形式のホームページで
2個のフレームのうちの一つに画像型CGIを埋め込む。
正しいreferereを取りたいんだがどうしたらいいですか?

envだとフレームのURLを、javascriptの手法を使用しても
フレームの呼び出し元のindexのURLをもってきてしまう。
indexにはjavascriptが使えないみたい。
0015nobodyさん02/07/18 21:10ID:???
document.referrer
の代わりに
parent.document.referrer
を使う。

jsね。
0016nobodyさん02/07/18 21:46ID:???
超初歩的な質問ですが、
Perlでコメントを書く場合に

# 【注意】******

の様にコメント行に【】や ●▲ などの記号類を使っても問題無いでしょうか?
記号を使う目的は、後から自分が見て見やすくするというだけの理由ですが・・・。
0017nobodyさん02/07/18 21:48ID:???
# 以降その行はコメントです。たとえバイナリデータが含まれていようと、
0018nobodyさん02/07/18 21:51ID:???
>>17

じゃあ使っていいわけですね。勉強になりました。
0019nobodyさん02/07/18 22:22ID:???
15>
ありがと
0020nobodyさん02/07/18 23:44ID:???
>>17
試せばわかることまで教えない。
初心者つぶしですか?
0021nobodyさん02/07/18 23:50ID:???
>>20
わりぃ。
今度から気をつけるよ。
0022nobodyさん02/07/19 02:59ID:???
変数に入れる内容を "" でくくる場合と、'' でくくる場合はどういう違いが有りますか?

例えば、
$hoge = '<img src="hoge.jpg">';
$hoge = "<img src=\"hoge.jpg\">";
に違いはあるんでしょうか?
0023nobodyさん02/07/19 03:02ID:???
全く無い!
気分で使い分けるのがツウ
0024nobodyさん02/07/19 03:11ID:???
>>23
さんきゅ

あと聞き忘れましたが、変数に数字を入れる場合、
""で囲む場合と、何も囲まずにダイレクトに入れている場合が有りますが
その違いはありますか?

例えば
$hoge = "10";
$hoge = 10; の様に
0025うひ!02/07/19 03:21ID:???
>>24  礼は良いからPERLDOC読めよん
気分っつーか " は変数展開される
print 'このビールは$5です';
print "このビールは$5です";
下はあなたの思った動作をしないはず

$hoge = 10はどっちでも良い
"10"なら文字列として10なら整数型として
その時々に都合良く解釈してくれる
0026nobodyさん02/07/19 03:29ID:???
>>25
そうだ、変数展開だった。
何かが違うと聞いてた覚えがあったんですけど思い出せなかった。

PERLDOC?
0027nobodyさん02/07/19 03:36ID:???
こう言う奴な
http://www.kt.rim.or.jp/~kbk/perl5.005/perlfaq7.html#Do_I_always_never_have_to_quote_

漏れのBMだから随分古いけどな (ウヒ!
0028パイの魅学園02/07/19 03:41ID:Yx4p6kT0
,〜((((((((〜〜、
 ( _(((((((((_ )
 |/ ~^^\)/^^~ ヽ|
  |  _ 《 _  |
 (|-(_//_)-(_//_)-|)
  |   厶、   |    / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  \ |||||||||||| /  < サンプルを覗くのも・・・。
    \_~~~~_/     \_________
http://www.traffimagic.com/WIPE7MMLZCA/comein/FSJPN
無料で今日も”どっぴゅ〜” だっふんだぁ〜
0029nobodyさん02/07/19 03:42ID:???
>>27
どうも。それ読んでみます。
0030sleepy jaguar02/07/19 05:34ID:???
超おすすめ無料メールマガジン( ´,_ゝ`)
http://www.msleep.com/sleepy_jaguar/

Msleep
http://www.msleep.com/
( ´,_ゝ`)( ´,_ゝ`)( ´,_ゝ`)( ´,_ゝ`)
0031nobodyさん02/07/19 07:24ID:???
こんな風にしてもフォームからPOSTで送られたデータの取得はできるの?

%hash = &form;

sub form{
read STDIN, $form, $ENV{CONTENT_LENGTH};
@datas = split /[&;=]/, $form;
return(@datas);
}
0032nobodyさん02/07/19 07:27ID:???
>>31
試せよ。
0033nobodyさん02/07/19 07:31ID:???
わーいsleepy jaguarさんだ!
数字のソートはsort関数でできるんですか?
0034 ◆JAPH9PWA 02/07/19 08:36ID:???
>>33
数字だろうが数値だろうがオブジェクトだろうがソートできるよ。
0035nobodyさん02/07/19 10:02ID:zrmmynPy
Perl5.8.0キタ━━━━━━━━━(・∀・)━━━━━━━━━!?
0036nobodyさん02/07/19 12:20ID:3YmVGYTQ
「あわわ◆JAPH9PWAたん34GETおめでたですゥ〜\(^o^)/(核爆)」




























(・∀・)ウセロ!!
0037nobodyさん02/07/19 13:15ID:???
>31
なんでCGI.pmを使わないのかと小一時間問いつめたいのですが、
よろしいでしょうか。
0038nobodyさん02/07/19 13:24ID:???
>>37
なにを使う使わないというのは個人の自由だからオマエ程度が問い詰めることでもないだろ。
0039nobodyさん02/07/19 13:34ID:IEMDM0Nu
初歩的なこと教えて欲しいのですが

   if(条件式){ test1.cgi実行 }
      else{ test2.cgi実行 }

上のように、条件分岐してcgiを実行したいのですが、どうすればよいのでしょうか?

<form>タグでaction=****.cgiとして、submitで実行しか思いつかないのですが・・・
厨房ですいません。
0040nobodyさん02/07/19 13:38ID:7Bpm6nE5
Locationで検索しれ
00413902/07/19 13:42ID:IEMDM0Nu
>>40
早速レスありがとうございます。検索してきました。

print "Location : ***.cgi \n\n";

こんな感じで、いいのですね
ありがとう!
0042nobodyさん02/07/19 13:47ID:ou++e83o
掲示板の表示される名前の部分だけ色をかえたいのですが、どうずればよいのですか?
0043nobodyさん02/07/19 13:52ID:???
それはHTML関係だろ。
板、いや、スレ違い。
004442です02/07/19 13:57ID:ou++e83o
今、CGIで掲示板を作っているのですが。
表示される名前の部分の色を変えるにはCGIのなかを書き換えないといけないといわれたので・・・。
0045nobodyさん02/07/19 14:03ID:???
いくらPerlで掲示板作ってるからと言って、表示する部分はHTMLだろうが。

スクリプト改造工房 Part4
http://pc.2ch.net/test/read.cgi/php/1012839651/l50
0046nobodyさん02/07/19 15:35ID:???
つーかHTMLがわからなくてどうして掲示板作れるんだか
004742です02/07/19 15:48ID:ou++e83o
すいません、ご丁寧にありがとうございました。
逝ってきます。
00483902/07/19 16:19ID:h7+QqD7K
すいません、また質問させてください。

フレーム使っていて、右のフレームでCGIを表示したい場合、

print "<form target=right>";
print "Location : ***.cgi \n\n";
print "</form>";

みたいにするしか、無いのでしょうか?
いろいろ調べたのですが分からなくて
0049nobodyさん02/07/19 16:27ID:???
>>48
色々と何を調べたのか問いたい
フレーム云々自体、スレ/板違い
それにLocationすら理解していないしw
00503902/07/19 16:38ID:???
>>49
レスありがとうございました。

自力で調べてみます。レス違いでしたねすいませんでした。
0051nobodyさん02/07/19 17:31ID:???
右のフレームでcgiを表示って、HTMLの問題では?
そういうことやってるサイトは無数にあるから、そこのソースコピーしろ。
0052nobodyさん02/07/19 17:55ID:???
$hoge = 'hoge'or'fuga'or'foo'or'bar'みたいな時
if $hoge eq 'hoge' or $hoge eq 'fuga' or $hoge eq 'foo' or $hoge eq 'bar'
とするのと
if $hoge =~ /^[hfb]/
とはどちらがいいのですか?
00535202/07/19 17:58ID:???
訂正
if $hoge =~ /(hoge|fuga|foo|bar)/
にしてくらさい
0054nobodyさん02/07/19 17:59ID:???
>>52
値によっては処理がかわるから適切に使い分ければ?
0055nobodyさん02/07/19 18:00ID:???
>>53
値によっては処理がかわるから適切に使い分ければ?
00565202/07/19 18:02ID:???
あい、値によって適切に使い分けたいと思います
で、こういう値だったらこっちとかいう具体例ってありますか?
0057nobodyさん02/07/19 18:04ID:???
>>56
$hoge= 'aaahogeaaa';
これにマッチさせたくなければ上の eq を使えば?
0058nobodyさん02/07/19 18:08ID:???
>>57
なるほろ、そうします。
絶対に上の例以外の変数が入ることはなかったとしたら
どっちのほうが早い、負荷が低いんでしょう。
0059nobodyさん02/07/19 18:10ID:???
そりゃ、eq のほうが速いだろ。
ただ、正規表現のほうをうまく書き直せばベンチマークをやらないとなんとも
言えない。
0060nobodyさん02/07/19 18:13ID:???
そうなのれすか。
正規表現の出来具合によってはあまり変わらないと。
ご助言アリガトン。これから試してみるのれす
0061nobodyさん02/07/19 19:09ID:???
>>53
if $hoge =~ /^hoge|fuga|foo|bar$/
()もいらない。

スピードは$hogeによる。$hogeがとる値の確率の高い順に
orは連結するように。
単一のワードなら、eqのほうが、正規表現より3,4倍早い。
まあ、無視できる程度だけど何千回もまわすようなループの中だと
でかい差になるね。
0062nobodyさん02/07/19 19:36ID:???
誰か良いプロファイリングのしかた知らないっすか。
どこのコードが何回実行されるかを調べる奴です。


DBugモードは無しで…
0063 ◆JAPH9PWA 02/07/19 20:05ID:???
>>62
Devel::Dprofというプロファイラがあるよ。

$ perl -d:Dprof script.pl
$ dprofpp
0064nobodyさん02/07/19 20:47ID:???
>>63
Httpd上で動かしながらプロファイルをとりたいんどす
0065 ◆JAPH9PWA 02/07/19 21:11ID:???
>>64
httpd上でも同じこと。
ただしプロファイル中はパフォーマンスが劇的に下がるので
実際に動かしながら、というのはお勧めできないけど。

関係ないけど、
そんな「やれやれ、的外れなレスが来たな」とでもいいたげなレスはやめた方が言いかと。

0066nobodyさん02/07/19 23:04ID:???
また一人糞コテハンが。。。
コテハンうざい
消えろ
■ このスレッドは過去ログ倉庫に格納されています