CGIだけど、なんか質問ある? part 6
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
02/04/23 20:28ID:Kp0cZQna<<注意:CGIは特定の言語に依存するものではありません>>
Perlのコーディングに関する質問はこちら
【Perl】初心者コーナーPart11
http://pc.2ch.net/test/read.cgi/php/1017201229/
過去ログは>>2
0476nobodyさん
02/06/05 15:13ID:86IkqFh+IEで、SSLのサイトに対して、POSTメソッドを送信すると
HTTP400(不正な要求)のエラーになってしまいます。
但し、戻るボタンで戻って2回目以降は正常に動作します。
ネスケでは問題ありません。
どうも、SSLサイトの最初の要求にPOSTするとダメみたいです。
こんなことで3日も悩みつづけてます。誰か助けてください!
0477467
02/06/05 17:08ID:???0478nobodyさん
02/06/05 17:16ID:86IkqFh+パスワード送ってます。。
補足ですが、サーバー証明書は自前の証明書を使ってます。
0479リトマス試験紙 ◆9S86wbO.
02/06/06 01:21ID:KIpxDlw7親切なレスありがとう。
j-sky板で「J-skyのみCGIが動かない」って聞いたら
誰かがPOSTをGETにしてみって教えてくれたので
どう違うのか気になったので。
ちなみにGETにしても動かない・・・ なんで?
i-modeとEzwebなら動くのに。
どんなCGIかもわからなきゃ・・(略
0481455
02/06/06 05:18ID:lJdhlkUBもう一度質問させて頂きます。
kentwebさん配布CGIのcosmo gatexを使用していますが
同じメールアドレスからの多重登録に困っています。
色々cgiについて勉強したのですが上手く行きません。
力を貸して頂けないでしょうか…
0482nobodyさん
02/06/06 12:30ID:???@lo = <IN>;
クローズ
略(@lo){
if($メールアドレス eq $登録しようとしたメール){
&error(きさまーーーーーーーーーーーーーーーー!!!!!)
}
}
0483nobody
02/06/06 21:19ID:8Pq10XEpUSER_ID登録処理って辺りがヒントだ。
ってそのままか(w
0484nobodyさん
02/06/06 22:19ID:2AVSGszZCGIまわり、スクリプトも含めてすべてsjisにしました(それが一番てっとり早かったので)。
perlメモなどでもEUCが一番問題発生しにくいとのことなので
今まで意味もわからずEUCを使ってきましたが、
実際sjisでどんな問題が起こる可能性があるのですか?
0485nobodyさん
02/06/06 22:19ID:0WEL9zsI0487nobodyさん
02/06/06 22:28ID:0WEL9zsIありがとうございます
ユーザが自分で登録できるregist.cgiを併用してのことかな?
regist.cgiの
<input type=hidden name=email value="$FORM{'email'}">
で得られるメールアドレスと
print LOG "$id<><>0<>$memo<><><>$name<>$email<>\n";
で記録されるログのメールアドレスを>>482のように処理すればいいんだよ。
0489nobodyさん
02/06/06 22:34ID:???自分も気になったので探してみたら、こんなん見つけた
http://www2d.biglobe.ne.jp/~gama/cgi/jcode/jcode.htm
0490484
02/06/06 22:48ID:???ゲッ!! ま、まずいっす..
スクリプトだけeucにして、表示とデータファイルだけ
sjisにすれば問題ないでしょうかね..
データ読み込む度にeucに変換して書き出すたびにsjisに変換、
ってあんま美しくないけどしょうがないかなあ
なんにしろ、ありがとうございます>>489さん
0491481
02/06/07 06:19ID:TU5ebGXRどぉもありがとです!
きさまーーーーー!!には超笑いました。
0492nobodyさん
02/06/07 14:32ID:???わからないので教えていただけますか?
・ボタンではなく文字列やイメージをクリックしたときに、
CGIスクリプトに対してPostで情報を送りたい
→URLに送った内容を出したくないのです
・Javaスクリプトを使いたくない
→無効にしている方もいると思うので
・cookieも使いたくない
→無効にしている方もいると思うので
可能でしょうか?
0494nobodyさん
02/06/07 15:16ID:???<input type=image>でできないかな?
0495nobodyさん
02/06/07 16:28ID:???答え:可能です
<BUTTON>
<IMG SRC= .......
</BUTTON>
参照:
http://www.zspc.com/html40/interactivity/form.html#button
0496nobodyさん
02/06/07 16:41ID:???ひらがながはいるとだめです。教えてください。
0497496
02/06/07 16:47ID:???open NAME_, "$namelog";
$name_ = <NAME_>;
close (NAME_);
if ($name_ =~ /,$name/) {
print $error2;
exit(0);
}
$nameがformから送られてくるもので$namelogが探す一覧です。
漢字以外はマッチしません
0498nobodyさん
02/06/07 17:58ID:???0500nobodyさん
02/06/07 21:07ID:???JPERL使うとか。
EUCなら、
$EUC_JP_ = '[\x00-\x7F]|[\xA1-\xFE][\xA1-\xFE]|\x8E[\xA1-\xFE]|\x8F[\xA1-\xFE][\xA1-\xFE]';
$str =~ /^(?:$EUC_JP_)*,\Q$name\E/;
>>498
indexも日本語はうまくいきませんな。確か。
0501500
02/06/07 21:16ID:???よく考えたら、`,'があるなら、
$str =~ /,\Q$name\E/;
で十分?
0502nobodyさん
02/06/07 21:45ID:???http://www.mistlarouge.com/game/efm/
↑みたいなサイトがあるんだけど、これって、昔はやったFFAじゃない?
検証きぼんぬ
ちなみに、FFA本家は
http://mati.wnj11.jp/index2.htm
FFA(改)本家は
http://www.gun-online.com/
0503あぼーん
NGNG0504nobodyさん
02/06/08 00:38ID:IssrbWFC0506nobodyさん
02/06/08 01:05ID:lYR6rg870508nobodyさん
02/06/08 01:21ID:lYR6rg87どう書けばよいですか?
0509nobodyさん
02/06/08 01:33ID:???配列要素に重複がない場合
@hash{@array} = (0..$#array);
@matched = map { $hash{$_} } grep { /PATTERN/ } @array;
print "@matched\n";
こんな感じ?
0510nobodyさん
02/06/08 01:35ID:lYR6rg87やってみます。
0511nobodyさん
02/06/08 17:08ID:WOT+eMUF教えてください。
0512nobodyさん
02/06/08 17:36ID:???.htaccessとかを勉強するとわかるようになる。
ここで教えるには板違いだから、自分でがんばろう。
0513nobodyさん
02/06/08 17:36ID:???2chのCGIは拡張子.cgiだけんど?
コレとか→ <form method=POST action="../../../bbs.cgi">
コレとか→ http://pc.2ch.net/test/read.cgi/php/1019561283/510
0514nobodyさん
02/06/08 17:37ID:???> どうして2ちゃんねるはCGIなのに拡張子.cgiじゃないんですか?
とりあえず、2chはCGIではありません。
2chで使用しているCGIスクリプトのことなら、幾つか理由が考えられます。
1.CGIスクリプトではないから
2.パフォーマンスの為に静的なHTMLを吐くCGIスクリプトだから
3.つーかCGIスクリプトと拡張子.cgiの間には何の関係も無いのでCGIスクリプトの拡張子=.cgiと考えることは本当は間違い。
2chの場合は2かな。
0517511
02/06/08 18:01ID:WOT+eMUF…よくわかんないや。勉強します。
0518代表
02/06/08 18:27ID:???0519nobodyさん
02/06/08 20:02ID:???>>514 みたいに中途半端に知ったか君の知識を鵜呑みにする >>513 とか
いるし(w
はっきり言うが、>>514 は嘘。>>515 が圧倒的に正しい。
0520nobodyさん
02/06/08 20:02ID:???Perlでソケットを使用したプログラムのスケルトン
貼り付けてくれませんか?
接続>送信>切断
おねがいできますか?
0523nobodyさん
02/06/08 20:13ID:MlccEoMeどの過去ログですか?
0524nobodyさん
02/06/08 20:18ID:???ごめん。perl スレの 12 だ
http://pc.2ch.net/test/read.cgi/php/1019917048/753
スレ読めないないからコピペするね
753 名前:nobodyさん 投稿日:02/05/20 (月) 01:01 ID:???
ソケットのことでついての質問です。
#!/usr/local/bin/perl
use IO::Socket;
use IO::Select;
@servers = ('www.zdnet.co.jp','www.asahi.com',);
print "Content-type: text/html\n\n";
foreach $server (@servers){
$socket = IO::Socket::INET->new(PeerAddr => $server,
PeerPort => 80,
Proto => 'tcp',
);
print $socket "GET /index.html\r\n";
print $socket "Host: $server:80\r\n";
$socket->flush();
print <$socket>;
}
これでページを取得出来るんですが、
ページを全部読み込んでしまいます。
これを一部のみ読み込むにはどうすればいいのでしょうか?
と、、、
print <$socket>;
これを変数にあてはめて表示するにはどうすれば、、、。
0525514
02/06/08 20:21ID:???>>511の質問を解釈するに当たって
(1)http://pc.2ch.net/test/read.cgi/php/1019561283/
(2)http://pc.2ch.net/php/index.html
の二通りが考えられるだろ。この点はいいよな?
で、俺は、(1)の拡張子は.cgiだから質問者の意図は(2)のことだと考え
>>514のように書いたが、何かおかしかったかね?
0527nobodyさん
02/06/08 21:24ID:???0528nobodyさん
02/06/08 21:28ID:MlccEoMeサンクス!
0530nobodyさん
02/06/09 02:00ID:5YEPjzCA0531nobodyさん
02/06/09 02:44ID:???0532nobodyさん
02/06/09 18:13ID:???use IO::Socket;
これやりたいのだけど
ppmでなんてコマンドうったらええの?
0534nobodyさん
02/06/09 18:32ID:???ホントにそのコマンドでええの?って感じ
なんていうか、それ!っ手感じの
文献がみあたりません。
0536nobodyさん
02/06/09 18:37ID:???prompt$ perldoc [Module, program]
でドキュメントが読める。英語だけど。
perldoc ppm
とか
perldoc IO::Socket
とか。
0538nobodyさん
02/06/09 18:51ID:???これは成功しますた。
ソケットが使えるということでよろしいですか?
#!/www/bin/perl
use IO::Socket;
print "Content-type: text/html\; charset=EUC-JP\n\n";
print "コマネチッ!";
0539nobodyさん
02/06/09 18:55ID:???えーごはわかりません
しかし、Winsock2.0と同じと考えて
よろしいですか?
メソッドも同じようなのばかりだったので
手順はかなりことなる?
0540nobodyさん
02/06/09 18:59ID:???0541nobodyさん
02/06/09 19:01ID:???/∵∴∵∴\
/∵∴∵∴∵∴\
/∵∴∴,(・)(・)∴|
|∵∵/ ○ \|
|∵ / 三 | 三 | / ̄ ̄ ̄ ̄ ̄
|∵ | __|__ | < うるせー馬鹿!
\| \_/ / \_____
\____/
0542nobodyさん
02/06/09 19:46ID:???Winsock2でBerkleyスタイルの関数(bind,listen,...)を使ってたなら
perlのIO::Socketもまあ同じように使えるでしょう。
MSスタイルのWinsockAPI(WSAなんちゃら)のほうはよくわからんです。
でもほんとに英語のドキュメント一切よまずにプログラム作ってんの?
そっちのが信じられん。いやでも読まざるを得ないと思うんだが。
0543nobodyさん
02/06/09 19:57ID:???Win房はひたすら日本語訳を待ちます
しかたなくBSD系の時は英語、否、、単語を読みます
Denger、Safe、Install、Ok これで凌いでいるが何か
0545nobodyさん
02/06/09 20:41ID:???しかし、これでつながらんぞ
#!/www/bin/perl
use IO::Socket;
use IO::Select; ← これ意味わからん
@servers = ('www.zdnet.co.jp','www.asahi.com',);なんでふたつなんだ?
print "Content-type: text/html\n\n"; ← ほうそれで
foreach $server (@servers){ ← なんだ連想か?
$socket = IO::Socket::INET->new(PeerAddr => $server, ← なんだ=>って
PeerPort => 80, ← 構造体ではないな
Proto => 'tcp',
);
#######なに?これで接続できるのか?
print $socket "GET /index.html\r\n"; これはSend()か
print $socket "Host: $server:80\r\n"; なんで2回にわける
しかも、\n\nじゃないのか?
##########レシーブにあたる関数がないぞ!
$socket->flush(); ← クローズソケットか?
print <$socket>; なんだ?
0548nobodyさん
02/06/09 22:34ID:???0552548
02/06/09 23:04ID:???パーミッションのが変化しません。(FFFTP使用です)
0553nobodyさん
02/06/09 23:11ID:???http://www.google.co.jp/search?q=%74%72%69%70%6F%64%20%43%47%49%20%83%70%81%5B%83%7E%83%62%83%56%83%87%83%93%82%CC%95%CF%8D%58%82%CC%95%4B%97%76%82%CD%88%EA%90%D8%82%A0%82%E8%82%DC%82%B9%82%F1&hl=ja&lr=
二度と来るな
0554548
02/06/10 00:02ID:???0555nobodyさん
02/06/10 00:14ID:???Tripodでは、拡張子が「.cgi」、「.pl」のものを実行権限があると自動的に認識し、実行しますの で、パーミッションの変更の必要は一切ありません。
、だそうな。これが使用者が変える必要が無いことを意味するのか、
鯖の設定でうまくいかない時はあきらめろということかは分からん
0556名無しさん@お腹いっぱい。
02/06/10 11:49ID:5eebash+新規ユーザーがアカウント登録をする際に重複アカウントがないか
チェックするcgiをつくってほしいという要望なんですが、実際に
公開されているスクリプトとかこの関数を使えばいいとか、何か
情報ください。Perlに関しては全くの初心者です。
0557nobodyさん
02/06/10 12:07ID:???アカウントはWebサーバー利用者のアカウントか?
そんなものをCGIから参照できるようにするなといいたいが、
やるならノーマッチ目的だから
http://www.din.or.jp/~ohzaki/perl.htm#JP_Match
この辺読んでみるとよかろう。
0558556
02/06/10 17:50ID:OTakUXl/そうです。Webサーバーのアカウントです。
よくレンタルサーバーでやってるアカウントチェックみたいなやつです。
テキストボックスに希望アカウントを入力してボタンを押すと、
アカウントが空いているか、使用済みか を表示するという
ものをつくりたいんです。
0559nobodyさん
02/06/10 18:58ID:???0560nobody
02/06/11 01:37ID:al4egrbe0561nobodyさん
02/06/11 06:16ID:g6WS6tIa0562nobodyさん
02/06/11 06:53ID:???0563556
02/06/11 09:25ID:AI8qzrkT昨日「すぐわかるperl」という本を買ってきました。
・とりあえずアカウント一覧をつくる
・フォームをつくり変数を受け取る
・ifでマッチするなら「NG」をprint、マッチしなければ「OK」をprint
ってかんじでつくればいいんでしょうか?
561さんの「/home以下にディレクトリがあるかどうか」という場合は
なにか便利な方法があるんですか?
こっちのほうが管理が楽そうなのでやってみたいです。
また、他に何かヒントやアイデアがありましたら教えてください。
よろしくお願い致します。
0564nobodyさん
02/06/11 10:52ID:GLgx63Ns0566nobodyさん
02/06/11 12:33ID:nbFvKVaAperlで「変数内にキーワードがいくつあるか」を調べるにはどうすればいいんでしょうか?
例えば$a="2chでの2002年6月12日"ならば$aには"2"が四回登場しますよね。そういうことを調べたいのですが・・・。
0567nobodyさん
02/06/11 13:28ID:???$a = '2chでの2002年6月12日';
$b = '2';
$count = 0;
while ($a =~ /$b/g) { $count++ }
print "Content-type: text/plain\n\n";
print "「$a」 の中に $b は $count 個";
0569566
02/06/11 13:49ID:???$count = howmany($a,$b);
みたいに直接(?)調べる方法ってのは存在しないんですね…。
ありがとうございました。自分で何とかルーチン書いてみます(>>567では永遠に回る気が…)。
0571nobodyさん
02/06/11 15:03ID:bp5oCR3J$countは真(1)か偽(0)にしかならないぞ。
>>567が正解。マッチするものを全て見つけたら、ちゃんと終了してくれます。
0572webmaster
02/06/11 16:05ID:o3eoRD7n自分のHPドコから見に来てるか知りたいのです。
(正直に言えば、自分以外の人がどのくらい見ているのか知りたい)
0573nobodyさん
02/06/11 16:10ID:???定番(Perlの神様)
http://www.kent-web.com/data/report.html?
上の改造版で多機能(設置は若干難しいかも)
http://air.vis.ne.jp/at-works/access/access.html
■ このスレッドは過去ログ倉庫に格納されています