CGIPerl入力チェック
何作るにもだいたい必要だが地味にめんどくさい。
日本語対応の便利な汎用入力チェックモジュール
(まずPerl)を作ろうyo。 お前、まず自分で作ってからとは思わんのか?
もっともらしいこと書きやがって、このクレクレ野郎がっ! まぁ、1の言うことが分からなくもない。
文字数チェックとかだるいもんな。 >>2
おまえはどのスレでもそうやって、同じ煽りいれてんだな
わからなかったらほっとくのが普通なんだよ。
厨房のおまえは板的に必要ないよ。
カマッテ君が! >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文付け足して対応してる現状です。 >>11
ありがとう StringとかCGIの下を探しまくればよかったのね
Checkerとか
だいぶ参考になりました。
とりあえずString::Checkerは利用するか
ほしいとこだけ盗みます。
他のパラメータでエラー条件が変わるとか配列のvalue(チェックボックスとか)はできないっぽい?けどそのへんもうすこし読んでみるyo
こんな方法でやってるけどどーよとかあれば教えてほしいっす。 よく「サーバにモジュールがインスコされていないので使えません」とか言う香具師
がいるけどさ、perlのモジュールなんて多くは単なるテキストなんだから、ホームに
コピーしてuse libすれよゴルァ、と思うんですがどうでっしゃろ。 ~/.cpanにある設定ファイルでインストール先を自分のhome配下に指定して
CPANからいただく。そしてuse lib。
telnetやらでloginできなきゃいけないがの。
BEGIN{ push @INC, './lib'}
BEGIN{ unshift @INC, './lib'}
のが好き 結構めんどくさい部分ではあるから
みんなで考えるのもいいかもしれない。
個人的には9のやり方をもう少し煮詰めて
モジュール化できたらいいなーとか思った。 >>18
まだよくみてないけど13のCGI::Validateがそれっぽいのでは 例えばtelnetの使えないレンタルサーバーの場合に、
pure perlならモジュールをFTPでアップして
「use lib」とかすればいいと思うけど、
結構大きなモジュールの場合(例えばDBIとか)
落としてきたtar.gzの中身はファイルやフォルダが
いっぱいあってどれをどのようにUPすれば分からないんだけど。 すんません PerlMagickのモジュールを
FreeBSDのサーバで使いたいんですが
ユーザー権限でのみ作業すると
具体的にはどのようにやればいいんでしょうか? >>24
管理人さんに頼んでImage::Magickをインストールしてもらう。
これが一番確実。 >>13
しかし、何時見ても Perl のソースは読みづらい&使いづらいな。 >>26
それはperlが悪いわけではなく、プログラマの問題ではござらぬか。
print "hogehoge";
・
・
・
print "hogehoge";
うざっ CGI::Validateのサンプル眺めてると、
使わない方がよほどスッキリ書ける気がするのですが電波でしょうか? こう書けるの
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;
つくろう。 >my %p = map{$_ => [param($_)]}param()
ReadParse使おうよ。
あ、untiedな配列に入れ直すのが味噌か。
>>35
ガッ
# このスレまだあったんだな・・・。 >>31のハッシュに、正規表現を追加したらどうだろうか?
regex => qr/[0-9a-zA-Z]{6,}/ _
|O\
| \ キリキリ
∧|∧ \ キリキリ
ググゥ>(;⌒ヽ \
∪ | (~)
∪∪ γ´⌒`ヽ
) ) {i:i:i:i:i:i:i:i:}
( ( ( ´・ω・)、
(O ⌒ )O
⊂_)∪ 誰でも簡単にネットで稼げる方法など
参考までに、
⇒ 『半藤のブブイウイウレレ』 というサイトで見ることができます。
グーグル検索⇒『半藤のブブイウイウレレ』
JETQ9W596N