下記のような会員登録ページの5つのファイルがあります。
register_human_ja.php
register_human_en.php
register_human.php
register_human_preview.php
register_human_thanks.php
register_human_ja.phpは、
日本人用のアドレスや名前や住所などの基本事項を入力するページです。※1
register_human_en.phpは、
国外人用のアドレスや名前や住所などの基本事項を入力するページです。※1
register_human.phpは、
スキルなどを入力するページです。※2
register_human_preview.phpは、
スキル入力ページからの遷移先になり、
前2ページ分の内容を表示して確認させるページです。
register_human_thanks.phpは、
確認ページからの遷移先になり、このページでDBへ登録処理をします。
※1.名前の正規表現の関係で日本人用と国外人用のページに分けました。
※2.日本人用や国外人用のページはありません。_jaも_enも次ページとしてこちらに遷移します。
ここで質問です。
【質問Ⅰ】
register_human_ja.phpには名前入力フォームが6つがあります。
漢字2フォーム
name1とname2
カナ2フォーム
name3とname4
ローマ2フォーム
name5とname6
register_human_en.phpには名前入力フォームが3つあります。
ローマ2フォーム
name1とname2
ミドルネーム1フォーム
name3
register_human_ja.phpとregister_human_en.phpの違いはこれだけです。
最終的には、
register_human_ja.phpとregister_human_en.phpの内容をセッションに保存していきながら
register_human_thanks.phpまで進んでいき、
register_human_thanks.phpでDB登録処理の記述をするわけですが、
外人が登録してきているのか、日本人が登録してきているのか、で処理は変わりませんか?
例えば下記記述でDB登録処理の記述をしておいて、
日本人ならこれでいけますが
外人だった場合name4とname5とname6がないからエラーになったりしないかという
質問なのですがどうでしょうか?
※実際のカラム名もname属性と同じです。
$con = mysql_connect('hostname', 'username', 'password'); $name1 = $_SEESION['name1']; $name2 = $_SEESION['name2']; $name3 = $_SEESION['name3']; $name4 = $_SEESION['name4']; $name5 = $_SEESION['name5']; $name6 = $_SEESION['name6']; $result = mysql_query("INSERT INTO address(name1, name2, name3, name4, name5, name6) VALUES('$name1', '$name2', '$name3', '$name4', '$name5', '$name6')", $con); if (!$result) { exit('データを登録できませんでした。'); }
これで何かしらのエラーになる場合、最悪は
register_human_ja1.php
register_human_en1.php
register_human_ja2.php
register_human_en2.php
register_human_ja_preview.php
register_human_en_preview.php
register_human_ja_thanks.php
register_human_en_thanks.php
というようなファイル構成にしてやるしかないと思いますが、できれば
register_human_ja.php
register_human_en.php
register_human.php
register_human_preview.php
register_human_thanks.php
で動作するようにしたいです。
【質問Ⅱ】
でも
register_human_preview.phpで書き直すボタンを後々追加したいと思ったら
register_human_preview.phpは
register_human_ja.phpか
register_human_en.phpの
どちらにもどっていいかわからないし、
jaとenでnameの個数も変わってくるから
それも視野に入れると
register_human_ja1.php
register_human_en1.php
register_human_ja2.php
register_human_en2.php
register_human_ja_preview.php
register_human_en_preview.php
register_human_ja_thanks.php
register_human_en_thanks.php
という風にするしかないのでしょうか?
試せばいいのですが、今開発環境にいないので質問させていただいてます。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/06/18 20:54