07/08/25 17:36:07
JavaScriptによるクライアントサイドバリデーションはUI的には良いかもしれないけど
信頼性は皆無なので、結局サーバサイドでのバリデーションが必要になるよね。
だからバリデーションJavaScript自動生成を好んで実装したがるFW作者は少ないと思う。
フォーム要素とPHPオブジェクトのバインディングとは少し違うけど、
HTML_Template_Flexyでのフォーム要素の扱いは知っておいて損はないかも。
561:nobodyさん
07/08/25 18:24:06
>>560
QFだとバリデーションをひとつ設定すればサーバサイドとクライアントサイドを自動的にやってくれるんで
信頼性をサーバサイドで確保しつつUI利便性のためクライアントサイドで……ってのが
とても簡単にできたのよ
(自作ルールセットではさすがにそうもいかないけど)
最近じゃクライアントサイドの利便性はAJAX使えってことになっちゃうのかなぁ
でもそれ自体をやりやすくしてるフレームワークってあるのかな
AJAX対応のASP.NETとかはそれに近いことをやってた気がするが……
562:nobodyさん
07/08/25 18:45:15 CTb1TM+m
そもそも、フォームの生成なんてするもんじゃないだろ。
それに、主要フレームワークはほとんどビューヘルパーとか用意してるけど、
実際問題、ベタ書きした方が正確だし、デザイナーにも易しいだろ。
563:nobodyさん
07/08/25 19:07:06 S/G680iY
>>562
自分もそう思う。
564:nobodyさん
07/08/25 20:34:11
QF2なんてのも出てきてる。。。
なんだこりゃ。
565:nobodyさん
07/08/25 21:31:26
>>562
フォームがDBのテーブルへの操作窓であるような概念のアプリの場合は
クラスがバリデータとかを提供する方がむしろ自然になるような設計もあると思う
QFでそれをやろうとすると、HTMLとか$_POSTとかまでQFが面倒みちゃうんで
その辺が激しく気持ち悪いことになるのが難点だけど……
HTMLについてはベタ書きよりもきちんと生成されたものの方が正確って考え方もできると思うよ
あとデザイナはフォームがどうなろうと周囲の枠だけ書けば良いような場合もあるし。
結局いつもの「適材適所で」みたいな結論になっちゃうのが残念だがなぁ
566:nobodyさん
07/08/25 21:37:02 S/G680iY
POST値に対するvalidataだけなら、既存FWのクラスで十分だよ
>>556の言う「QFほど何から何まできちんとやってくれるものはないと思う」って
具体的になにをさしてるのかわからんわ。JSとか言ってるところ見ると
仔細なチェックまでFWに背負わせようとしてるんじゃないの。そんなの
スクラッチでやったほうが確実だっての。
567:nobodyさん
07/08/25 21:38:40
手書きは不確実です。絶対にミスが出ます。
568:nobodyさん
07/08/25 21:40:44
>>566
スクラッチでやるよりも、
何もしないほうが確実ですよ?
JavaScriptはほぼ自動生成です。
仔細なチェックは当然、phpコードで書きます。
それだけで自動でJavaScriptコードが生成されるのです。
569:nobodyさん
07/08/25 21:43:58
連続で真っ赤になって書かなくてもいいのにw
570:nobodyさん
07/08/25 21:45:52
反論できないなら書かなくていいのにwwww
571:nobodyさん
07/08/25 21:47:01
>>569
二人に即効で反論されたからって泣くなよ。
2ちゃんねる初心者か?w
572:nobodyさん
07/08/25 21:48:56
w多い人ですね
573:nobodyさん
07/08/25 21:50:24
二人の証明すべきだな。>>571は
574:nobodyさん
07/08/25 21:56:04
俺じゃないやつが書き込んだから二人というだけのことですが?
>>569は荒らすのが目的なのか?
違うのなら黙ってろ。
575:565
07/08/25 22:10:37
なんかいきなり荒れたなぁ……
べつに相手を言い負かそうとかどっちが勝ちとか考えずに
フレームワークとかフォーム処理とかの良い実装について語り合えるって程度でいいんだけどー
>>566
FWのクラスでも充分だしQFでも充分なバリデートが出来るって話でしょ。
FWの意義のひとつにはなるけどQFが不要になる理由にはならないよね。
あとQFでJSを自動生成できるのはサーバ側でできるチェックより劣るので
完全にUI利便性(POSTする前にすぐにエラーを見つけられるとかその程度)だけの問題。
576:nobodyさん
07/08/26 00:35:40
使いたいなら使えばいいと思うけど結局メンテしにくいのよQFで書いてると
フォームちょこっと変えたいだけなのに
ViewじゃなくてControllerにあるエレメント設定をいじらないといけないとか
ちょっと入力必須にしたいだけなのにエレメント設定しないといけないとか
でQFでやってるとフォームに関する全ての処理を
QFでやらないといけない感が漂ってきて
FWでMVCに沿ってるはずがだんだんQF主導のコードになっちゃうわけ
RequestもValidationもViewHelperも兼ねてるからそうならざるを得ない
多機能なライブラリが故にそれが仇となってFWに組み込みづらくなる
だからといってそれらの処理をFWによる機能とQFの機能で
中途半端に混ぜて使ってしまうともう最悪のパターンになる
だから、使わない
577:nobodyさん
07/08/26 01:05:13
QFを使うと氏ぬ
578:nobodyさん
07/08/26 01:52:27
いっそQFに合わせたFWというのはどうだろう。
webベースのエディタ画面でフォームを作成すると、
それに合わせたコードが吐き出されて、
ついでにDBのテーブルも作ってくれる。
これで名実共にWeb版VBの名を欲しいままに・・。
579:nobodyさん
07/08/26 02:03:09
フォームからDBスキーマを予想するのは無理ぽ
580:nobodyさん
07/08/26 04:06:26
>>579
マスタ系テーブルだけ先に手動で作らせておいて、
セレクトボックス、チェックボックス、ラジオボタンはそれを使わせる。
連関エンティティが必要になるようなフォームは自動生成からは切り捨てる。
idはサロゲートキー。
text=varchar
textarea=text
581:nobodyさん
07/08/26 04:53:39
すみません、恥を忍んで言いますと、私JSが全く書けないんです。
なので、JS付きのValidateしてくれるQFを見た瞬間!!!これだ!!と。
それだけなんです。JS覚えればQFなんていらないです。
でも覚えられないんです。すみませんでした。
582:nobodyさん
07/08/26 05:09:13
入力チェックのjsなんて難しくねーだろ
HTMLにjsが入るのも気に食わん
583:nobodyさん
07/08/26 05:59:51
JSでチェックするメリットはあんまりないよな
ajaxでやるならともかく
QFみたいなダサダサチェックは素人くさいよ
まだあるっちゃあるけど
584:nobodyさん
07/08/26 07:58:43
>>580
それはフォームからスキーマじゃなくて、スキーマからフォームでしょう?
579と逆なんだけど。
585:nobodyさん
07/08/26 08:56:04
まさかとは思うが、JSのみでValidateしてる人っていないよね。
586:nobodyさん
07/08/26 09:52:19
あくまでUIの快適さをあげるために存在する
追加の機能であるJavaScriptでの検証。
それもサーバー側でのチェックと同じ機能を
二回も書くなんて面倒。
DRYの原則に反する。
自動で生成されたら楽。
587:nobodyさん
07/08/26 10:08:32
自動生成だから使うってのはどうかと思うが。サーバチェックだけでいいし
でなきゃ、「UI」改善のための実装ならajax使うでしょ。
今時html埋め込みの単なるjs使う意味は?
588:nobodyさん
07/08/26 10:15:11
できる限り無駄な通信を避けたい時。
そんなことも想定できないほど脳が腐ってますか?
589:nobodyさん
07/08/26 10:19:05
JSチェックで削減できる通信量がどれだけあるのかって話だよな
貧者の発想という気がする
590:nobodyさん
07/08/26 11:03:26
結局サーバー側でもチェックするんだから
通信量なんか関係ないんじゃね?
591:nobodyさん
07/08/26 11:06:18
JSでチェックしてNGならsubmit止める(=通信させない)とかじゃね?
592:nobodyさん
07/08/26 11:13:50
>>591
当たり前すぎなんだが、そんなこも知らずに話してたんか。
だから通信が発生するAjaxは論外。
結局、否定しているやつはなんもわかってないじゃねーかw
593:nobodyさん
07/08/26 11:19:30
>>589
> JSチェックで削減できる通信量がどれだけあるのかって話だよな
> 貧者の発想という気がする
どうやっても、JavaScriptによるレスポンスの速さを
サーバー通信が必要な方法で超えることはできんよ。
問題は通信量ではなく、すばやい反応。
そこを勘違いしていたお前の負けだ。
594:nobodyさん
07/08/26 11:42:52
なんか「AJAX=新しい=あらゆる最強」みたいな都市伝説を信奉してる人がいる気がする……
郵便番号から住所への変換とかはAJAXで利便性も上がる一例だけど
項目のrequiredチェックなんぞにいちいちAJAX使ったら利便性下がる一方じゃないかな。
httpdの受け口が増えまくるのはサーバ負荷管理的にもおいしくない。
それが問題にならない程度のアクセス数/サーバ数の予算が取れるなら
負荷の点は問題にしなくてもいい場合もあるが。
595:nobodyさん
07/08/26 12:30:21
JSチェック支持派はJSでだっさいalert出したりしてんの?
動的にDOMいじってサーバと通信した場合と同じ画面にするなら
まあありとも思うが
そこまで手間をかけるならもういいわってなるな。
596:nobodyさん
07/08/26 12:35:30
>>594
ajaxで転送量減らすこともできるよ
別にリアルタイム性だけがajaxの利点でもない
597:nobodyさん
07/08/26 13:20:43
>>595
お前言っていることが極端だぞ。
動的にDOMいじってきれいな画面を作る手間をかけるのなら
もういいやと思うんだろ?
そこで普通はもういいやってことでJavaScriptのalertを出すだろ。
1.DOMいじる
2.JavaScriptのalert(コードを別に書く必要は無い)
3.なにもしない
1番がいやだからっていきなり3番の案に飛ぶなよw
それに、俺ならalert(msg)の代わりにdocument.getElementById("msg") = msg;に
置き換えるだけだが? これがそんなに手間がかかることかよw
598:nobodyさん
07/08/26 13:23:47
>>596
> ajaxで転送量減らすこともできるよ
転送を伴わないAjaxってJavaScriptと同じことだろw
> 別にリアルタイム性だけがajaxの利点でもない
操作性向上に必要なのはリアルタイム性です。
いまはリアルタイム性の高さが(通信をしない)
JavaScriptのエラーチェックの利点だねって話をしているのです。
599:nobodyさん
07/08/26 13:58:16
*'``・* 。
| `*。
,。∩ * もうどうにでもな~れ
+ (´・ω・`) *。+゚
`*。 ヽ、 つ *゚*
`・+。*・' ゚⊃ +゚
☆ ∪~ 。*゚
`・+。*・ ゚
600:nobodyさん
07/08/26 14:12:18
頑なにJSでのヴァリデートを否定してるヤツは単に書けないだけじゃねーのか。
別に俺は使わないが「利点がわからない」とか言ってる奴は本当に脳が爛れてるとしか思えんw
601:nobodyさん
07/08/26 14:38:46
最初の問題設定を改竄しちゃいけねーよ。
FWにQFを乗っけて使う煩瑣さの指摘があって、
それを打ち消すだけのメリットとしてjsエラーチェックの自動生成なるもの
が持ち上げられてるから、突っ込みが入ってるだけだろ。
602:nobodyさん
07/08/26 14:57:50
普通に>>585のあたりからJSのヴァリデートの利点そのものに疑問を抱いてるヤツいるじゃん。
そういう人に対して言ってるんですがw
603:nobodyさん
07/08/26 14:59:19
あぁ、ここは卑屈な捕らえ方する人ばっかだからやっぱ気にしなくていいや。
>>600と>>602は気にしないで楽しいお話を続けておくれ
604:nobodyさん
07/08/26 15:08:20
だったらはげしくスレ違い
605:nobodyさん
07/08/26 17:29:57
>>601
ちょっと誤解があるようだ。
おれが>>556で書いたのは
「打ち消すだけのメリットがjsエラーチェックにある」ではなく
「打ち消すほどのメリットではないが今のFWにも実装してほしい機能としてjsエラーチェックなどがある」なので
jsエラーチェックがなきゃヤダヤダ!と言ってるわけじゃない。
で「jsエラーチェックなんてそもそも不要じゃん」という意見が出てきたのだが
まぁそういう仕事もあるかもしれないけど、あれば便利だとおれは思うし、必要になる案件もある。
AJAX云々は完全に話がすれ違ってると思うが。
606:nobodyさん
07/08/26 18:07:32
話は変わるが俺のアイデアを聞いてくれ。
QFの利点はPHPでコードを書くだけでJavaScriptの
エラーチェックに変換してくれる。つまりエラーチェックコードを二度書かなくていいことにあるわけだが、
そのためにはaddRuleメソッドでrequiredを設定するというコードを書く必要がある。
そう、PHPのエラーチェックコードではなく、
フォームに、requiredなどの属性を設定するわけだ。
だから複雑なエラーチェックがやりにくい。
そこでだ、PHPコードそのものでエラーチェックできたら良いとは思わないか?
たとえば、if ( $value == "") {return false;} こういう感じだ。
しかしこのコードをよく見てほしい。なんとそのままでJavaScriptコードとしても通用してしまうのだ!
これを応用すれば、一つのコードでPHPでもJavaScriptでも通用するコードを作れるではないか。
つまり書くのは一度ですむんだ! ちなみに互換性が無い部分は関数を使用することで対処できる。
607:nobodyさん
07/08/26 21:58:18
>>598
画面を書き換えずにxmlなりjsonなりのデータだけをやりとりすることで
転送量を減らすことができる
それもまたajax。
まあJSチェックをサーバプログラムと別に書くのは基本的にダサい方法だが
十分に抽象化して自動生成するならクリーンにもなりうるな。
書くのは面倒くさそうだが。
608:nobodyさん
07/08/26 22:32:58
> 画面を書き換えずにxmlなりjsonなりのデータだけをサーバーとデータを転送してやりとりすることで
> 転送量を減らすことができる
あふぉか?w
609:nobodyさん
07/08/26 23:08:32
なんか文脈なしに非ajax的js過剰に擁護してんの一人だろ
もういいからどっかへ行けよ。スレ違いすぎる
610:nobodyさん
07/08/26 23:10:51
>>607
xmlやjsonってサーバーと通信するだろ普通。
そりゃサーバーと通信しないで使えないことも無いだろうけどさ、
何のためにxmlやjsonに変換するのかって話。
JavaScriptのオブジェクトそのままでいいじゃんか。
611:nobodyさん
07/08/26 23:23:21
必死です
612:nobodyさん
07/08/26 23:23:47
>>609
AjaxもJavaScriptも同じもんだろ・・・
613:nobodyさん
07/08/26 23:25:08
更に必死です
614:nobodyさん
07/08/26 23:25:37
みなさん。反論できないのがどっちかはいわなくてもわかるよね?
615:nobodyさん
07/08/26 23:28:32
互いに話が食い違ってるように見える
616:nobodyさん
07/08/26 23:30:45
そりゃ、「AjaxとかXMLとかJSONとかとりあえず関係ありそうな言葉を並べてみました。
でも意味はよくわかっていません。なにが間違っているというのですか?」な
素人が混じっているんだから無理ないなw
617:nobodyさん
07/08/27 00:07:28
いや、一人でやってるように見える
618:nobodyさん
07/08/27 00:25:28
>>605
じゃあそういうことでいいんじゃね。
馬鹿ひきつれて帰ってくれ
619:nobodyさん
07/08/27 00:34:50
レスを見たくないのなら自分が消えるしか方法はありません。
620:nobodyさん
07/08/27 01:26:01
なーんでそんなに相手を論破しようとがんばっちゃうのかね
621:nobodyさん
07/08/27 02:19:50
正直自前でやった方がPHPもJSもHTMLもすっきりすると思うんだが。
QF使ったソースって見辛くね?
622:nobodyさん
07/08/27 02:37:39
>>610
いやだから転送量を「減らす」って言ってるじゃん…
サーバサイドのvalidateもするんだよ、もちろん。
二人くらいのど素人が何を撃っているかも分からず銃乱射してる感じだな。
623:nobodyさん
07/08/27 02:49:11
通信回数と転送量を一緒にして、区別できていないようだな。
転送量が同じでも、PHPを1回呼ぶのと10回呼ぶのでは、
サーバーの負荷(主にCPU)が異なる。
ajax利用では、転送量よりも通信回数が意識されるところ。
624:nobodyさん
07/08/27 02:57:01
>>623
なんでそんな当たり前のこと言ったん
625:nobodyさん
07/08/27 03:11:56
でもそんなの関係ねぇ!
626:nobodyさん
07/08/27 03:49:30
∩___∩
ノ ヽ /⌒)
/⌒) (゚) (゚) |/ / はい
/ / ( _●_) ミ/ オッパッピー
.( ヽ |∪| /
\ ヽノ /
___ / /
(_____ /
\ \
) )
( \
\_)
627:nobodyさん
07/08/27 06:53:24
oreoreFW作ってるんだが
クラス名の命名規則からファイルの位置が決まるようにするのと
チンポニーのように事前にサーチして
クラスファイル位置のインデックスを作っておくの
どっちがベター?
628:nobodyさん
07/08/27 09:01:18
>>623
通信回数を減らしたところで、
サーバーにアクセスしたら
サーバーにアクセスしないよりも、
レスポンスは落ちるんだよ。
そのレスポンスの速さが重要だというのに。
629:nobodyさん
07/08/27 10:26:17
テトリスでも作ってんの?
630:nobodyさん
07/08/27 11:13:56
作っていませんが何の関係があるんですかねぇ?
631:nobodyさん
07/08/27 11:18:52
∩___∩
ノ ヽ /⌒)
/⌒) (゚) (゚) |/ / はい
/ / ( _●_) ミ/ PHP
.( ヽ |∪| /
\ ヽノ /
___ / /
(_____ /
\ \
) )
( \
\_)
632:nobodyさん
07/08/27 22:54:54
今まで読んできたけど
少なくとも
>>598
> >>596
> > ajaxで転送量減らすこともできるよ
> 転送を伴わないAjaxってJavaScriptと同じことだろw
こいつは馬鹿な素人だと言うことはわかった
633:nobodyさん
07/08/27 22:59:33
あと、これもアフォですね
>>623
> 通信回数と転送量を一緒にして、区別できていないようだな。
> 転送量が同じでも、PHPを1回呼ぶのと10回呼ぶのでは、
> サーバーの負荷(主にCPU)が異なる。
> ajax利用では、転送量よりも通信回数が意識されるところ。
多分自分の中のAJAXの利用方法しか思いつかないからこういう発言になっちゃうん
だろうけど
634:nobodyさん
07/08/27 23:49:43
Ajax = Asynchronous JavaScript + XML だ。
JavaScriptの一種に過ぎないんだよ。 よく覚えとけ。
635:nobodyさん
07/08/27 23:56:37
ははーん
ずっと当たり前のことを言うという新手の釣りだな
636:nobodyさん
07/08/27 23:59:39
引用だけして罵倒とか、実のあるレスがほとんどねぇ。
もう2chのレベルは初心者おしえて掲示板と変わらんがな。
それでいて口は悪いんだから最悪というか・・・。
637:nobodyさん
07/08/28 00:01:45
583 名前:nobodyさん[sage] 投稿日:2007/08/26(日) 05:59:51 ID:???
JSでチェックするメリットはあんまりないよな
ajaxでやるならともかく
こいつもあふぉだな。
AJAXで使われている言語はJavaScriptのだってーの。
638:nobodyさん
07/08/28 00:03:55
もう釣りなのか馬鹿なのか分からなくなってきた
混沌としすぎ
639:nobodyさん
07/08/28 00:10:42
ajaxでチェックするってどういう意味だろ?
ajaxならかっこいい画面になる?
否 ajaxだからといってかっこよくなるわけでもないし、
javascriptでもかっこよく作れる。
ajaxならダサい標準のダイアログボックスがでない?
否 ajaxでも基本は標準のダイアログボックスだし
javascriptでも標準のダイアログボックス以外を使える。
たぶん、チェックをクライアントコードじゃなくて、
サーバーに問い合わせてやるといいたいんだろうけどさ、
そんなことしたら、サーバーと通信する分遅くなるじゃん?
640:nobodyさん
07/08/28 00:14:15
サーバーに通信しないとチェックできない項目もある。
メアドが登録済みかどうかとか。
641:nobodyさん
07/08/28 00:23:08
俺が少し整理してみる。
1)クライアントサイドのみのJavaScriptチェック
入力不足や間違いを即座に指摘できる。
2)Ajaxでサーバサイドをも巻き込んだチェック
1.の発展版。サーバサイドでしかチェックできないような項目を即座に指摘できる。
3)サーバサイドチェック
最終チェック。これは必須。
1や2は利用者の操作性をうpする。うまく作りこめば確認画面は要らないかも。
642:nobodyさん
07/08/28 00:29:17
もうみんな閲覧条件としてJavaScript必須前提なのか。
643:nobodyさん
07/08/28 00:33:01
>>642
両方でチェックするに決まってるじゃん。
QFはサーバー側で書くだけで、自動的にJavaScriptコードを生成してくれる。
644:nobodyさん
07/08/28 00:52:05
何というwhile(1)な流れ
645:nobodyさん
07/08/28 00:56:19
はいはい。もうそのQFのJS自動生成の話いいから。
スレ違いだつーのに。
646:nobodyさん
07/08/28 00:58:15
逃げたw
647:nobodyさん
07/08/28 00:59:25
フレームワークがjsの自動生成までカバーするべきか否かにも繋がるので、あながちスレ違いというわけでも。
QFもフレームワークと言えばフレームワークだよね。
フォーム処理に特化した。
648:nobodyさん
07/08/30 17:06:50
symfonyとAkelosを比べた場合お勧めはどっちだろう。
誰か両方使ってみた。な人いる?
649:nobodyさん
07/08/31 01:27:24
>>648
何をどう比べる?
構成そのものは結構派手に違うと思うから、何について知りたいかによるんじゃない?
概念的な比較なのかな?
650:nobodyさん
07/09/01 04:07:45
PHP5で完全なMVC構造を維持してるコードが少ないフレームワークが欲しい
651:nobodyさん
07/09/01 04:22:30
PHP5で完全なMVC構造を維持してるコードがないフレームワークが欲しい
652:nobodyさん
07/09/01 05:18:08
完璧なMVCというものがそもそも存在しなくね?
インターフェイス間でやりとりするんだから少し混じり合うよ
653:nobodyさん
07/09/02 21:01:25
>>649
もう好きなだけ自由に比べてくらさい。
概念的な比較から、
各フレームワークのお勧めポイントとか
654:nobodyさん
07/09/02 21:26:47
さらに、その比較をどこかのwikiにでも書いてくれたら嬉しいかな。
655:nobodyさん
07/09/03 16:16:55
pieceでsubmitボタンじゃなくて、一般ボタンを使用してonClickイベントで
jsからサブミットさせても動かないんだけどなぜ?
656:nobodyさん
07/09/03 18:52:31
PEARやってみたんだけど、
フレームワークも似たようなもん?
ほしいクラスのあるスクリプトをインクルードして
それを使うってな感じでおk?
657:nobodyさん
07/09/03 19:31:30
おまえが呼ぶように書くのはライブラリ
呼ばれる部分を書くのがフレームワーク
まあフレームワークは大体ライブラリの側面も含んでるけど
658:nobodyさん
07/09/03 19:45:03
>>656
そんなレベルではまだはやい。フレームワークも知る必要もない。
659:nobodyさん
07/09/03 23:36:39
>>656
いや、もっと簡単。
必要なものは全てそろってる。
まずチュートリアルやってみ。
理解できたら8割習得!
660:656
07/09/05 14:29:14
チュートリアルが何かわからないので0割習得!
661:nobodyさん
07/09/05 16:23:04
>>660
URLリンク(cakephp.jp) どぞ!
662:nobodyさん
07/09/05 22:16:46
フレームワークを変更した人とかいるかな
今使っているフレームワークが変えても動くように設計していたりする?
ビジネスモデルはクラスとか作っておけばいいけど、viewは結構移植が難しいかな
663:nobodyさん
07/09/05 23:09:46
>>662
気持ちはわかるけど、やめておけ。ろくなことにならない。
664:nobodyさん
07/09/06 08:42:32
>>662
できたら公開してね
665:nobodyさん
07/09/06 10:13:24
意味あるのかないのか良く分からん。