【Perl】初心者コーナー Part16
■ このスレッドは過去ログ倉庫に格納されています
00013PIO ◆3pIoOHKo
02/09/15 15:11ID:???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あたりを見よう。
00023PIO ◆3pIoOHKo
02/09/15 15:13ID:???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/php/kako/1019/10199/1019917048.html
Part13 http://pc.2ch.net/php/kako/1022/10227/1022731565.html
Part14 知らん
Part15 http://pc.2ch.net/test/read.cgi/php/1028816385/
[ひまぢん氏のミラー]
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/09/15 15:31ID:???0005nobodyさん
02/09/15 15:46ID:???\ ^ ^ \
| -@ @ -|
| △ |/
| / \/
\ ○< 新スレおめでとうございます
\ \
-----/ \
0007nobodyさん
02/09/15 16:25ID:???0009nobodyさん
02/09/15 18:23ID:???flock(LOG,2);
@log=<LOG>;
@log = &format_log($maxlog,@log);
seek LOG,0,0;
print LOG @log;
truncate(LOG,tell);
close LOG;
みたいなのがあって意味はわかると思うんですが、
truncate(LOG,tell);
ってなくていいような気がするんですが、どうなんでしょう。
これが書いてある事でどんなメリットがあるのか教えてください。
0012nobodyさん
02/09/15 18:46ID:???ファイルサイズが前より小さくなった時に意味をなす。
0015nobodyさん
02/09/15 20:01ID:???0016nobodyさん
02/09/15 20:03ID:???7 名前:nobodyさん 投稿日:2002/09/15(日) 16:25 ID:???
コテハンで継続スレ立てるなヴォケ
8 名前:nobodyさん 投稿日:2002/09/15(日) 17:25 ID:???
>>7
削除依頼ヨロ
0017nobodyさん
02/09/15 20:04ID:???0019nobodyさん
02/09/15 20:19ID:???0020nobodyさん
02/09/15 20:29ID:???$time = sprintf("%02.d",$time);
よくこうしろと言われてますが、
$time = "0$time" if ($time<10);
こちらの方が軽くてイイと思うのですが
どうでしょうか?
0021nobodyさん
02/09/15 20:40ID:PweXUHcdforeach(@a){
push @line,"<small>$_</small>\n";
}
return @line;
}
とし、
@textpart=&abc();
とし、
print "<body>@textpart</body>";
のようにしたところ、
1行目は問題ないのですが2行目以降
必ず行頭に半角スペースが入ります。なんででしょう。
上記のプロセスは無関係でしょうか。
0022nobodyさん
02/09/15 20:49ID:???配列はデフォールトでは空白によって区切られたリストです
だからそれを展開すると空白も出力されます
ただし、"..."に入れないで、表に出せば空白は入りません
print "<body>", @textpart, "</body>";
0023nobodyさん
02/09/15 20:49ID:???万が一、すでに$timeが02とかになっていた場合、002になってしまうからでは?
あまり大きくなく汎用性を気にしないならそれでもいいんじゃない?
0024nobodyさん
02/09/15 20:50ID:???配列の区切り詞が半角スペースになってるから。
0025nobodyさん
02/09/15 20:53ID:???月、日、時間、分、秒のそれぞれに一桁か二桁かの判定(if文)を
入れるのが大変、というかそれによってsprintfより重くなってし
まうからではないでしょうか
一個だけなら、そんなに変わらないでしょうが
002621
02/09/15 21:00ID:???レス感謝です。
>"..."に入れないで、表に出せば空白は入りません
試したら言われた通りになりました。
実際はヒアドキュメントの中に書いていたのでずっとわからずにいました。
ありがとうございました。
0027nobodyさん
02/09/15 21:06ID:WvlaRVTEHTTP/1.1 302 Found
が返ってきてうまく取得できないのです。
スレッド一覧はうまく取得できるのですが。
こんな感じで$input_fileにhtmlファイルを取得していますが
何かリクエストのコマンドに工夫が必要なのでしょうか?
socket(S, 2, 1, 0);
connect(S, $name);
select(S); $| = 1; select(stdout);
print S "GET $path HTTP/1.0\n";
print S "Host: $host\n";
print S "Connection: close\n\n";
$str=join("",(">",$input_file));
open(FOUT,$str);
while(<S>) {
print FOUT $_;
}
close(FOUT);
0029nobodyさん
02/09/15 21:35ID:???コテハンでスレ立てるのはともかく、そこで煽るなよ。
>27
LWPは使えないの?
0032nobodyさん
02/09/15 22:50ID:???0033nobodyさん
02/09/15 22:50ID:???>open(FOUT,$str);
↑ open(FOUT,$str)|| die $!; の方が良いのでは?
2chのdat生取りはそれなりに作法が有ったんじゃ無いか
それと、生Socket使うよりIO::Socketとか29の言う様にLWPなんて
便利な物があるので、そっちを勧める
wgetに放り込むとか (w
// 固定に異常に粘着する猿はコイツなので気にしないように
http://pc.2ch.net/test/read.cgi/php/1029945604/l50
0034nobodyさん
02/09/15 22:52ID:???0035nobodyさん
02/09/15 22:55ID:???0036nobodyさん
02/09/15 22:55ID:???彡川川川キチガイミ〜
川川川/ \|〜 プゥ〜ン / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
‖|‖ ◎---◎|〜 クサイ / この板では俺様以外は固定を名乗るな!
川川‖ 3 ヽ〜 < XSとParrotが使えて、PERL5.8をコンパイル
川川 ∴)д(∴)〜 \ 出来る俺様を差し置いて固定とはなんだ!!
川川 〜 /〜 カタカタカタ \ 俺は一日中Perlを触ってるプロだ
川川‖ 〜 /‖ _____ \ PerlCCもhernessも使える
川川川川___/‖ | | ̄ ̄\ \ \ 上級者の俺のイソターネットを見てくれ!!
/ ヒキコモリ \__| 低収入 | ̄ ̄| \ http://hiero_pl.tripod.co.jp/
/ \__>>34 | | |__| \____________
| \ 中卒 |つ |__|__/ /
/ アホ ̄ ̄ | ̄ ̄ ̄ ̄| 〔 ̄ ̄〕
0037nobodyさん
02/09/15 23:02ID:???0038nobodyさん
02/09/15 23:11ID:???>>25
前ベンチマークで計った記憶があるのですが、
全て変換してもsprintfの方が重たいんですよね。
sprintf使った方がシンプルで見やすいからでしょうか?
0039nobodyさん
02/09/15 23:20ID:???0$time if (...);
こんなのがダサイとも気持ち悪いとも思わないのならどっちでもヨロシ
一兆回ループするなら速い方が良いかもね
004027
02/09/15 23:27ID:d22Bbzx7>>29 >>33
レスありがとうございます。
2chのスレッド取得はどんな作法があるのか調べてるのですが
よくわからないです。
Irvineではうまく落とせますね。
0041nobodyさん
02/09/15 23:28ID:???xx/yyみたいに表示されますが、さっぱり意味がわかりません。
誰か小学生にも分かるように教えて下さい
0042nobodyさん
02/09/15 23:33ID:vqb5QhHrheader(-charset=>'euc-jp'), start_html("INPUT"),
"性別: ", radio_group(-name=>'sex', -values=>['男', '女'],
-default=>'-', -labels=>\%labels), br,
……
例えばラジオボタンを上記のような記述で記述すると
param('sex') に"男"あるいは"女"が渡されてきます。
2バイト文字を使って条件判断をするのはちょっと気持ち悪いのですが、
表示文字をアルファベットにするわけにも行きません。
直接2バイト文字の条件判断を使わず、帰ってくる値を簡単な変数(0,1やm,f等)に置き換えることは出来ませんでしょうか。
0043nobodyさん
02/09/16 01:22ID:???ハッシュで定義しとけばいいじゃん
@sex{('男', '女')}= (0, 1);
$sex= %sex{param('sex')};
0044nobodyさん
02/09/16 01:58ID:???まず、aaa.html に <!--#exec cgi="bbb.pl" --> と記述しておきます。
で、ccc.html から aaa.html に飛ぶと、
もちろん $ENV{'QUERY_STRING'} は ccc.html になりますよね。
そうじゃなくて、aaa.html を参照したい時にはどうすればよいでしょうか?
環境変数にそんなのないですよね…?
0045nobodyさん
02/09/16 02:12ID:???004644
02/09/16 03:34ID:UarIxOyF> $ENV{'QUERY_STRING'} がaaa.htmlになるのか?
失礼しました…。
$ENV{'HTTP_REFERER'}の間違いです。すんません。
004744
02/09/16 03:38ID:???$ENV{'DOCUMENT_URI'}ですね。ありがとうございました。
0048nobodyさん
02/09/16 03:47ID:???ぜーんぜん違うじゃんかよ
$ENV{'HTTP_REFERER'}は、bbb.plが呼ばれたページだから
aaa.htmlとなるはず
0049b
02/09/16 03:49ID:oqHfjXJ7005342
02/09/16 12:22ID:m4c9VqI1ご回答ありがとうございます。
つまり、そういう方法で置き換えることしか方法が無いということですね。
イチイチ置き換えないといけないとなるとCGI.pm使うのも微妙なところだなぁ。
ちなみにそちらの方法を試したら動きませんでした(^^;
今直してます。
■ このスレッドは過去ログ倉庫に格納されています