2011年10月1期WebProgCGIPerl入力チェック TOP カテ一覧 スレ一覧 削除依頼
・ 次のスレ
CGIで出納帳を作ろうのスレ
Webアプリで帳票印刷
【Perl上級者コーナーPart01】
★ブラクラの製造方法を教えてください。


CGIPerl入力チェック


1 :02/07/06 〜 最終レス :2011/12/11(日)?2BP(1960)
何作るにもだいたい必要だが地味にめんどくさい。
日本語対応の便利な汎用入力チェックモジュール
(まずPerl)を作ろうyo。

2 :
お前、まず自分で作ってからとは思わんのか?
もっともらしいこと書きやがって、このクレクレ野郎がっ!

3 :
Jcode.pm

4 :
まぁ、1の言うことが分からなくもない。
文字数チェックとかだるいもんな。

5 :
>>2
おまえはどのスレでもそうやって、同じ煽りいれてんだな
わからなかったらほっとくのが普通なんだよ。
厨房のおまえは板的に必要ないよ。
カマッテ君が!

6 :
cgi-lib.pl
CGI.pm

7 :
>>1はCPANを知っているのか?

8 :
>>2
こいつは、このスレの 71 じゃないのか?(藁
http://pc.2ch.net/test/read.cgi/php/1024741312/71-

9 :
>3
jcode.plでよくない?
>6
use CGI ':all';#楽
>7
cpanにこんなモジュールあるかな?
Excel作りたいとか画像いじりたいとかは検索できるけど
何処みたらいいのかわからんのです。
今やってる方法でここのフォーム入力チェック
するとしたらこんな感じ
my @ParamConf=(
{name=>'name', notnull=>1, length=>128, disp=>'名前'},
{name=>'mail', notnull=>0, length=>256, code=>\&chk_mail, disp=>'E-mail'},
{name=>'msg', notnull=>1, length=>3000, disp=>'メッセージ'}
);
こんなハッシュの配列作ってループでname(input name=xxxと同じ)をチェックしてひっかかればdispを使って
「名前 が未記入です」とか日本語エラーメッセージを吐いてやる。
メアドとか正規表現でチェックしたいのはコード参照付けといて専用のサブルーチンにわたしてチェックさせる。
でも、これだとメールアドレスを確認用にもう一度入力など
複数のパラメータを見てエラー判定する場合は使えなくて
その場しのぎのif文付け足して対応してる現状です。

10 :
age

11 :
http://search.cpan.org/search?dist=CGI-ArgChecker

12 :
>>11
ありがとう StringとかCGIの下を探しまくればよかったのね
Checkerとか
だいぶ参考になりました。
とりあえずString::Checkerは利用するか
ほしいとこだけ盗みます。
他のパラメータでエラー条件が変わるとか配列のvalue(チェックボックスとか)はできないっぽい?けどそのへんもうすこし読んでみるyo
こんな方法でやってるけどどーよとかあれば教えてほしいっす。

13 :
CGI::Validate
http://search.cpan.org/dist/CGI-Validate/

14 :
よく「サーバにモジュールがインスコされていないので使えません」とか言う香具師
がいるけどさ、perlのモジュールなんて多くは単なるテキストなんだから、ホームに
コピーしてuse libすれよゴルァ、と思うんですがどうでっしゃろ。

15 :
~/.cpanにある設定ファイルでインストール先を自分のhome配下に指定して
CPANからいただく。そしてuse lib。
telnetやらでloginできなきゃいけないがの。

16 :
やっちまった。きます。

17 :
BEGIN{ push @INC, './lib'}
BEGIN{ unshift @INC, './lib'}
のが好き

18 :
結構めんどくさい部分ではあるから
みんなで考えるのもいいかもしれない。
個人的には9のやり方をもう少し煮詰めて
モジュール化できたらいいなーとか思った。

19 :
まとまりなく終了

20 :
↑勝手に終わらせるなボケ

21 :
>>18
まだよくみてないけど13のCGI::Validateがそれっぽいのでは

22 :
例えばtelnetの使えないレンタルサーバーの場合に、
pure perlならモジュールをFTPでアップして
「use lib」とかすればいいと思うけど、
結構大きなモジュールの場合(例えばDBIとか)
落としてきたtar.gzの中身はファイルやフォルダが
いっぱいあってどれをどのようにUPすれば分からないんだけど。

23 :
README.txtに書いてあるはずだが。

24 :
すんません PerlMagickのモジュールを
FreeBSDのサーバで使いたいんですが
ユーザー権限でのみ作業すると
具体的にはどのようにやればいいんでしょうか?

25 :
>>24
管理人さんに頼んでImage::Magickをインストールしてもらう。
これが一番確実。

26 :
>>13
しかし、何時見ても Perl のソースは読みづらい&使いづらいな。

27 :
>>26
それはperlが悪いわけではなく、プログラマの問題ではござらぬか。

28 :
CGI::Validateつかいづら

29 :
print "hogehoge";
  ・
  ・
  ・
print "hogehoge";
うざっ

30 :
CGI::Validateのサンプル眺めてると、
使わない方がよほどスッキリ書ける気がするのですが電波でしょうか?

31 :
こう書けるの
use CGI ':all';
my %p = map{$_ => [param($_)]}param();
my @error = param_check(
[
 {name=>'name', notnull=>1, length=>128, disp=>'名前'},
 {name=>'mail', notnull=>0, length=>256, code=>\&chk_mail, disp=>'E-mail'},
 {name=>'msg', notnull=>1, length=>3000, disp=>'メッセージ'}
],
\%p
);
error(@error) if @error;
つくろう。

32 :
>my %p = map{$_ => [param($_)]}param()
ReadParse使おうよ。
あ、untiedな配列に入れ直すのが味噌か。

33 :
Data::CGIForm
http://search.cpan.org/dist/Data-CGIForm/
なかなかコレというものがないものですね

34 :

35 :
ぬるぽ

36 :
↑これでラストだ!おめでとう!

37 :
>>35
ガッ
# このスレまだあったんだな・・・。

38 :
.

39 :
ぬぽる

40 :
http://search.cpan.org/perldoc?Data::FormValidator
http://search.cpan.org/perldoc?FormValidator::Simple

41 :
>>31のハッシュに、正規表現を追加したらどうだろうか?
regex => qr/[0-9a-zA-Z]{6,}/

42 :
>>41
小学校分の亀レス乙。

43 :2011/12/11(日)?2BP(1960)
Perlの次は?
TOP カテ一覧 スレ一覧 削除依頼
・ 次のスレ
CGIで出納帳を作ろうのスレ
Webアプリで帳票印刷
【Perl上級者コーナーPart01】
★ブラクラの製造方法を教えてください。