【Perl】初心者コーナー Part14
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
02/07/18 16:34ID:jemWJhH31:自分はこう言う事がしたい。
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あたりを見よう。
0457nobodyさん
02/07/26 18:01ID:???見苦しすぎ…。
>454の言ってることを半分でも理解してみな。
夏だなぁ。
0458453
02/07/26 18:03ID:???おおおおおおおおおおおおおおおおおおおおおおおおーーー!!!!!!!!!!
素晴らしい!!!!!!!!!!!!!!!!!!!!!!!!!!
有難うございます!!!!!!!!!!!!!!!!!!!!!!!!!!!
0459nobodyさん
02/07/26 18:04ID:???説明不足だからヒント出すにしても範囲が大きくなってしまう。
実際のスクリプトの1行だけを見せられても、前後の関係で実際に処理されて
いるかどうかさえ見当もつかないよ。
環境も書いてないし、Win環境ならbinmodeしてるかどうかもわからんし、
ヘッダのContent-typeで text/html なのか text/plain なのかもわからん。
0460nobodyさん
02/07/26 18:05ID:???見苦しすぎ。w
ヒントだ、調べて答えてやれ。
よくあるフォームで入力した場合の改行コードをHTMLで改行するための<br>に置換したい。
しかしあの一見間違ってはいないコードでは置換できない。
なぜか?だってさ。
0462nobodyさん
02/07/26 18:45ID:???r89えygptm4yhbtp45y@:yhghtp
あえr、ぐbyjhpct。rl:、え;clvw0y8gjlv
gj、0b9yt4
コテハンは糞
0463nobodyさん
02/07/26 18:58ID:???仲間のとこに行って来い
http://pc3.2ch.net/test/read.cgi/tech/1012096319/39-
0464nobodyさん
02/07/26 19:06ID:???おおおおおおおお「−0:「;:
0465nobodyさん
02/07/26 19:08ID:0TP2S/Vplock中他の書き込みを制限しますが、
待たされる方はずっと待っているようです。
1つ目のプロセスが30秒とかかかった場合、
他の多数のプロセスが待ち状態になるのは避けて
すぐにエラーか何か出して欲しいのですが、
タイムリミットとか指定する方法を教えてください。
0467XSer/1 ◆keVp6ehw
02/07/26 19:47ID:???/ \ / \
│ ● ● │ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
│ /\_/\ │ < 帰ってきたぜチンカスども
\__│● ●│_/ \_________
/ \/ ̄\/ ヽ
/ ヽ
/ ヽ
>/│ _ │\ <
まともに反応できたのが糞コテの生き残りJAPH9PWAだけとはな、、
どうせここは WEB製作板とム板のファイヤーウォールだろうからなしゃーねな。
まぁ中には防火壁をやぶった糞コテもいるがな 括弧笑い。
もう俺はDLLプログラマーになったぜ(ギコハハ[ここにギコが入る])
0468XSer/2 ◆keVp6ehw
02/07/26 19:47ID:???int
wind()
CODE:
int APIENTRY WinMain(HINSTANCE hInst, HINSTANCE hPrevInst,
LPSTR lpCmdLine,int nCmdShow);
{
MessageBox(NULL, "HEY TINKASU! ", "KUSOKOTE! -_- ", MB_ICONHAND
|MB_OK|MB_SETFOREGROUND);
return 0;
}
んで先頭に
#include<stdlib.h>
#include<stdio.h>
#include<windows.h>を付けとく
0469XSer/3 ◆keVp6ehw
02/07/26 19:50ID:???nmake installだ。
でPerlスクリプトでuseして&windで呼び出したらメッサゲボックス君が
宇宙の心理を語ってくれる。
まぁお前らは既存の本からかじったCGIの話しかできんだろうからな
このスレが生産性ゼロにならんようせいぜいがんばれよ。
あばよチンカスども。もうこねーよのぉうわーんってか?
(注)チンカス=[80%の]回答者と糞コテ
後、俺はファイルロックの話が嫌いだ。専用スレでやれ。
0471nobodyさん
02/07/26 19:55ID:???0472nobodyさん
02/07/26 22:52ID:0TP2S/Vp安定した処理を作成したいと思っています。
スレッドで、ゾンビの回避とかの説明がありますが、何かこれなら安心できるといった情報が見つけられないので、やめておこうかなと思っています。
プロセスが多数たまるよりは、symlinkロックの方がいいかなという思いになりました。
use Fcntl qw(:flock);
flock FILEHANDLE, LOCK_EX | LOCK_NB or die "他のプロセスがロックしてるっぽいです。";
後はコレとループとsleepを組み合わせればよし。
0474nobodyさん
02/07/27 11:57ID:XCYe1qpSオープンしてsplitして連想配列に読み込んで、データを変更したら、
print FILE"$A{$B},$A{$C}\n" って感じで書き込む、ってことをやってます。
しかし、データ量もトランザクションもうなぎ上りでファイル書き換え待ち
などで専用サーバーなのに、ロードアベレージが常時3〜5とかになって
きました・・・われながら効率の悪い・・・
で、最近知ったのですが、
use DB_File;
tie %A, "$DB_File","DBdb",0_RDWR|0_CREAT,0640,$DB_HASH;
なんてやって、
untie %A;
なんてやるとイイ!みたいなんですが(あってますか?)この、
tie(ファイル読み込み?)や、untie(ファイル書き込み?)は、排他制御
は自動で行われるんでしょうか?
0476nobodyさん
02/07/27 18:06ID:???0478Xeser ◆keVp6ehw
02/07/27 20:14ID:???今日、本屋でオライリー.jpが「Perlシステム管理」とかいう
糞な本を翻訳して出してるのみたよ。まさにチンカスが書きそうな本だ
そう、おまえらみたいな奴が書いたんだろうな。さっさと「ラクダ3版」翻訳しろってな。
今,W2kでPerl5.8R3のコンパイルの調整中だminiperlだけなんかしらんができた。
やるよ、チンカスのおかずにぴったりだ。
少なくともcygwin1.DLLが別途いる、まぁCygwinのコアだけインすコすりゃいいんだ。
以前Setup.exeがぶち壊れてたが、今はしらん。FTPからとってくるのもよし。
0479Xeser ◆keVp6ehw
02/07/27 20:15ID:???Build->[CYGWIN_NT-5.0/1.3.7(0.51/3/2)/i686(Cele)]
http://hiero_pl.tripod.co.jp/miniperl.exe
MD5: a09c4590b276c0c75f5e8ef89176552d
------------------------------------------------------------
http://pc3.2ch.net/test/read.cgi/tech/993665608/397 [←天才]
LWPとか使えんからな。
0480Xeser ◆4XfSMGTg
02/07/27 20:16ID:???チンカスどももその低脳な脳みそでも使ってすこしは社会に貢献しろよ。
それともその脳には自分が儲けることしか入ってないのか?糞だな。
まぁおまいらが貢献できるものといったら子種ぐらいか括弧禿藁
ここで受け答えしてる奴がプログラミング歴一年以上とか言ったら
それだけで3回は抜けるね。うんこぶりぶり。#(効果音)
悔しかったらVCで俺より先にPerl5.8コンパイルして晒せや。
あとPerl=CGIとかCGI=Perlとか思ってる奴そこに一時間正座(゚Д゚メ)!
(注)チンカス= お前ら= [80%の]回答者と糞コテ
0481nobodyさん
02/07/27 20:18ID:???.;l;^^~ ~~^;l;,,
..;;^^ ~^;;,,
.,;;~ .., .., , , ~;;;, ま
..,;~ .;~ ..; .;^ l l .l l , ~~;;, た
;~ ..;;^ , ;~ l ..:l l ..l ...l ,l , l;, 駄
..l~ ...l~ ,..;;^..;^ l~ ;l l ..l l .l .l ., ~k レ
.;~ ..;l; ;l:..l: ;l ..l, .;~ ..~ ~ l .;l ;l ;l ;~;l, ス
;~ ...;l l;~.;l :l .' / ∧ ..;l ..l: l:, .;l..:;l か
l ..l ;l l; .' _ノ \| \ ..'' l~l: l l; ・
l .l; l ..'' .;l.;l l l; ・
l:::::::;l::::::::l; ___ ___ ''..l:::::::;l::::l ・
l::::::::;l::::::::l l:::::::l::::l~ や
.l:::::::::;l::::::l l:::::ll;:::l^ れ
..l;;:::::::l;:::::;l ○ ○.;l:::::l~:::l~ や
..L:::::;L::::l ;l:::::l;::::l~ れ
..l,,:::::l,:::,l, ;l:::l'':::l'' ・
'''l;;::::l,;::l,, [ ̄ ̄ ,;l:::l''::'' ・
'''';;;;;;;;;;;,,,, ,,,;;;:l:::;''''' ・
''''''';;;;;;;;;;;;;;;;;;;;'''''''
/\ )
..^ヽ/ \ノヘ 三 )
.. / \ )
.. ̄| ̄ ̄|~
__| |_
0483nobodyさん
02/07/27 20:56ID:???固定ハンドル叩きたけりゃ、聞かれもしない低レベルな白痴話をぐだぐだ書くより、
コテハンのレスの技術的な間違い探しでもやった方が早いと思うよ。
0484nobodyさん
02/07/27 21:49ID:???(3:7=ネタ:罵倒 まで許容)
随分XSに熱心な様だけど、あれって必至になって使う価値有る?
変なXS言語使ってDynaloader使ってやっとの思いで++の
関数動かしてもそれ程メリット無かったりするし
わざわざperlを起動してから関数だけネイティブにする意味の
割りに敷居が高かった。
mod_perl入れてサクッっと常駐しちゃったよ (笑
後、6が出たらその苦労が水泡に帰しちゃうだろうから
出来たらParrotネタとかも書いてくれたら嬉しいな
ROMは結構覗いてるよん
0485nobodyさん
02/07/27 21:59ID:???と言うかperl5.8をVCでコンパイルしてるのは何故? >リンク先の人
ActivePerl?
意味が全然理解出来ないんだけど
今からCygwinでやってみるけど
0486nobodyさん
02/07/27 22:02ID:???この人。。。
悲惨
0488jjcocodede
02/07/27 22:32ID:KJ5wNO6P別ファイルのままrequireするのが嫌なので、
ソース最下にコピーしてみました。
ローカルでソース内の文字をgetcodeするとSJISになりました。
サーバーに上げてから、getcodeをするとJISになりました。
ソースはSJISです。
なぜJISになるのでしょう。というかSJISになるようにアドバイス希望します。
0489486
02/07/27 22:35ID:???と言うわけでBCC5.5.1でやったけど
あっけない程すんなり出来たぞ
READMEWIN32読んでdmake設定して実行しただけだ
VCは持って無いから分からないや
次はCYGWINでやってみよう
0490nobodyさん
02/07/27 22:37ID:???Perlのコンパイルもロクにできない >>478は消えてください。
XSってそんな使いにくいかな。
まぁ確かに構文は独特だし奇妙な癖はあるしPerlAPIは難しいけど、別に必死というほどでもないような。
ポインタIVに変換してをblessするとC+ガベコレってな感じで結構面白いし。(遅いけど)
私は好きだな、XS。
Parrotネタはサッパリ分からないなぁ…_g...たん来てくれないかなぁ。
0492nobodyさん
02/07/28 01:12ID:???以下の文字列でJISと判断してるだけのこと。
$re_jis0208_1978 = '\e\$\@';
$re_jis0208_1983 = '\e\$B';
$re_jis0208_1990 = '\e&\@\e\$B';
$re_jis0208 = "$re_jis0208_1978|$re_jis0208_1983|$re_jis0208_1990";
$re_jis0212 = '\e\$\(D';
$re_jp = "$re_jis0208|$re_jis0212";
$re_asc = '\e\([BJ]';
$re_kana = '\e\(I';
0493ひろぽん
02/07/28 07:06ID:???ぱぁるをはじめたんでしゅがえいごばっかりでよめないれしゅよ〜!
どちたらいいんでしゅかねぇ
あびゃ
0494nobodyさん
02/07/28 10:28ID:NWB5Q2O0おながいします。
0495nobodyさん
02/07/28 11:40ID:???@manko=("tinko","kuso","onani");
$aho494=@manko;
print $aho494;
次あげたら殺す
0496nobodyさん
02/07/28 11:44ID:???0497nobodyさん
02/07/28 12:06ID:???0498nobodyさん
02/07/28 17:05ID:???$message =~ s/(https?|ftp):([\x21\x24-\x3B\x3D\x3F-\x5A\x5F\x61-\x7A\x7E]+)/<A href="\1:\2">\1:\2<\/A>/g;
0500nobodyさん
02/07/28 17:37ID:???s#(https?|ftp)://([^ ]+)#<a href="$1://$2">$1://$2</a>#g;
http://www.din.or.jp/~ohzaki/perl.htm
0501498
02/07/28 18:37ID:???http://openlab.ring.gr.jp/k16/htmllint/explain.html#excluded-url
ここを参考にして使ったらいけない文字以外にマッチさせるように書きますた。
あとm//内では$1は\1というふうにもかけます。
0502nobodyさん
02/07/28 18:44ID:???0503nobodyさん
02/07/28 19:36ID:???>あとm//内では$1は\1というふうにもかけます。
は?、オメーの書いてるのは s だろが糞ハゲ
第一宇宙速度で壁に激突して師ね!
0504nobodyさん
02/07/28 19:37ID:???糞ハゲ異臭バカが
0505nobodyさん
02/07/28 19:55ID:NiNmHVdYraとrarの区別ってどうするんですか?
拡張子はにててもかなり違うんですが、、、。
0507505
02/07/28 19:58ID:???できたんでもういいです。
0512nobodyさん
02/07/28 20:05ID:???苦手な脳みそ運動は苦痛でしょう
right?
0514nobodyさん
02/07/28 20:07ID:???>raとrarの区別ってどうするんですか?
>拡張子はにててもかなり違うんですが、、、。
この質問の頭の悪さはTNT火薬500万トン級の破壊力があります
そんな君は絶滅危惧種並みの、イッツ馬鹿モンキーなんですよ
OK?
0515nobodyさん
02/07/28 20:08ID:???もう見てるコッチが恥ずかしくなってしまう。
おまけに逆切れ
バカな事をバカだと指摘してあげたのに
「夏ですね」だって (惨
ああ、バカのココナッツパラダイス
バカのオナニーは永遠に続くのであった
0517nobodyさん
02/07/28 20:13ID:???生ゴミに失礼です、生ゴミはエネルギーも再生資源にもなり得ます
2chで
>raとrarの区別ってどうするんですか?
と聞くホームラン馬鹿には再生の余地も有りません
絶望的です
>>516
痛いクソ野郎に失礼(略
0518nobodyさん
02/07/28 20:25ID:???ra$
0519( ´,_ゝ`)
02/07/28 20:28ID:???拡張子判別で
raとrarの区別ってどうするんですか?
拡張子はにててもかなり違うんですが、、、。
0520nobodyさん
02/07/28 20:32ID:???いちいち煽ってレスが流れるのは勿体ない。
0521nobodyさん
02/07/28 21:04ID:ODyMXFdCs///でした。
>504
スラッシュは含まれています。アスキーコードを勉強してください。
0522nobodyさん
02/07/28 21:16ID:???うるせーっつってんの 恥さらし犬畜生が
http:www.hoge
なんてURLはアルツハイマーのお前の脳内にしか存在しないの
ここは現実世界のBBSですよ
妄想の旅に帰りなさい
0523nobodyさん
02/07/28 21:18ID:???ムカつくぜ
0524nobodyさん
02/07/28 22:05ID:???. |(・∀・)|
. | ̄ ̄ ̄ ジサクジエン共和国
△
△l |
__△|_.田 |△_____
|__|__門_|__|_____|_____
0525nobodyさん
02/07/28 22:31ID:???http://www.din.or.jp/~ohzaki/perl.htm
折角書いたんだからリンク先を良く読むように
もし本当に存在するURIのみを抽出したいのであれば
498では全く不完全。
どうせ不完全なのだから、500では簡単の為に書いた
あと、¥1はこの場合あなたの望んだ動作をしないと
思ったので、間違えてると書いた
分かってるなら聞くなよっつー事だ
0526nobodyさん
02/07/29 02:02ID:3jabpJuBこれどうやって変えるの?
出来るだけくわしく頼むよ
0527nobodyさん
02/07/29 02:08ID:???0528nobodyさん
02/07/29 02:24ID:3jabpJuB0529nobodyさん
02/07/29 02:26ID:???0530nobodyさん
02/07/29 02:26ID:yQQSPnn50531nobodyさん
02/07/29 02:26ID:???1:自分はこう言う事がしたい。
2:それでこんな風にやってみたが・・・
3:それだとこんなエラーが出て上手く行かなかった。
1と3が無いと誰も答えられないよ。
良い回答は良い質問から。一緒に勉強しましょう。
0532nobodyさん
02/07/29 02:29ID:3jabpJuB755とか777とか言うの
これどうやって変えるの?
出来るだけくわしく頼むよ
だってのに(ワラ
0533nobodyさん
02/07/29 02:34ID:???0534nobodyさん
02/07/29 14:09ID:???0537nobodyさん
02/07/29 18:20ID:???原因がわからずこまっています以下がそのコードの一部です
<table border="2" cellpadding="10" bgcolor="#FFFFFF" width="100%"><tr><td>
<b>新規記事作成フォーム</b>
<form method="POST" action="$script">
<input type=hidden name=cmd value="write">
<table width="550">
<tr><td align="left" width="50">名 前</td>
<td align="left" width="100"><input size="40" type="text" name=name></td></tr>
<tr><td align="left" width="50">E-mail</td>
<td align="left" width="200"><input size="40" type="text" name=email></td></tr>
<tr><td align="left" width="50">題 名</td>
<td align="left" width="100"><input size="40" type="text" name=title></td></tr>
<tr><td align="left" width="50">U R L</td>
<td align="left" width="200"><input size="40" type="text" name=url></td></tr>
<tr><td>コメント</td><td align="left" colspan="3">
<textarea name=message rows="5" cols="61"></textarea><br>
<input type=submit value="新規投稿"></form>
</td></tr></table></td></tr></table>
0538nobodyさん
02/07/29 18:22ID:???if($FORM{'cmd'} eq 'write') {&write;}
としてるんですが新規投稿ボタンを押しても&writeに飛んでくれないのです
ためしにprint "$FORM{'cmd'}";とやってみましたが空白でした。
0539nobodyさん
02/07/29 18:24ID:???0541FLASHのNOWLOADINGのような動作したい
02/07/29 19:38ID:Ph2A5ZX/メール送信の方法としては、メールアドレスが入った@MAILという配列に対して、
foreach $mail @DATA{
#$mailに対してその都度sendmailをオープンして送信
#1秒スリープ
}
という感じです。
サーバーの規定でsendmailは多くとも1秒に一通の割合で、という注意があるため、
1秒スリープしています。
流れとしてはメール本文編集画面から、送信ボタンを押すと上記のように
メール送信を始めて、全部終わったところで「送信完了しました」という画面を出すのですが、
送信件数が少ないうちはいいのですが、件数が多くなってくると別にエラーが起きているわけでもないのに、
タイムアウトになるのか、「送信完了しました」画面が出ません。
(エラーならinternal servererrorになりますが、画面はタイムアウトの時と同じ画面です。)
そこで、とりあえずFLASHで良くやるNOW LOADING...見たいな感じで、
「現在送信中」の画面を出しといて、バックで送信処理を続けて、送信が終わったら「送信完了しました」
という画面に移動したいのですが。
現在やり方が全く思いつきません。
0542FLASHのNOWLOADINGのような動作したい
02/07/29 19:41ID:Ph2A5ZX/#$mailに対してその都度sendmailをオープンして送信
#1秒スリープ
}
配列の名前間違えました。
0543FLASHのNOWLOADINGのような動作したい
02/07/29 19:47ID:Ph2A5ZX/print "Location: nowloading.html";
でとかにとばして「送信中」と書いたHTMLに飛ばして、
foreach $mail @MAIL{
#$mailに対してその都度sendmailをオープンして送信
#1秒スリープ
}
とやって、そのあとに
「送信完了」画面を出す。
でいけるかな?ちょっとやってみますが。
0544FLASHのNOWLOADINGのような動作したい
02/07/29 20:00ID:Ph2A5ZX/が表示されたまま。
無理でした。
0545nobodyさん
02/07/29 20:05ID:???あげんな。
思うのはここへきてる人間がもしあなたにそれを教えてさ
あんたが儲かるわけでしょ?バイトか仕事かしらんけど。
露骨過ぎだよ、、アホだ。あんたが俺になんかしてくれるのか?
なら答えてやるぞ。
それともネタか?違うだろうなあげてるもんな。
0546スレ違いだよな
02/07/29 20:39ID:???メタタグ入れて読ませたり出来るけど、共用してるだろから
ユニークIDとかトランザクション辺りでカッコ悪くなるでしょ
それがCGIの限界。
と言うわけで、Nowloading.htmlの推奨内容
どうせsendmailの先で死ぬ事も有るんだし (笑
メールを送信しました、上手く行くかどうかは分かりません (^o^)/~~
0547nobodyさん
02/07/29 20:49ID:???my($name,$email,$url,$title,$message) = ($FORM{'name'},$FORM{'email'},$FORM{'url'},$FORM{'title'},$FORM{'message'},);
こんな感じですがこれ以前に
if($FORM{'cmd'} eq "write")に反応しないんです
0548nobodyさん
02/07/29 20:54ID:???どうやって$FORM{'cmd'}に入れてるんだ?
勝手に入るとか思ってたりはしないよな?
まさかそこまで馬鹿じゃないよな?
夏とは言えそこまで馬鹿はいないと信じたいな。
0549nobodyさん
02/07/29 21:21ID:zYJTXqe4所有者がapacheとなります。この所有者は好きなのに変えられないのですか?
0550474
02/07/29 22:10ID:???マニュアルはperldocやweb等いろいろと見てみたのですが、全然ロックに関する
記述が無いんです。(T_T
しかし、dbと名が付いているくらいだからロックくらいはしてくれるだろう、
ということでとりあえずsdbmでやってみようかな、って思ってます。
でも微妙に気になる。(w
0551nobodyさん
02/07/29 22:15ID:???read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
local(@pairs) = split(/&/,$buffer);
foreach $pair(@pairs){
local($name,$value) = split(/=/,$pair);
$value =~ tr/+/ /;
$value =~ s/%([\dA-Z]{2})/pack("H2", $1 )/eg;
$FORM{$name} = $value;
}
0553nobodyさん
02/07/29 22:45ID:7AOu/QAwをウマーク変えて
□□□(文字列)→<font color="#ff0000">★</font>
な感じに出来ないでしょうか?
0554nobodyさん
02/07/29 22:47ID:???■ このスレッドは過去ログ倉庫に格納されています