-

みなさんは入力フォームのバリデーションチェックするとき、phpでしますか? それともJSでしますか?

みんなの回答 13 件

名無しさんの回答

どちらか?っていうのかな
チェックが必要になるデータにおいて、サーバーサイドでチェックするのは必須なので
画面での動きを見せるかどうかの違いしかないかと。

名無しさんの回答

特にサーバーサイドでやる必要がなければJavaScriptでいいんじゃない? いちいちサーバサイドのプログラム叩いて結果チェック結果表示して・・・ってのもなんかねぇ。最近はJSでチェックして問題ないならsubmitしてる。

名無しさんの回答

上の方と同様です。クライアント側で出来ることはJSで行い。それ以外をサーバー側で行います。ただ、クライアント側のJSは無効にされていることも考えられますので、サーバー側ではクライアント側で行ったチェックも行う必要があると思います。

名無しさんの回答

事情はあるのかもしれないけど、JavaScriptオフにしてるようなひとクセのある人からの問い合わせが欲しいと思うかどうか考えてみると、JSオフ環境のサポートはしなくていいかなって気になってくるよねw つまりフィルタリング的な意味でJSオフならsubmitすらできなくてもいいやっていう考え方はどうだろうw

名無し

いいね!

名無し

JSオフならsubmitボタン非表示w

名無しさんの回答

フォームの内容とその後のデータの扱いにもにもよるけど基本両方でやってる。
上の人も言ってるけど一回サーバいってエラーでたら、また戻ってきてってのが面倒くさいから、onchangeとかonblurとかで見張らして、できる限りJSでチェックさせる

名無し

面倒くさいって言っても、そこら辺の動きを全部ライブラリ化しておけば、何回も使い回せますよね?

名無し

書き方が悪かったですね。まったくもってその通りなんですが、個人的な問題で自分がフォーム入力するとき、全部入力して一回サーバに送られて不備があった場合戻ってくるのが何とも煩わしくって、だから入力しているときから既に監視させとくよってくらいの感じです。PHPでのチェックはぜんぜん軽視してないです!

名無し

あ****ほど。一度Postが発生して画面の再描画とかっていうのが嫌なのですね。確かにそういう人も多いですね。

名無し

最近そういうお客さんが多くて、個人的なアレルギーです。

名無しさんの回答

想定外のエラーを防ぐ為に、両方でやっても問題ないかと。
サーバー側の制御は必須だと思います。最後の砦な感じで。
Ajax使ってチェックはサーバー側の関数使い回すのもありかなぁ

名無しさんの回答

画面から隠したらsubmitできない。とか、ネタだと思いたいわ。
少し前はよく見かけたけど、まだいるのかな・・・

JSでどれだけチェックを堅牢にしたとしても
悪意のあるユーザには無いのと同じですよ。
XSSなどの温床にもなって致命的な事態になることもあるので注意したほうがいいです。

名無しさんの回答

私はサーバーサイドでやる方がいいと思います。確かに入力規則に沿ってなければ画面遷移してのチェックは製作者にも利用者にも不便かもしれませんね。
でも、ユーザーに制限つけるのといかがなんですかね?
JSオフってるからチェック出来ない、なら送信させないってのは、エゴですよね?
JSって便利にとかリッチにとかっていう意味で、使った方がいいと思ってるので

XSSとかSQLインジェクションとか、致命的にならないようなものはある程度プログラム側で吸収するような作りの方がいいのではないでしょうか?全角半角程度なら置換すればいいですし

名無しさんの回答

サーバーサイド必須です。
必ずJSでバリデートされたデータだけが送られてくると思ったら痛い目見ますよ。

名無しさんの回答

基本両方でしょ。

名無しさんの回答

PHPでやります。だって最終的にDBに入れるのはPHPだし、JSだとOFFにされたらオシマイだし。
セキュリティ的にもありえないし、2度手間になるので両方なんて書かないですね。
リアルタイムにエラー表示なんて滅多にないけどあってもAJAXで判定はPHPに任せます。

名無し

サニタイズとバリデーションは別物じゃないんですか?

名無しさんの回答

クライアントサイドチェックはユーザーのため
サーバーサイドチェックはクライアントのため

名無しさんの回答

どちらか1つと問われれば、絶対にPHPです。というより、セキュリティ的にPHP側でチェックしないのは有り得んです。

顧客から要望があれば、両方対応しますけどね。javascriptで実装してあげれば、ユーザーは何度も送信ボタンを押す手間が省けますし、javascript側のチェックもあって損はないです。

最終更新日:2012-07-01 (15,419 views)

関連するトピックス

ページ上部に戻る