下記の通り、データ入力用のフロントエンド(html)、DB向けのクエリ発行用スクリプト(PHP)、
データベース(MySQL)で構成されたWebアプリケーションがあるとします。
index.html <データを入力>
↓
insert.php <DBへクエリ発行>
↓
DB <クエリに従って値をinsert>
index.html上のフォームに入力された文字列をDBに挿入するという主旨です。
この時、文字列に半角/全角スペースが含まれる場合は、半角/全角スペースを排除して
DBに挿入するとします。
半角/全角スペースを排除した旨の通知はしません。
このような値の正規化はどのタイミングで行うのがベストでしょうか?
正規化を行うチャンスはすべての段階で存在すると理解しています。
・index.html
Javascriptにて、submitする前に値を正規化してPHPへ渡す。
→ Javascriptが無効化されていると不可
(しかし、今時Javascriptを無効化するユーザがいるだろうか)。
・insert.php
ここで正規化してDBへ渡す。
→ 経験上、これが一般的と感じる。
・DB
ストアドプロシージャ等を用いて、正規化した値を挿入する。
→ 最近MySQLでプログラミングのようなことが出来ることを知り、ここで正規化するのも
アリではないかと考えた次第。
メンテナンス性やパフォーマンスなど、様々な観点からご意見を頂けると幸いです。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
> このような値の正規化はどのタイミングで行うのがベストでしょうか?
一言で言えば「処理の入口で行う」だと思います。
ただ、入口はいくつもある場合があります。
質問の例なら、ユーザーがブラウザ上で入力する
箇所が主な入口ですが、ハッカーがブラウザを
使わずに直接PHPにリクエストする可能性があるなら、
PHPのリクエスト受け付け部分も入口です。
データベースも、自分が管理しているプログラム以外から
アクセスされる可能性があるなら、そこも入口です。
場合によっては、それぞれの入り口全てでやらなければ
ならない場合もありますし、データベースの格納値に
スペースが入っていることが後の処理に影響しないなら、
特にデータベースアクセス時点でスペース削除する必要は
ないと思います。
また、PHPのリクエスト受け付け部でスペース削除しているから
といってブラウザ側でスペース削除する必要がないとも
限りません。
ユーザビリティ(使いやすさ)を考えて、文字入力段階から
スペースが入らないように正規化した方がよいかもしれません。
ただ、入口の文字入力段階ではなく、submitする時に
ユーザに知らせず勝手にスペース削除するだけでは意味がないと
思います。スペースが含まれているかチェックして、ユーザに
お知らせするか再入力させるならまだ意味があるかもしれません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
首吊りどこ締めるの
-
彼女のことが好きすぎて彼女の...
-
白血球が多いとどんな心配があ...
-
小数点以下を繰り上げたものを...
-
エクセルのラベルの値(文字列...
-
2つの数値のうち、数値が小さい...
-
Excel 0目標に対して数字があ...
-
EXCELで条件付き書式で空白セル...
-
勃起する時って痛いんですか? ...
-
エクセルで数式の答えを数値と...
-
エクセル指定した範囲からラン...
-
MIN関数で空白セルを無視したい...
-
知能テストは、今。 義務教育課...
-
ある範囲のセルから任意の値を...
-
精液の落とし方を教えてください
-
検便についてです。 便は取れた...
-
化合物のモル吸光係数データベ...
-
至急!尿検査前日にオナニーし...
-
EXCELで式からグラフを描くには?
-
【Excelで「正弦波」のグラフを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
首吊りどこ締めるの
-
彼女のことが好きすぎて彼女の...
-
白血球が多いとどんな心配があ...
-
勃起する時って痛いんですか? ...
-
検便についてです。 便は取れた...
-
精液の落とし方を教えてください
-
EXCELで条件付き書式で空白セル...
-
イタリアから帰国する際、肉製...
-
精子が黄色?
-
2つの数値のうち、数値が小さい...
-
これって喉仏ですか? 私は女性...
-
エクセル指定した範囲からラン...
-
甲状腺が腫れているが血液検査...
-
風俗店へ行く前のご飯
-
エクセルのラベルの値(文字列...
-
小数点以下を繰り上げたものを...
-
ある範囲のセルから任意の値を...
-
エクセルで数式の答えを数値と...
-
知能テストは、今。 義務教育課...
-
MIN関数で空白セルを無視したい...
おすすめ情報