今日の進捗 個人情報の書き換え
登録型サイトとなると、自身の情報を登録する必要があります。
設定項目は少ないほどよいのですが、信憑性等々の問題も出てくるので、一応多めに設定しました。
となると、databaseへの入力も面倒になります。
1.phpでは、login中のユーザーからuserIDを判別、databaseで照合して、その人のデータを照合します。
userID:user-san (変更不可)
名前:user
ハンドルネーム:user-san-dayo
年齢:25
これをinputにvalueを用いて自動記入します。
<input name="userid" value="<?php echo htmlspecialchars($xxx['userID']);?>">という感じです。
これをinputのsubmitで送信ボタンから別ページに送信します。
(ここはaction=""にして、phpの処理に任せたほうが楽かもしれませんので、後々修正予定です)
飛ばされた2.phpでは、POSTされたデータをSESSIONの連想配列で管理します。
$_SESSION['postData'] = $_POST
という感じです。
これによって
$_SESSION['postData']['userID'] -> user-san
と表示できるようになります。
ここからは、処方登録と同じ流れです。
$sql = sprintf('UPDATE table SET name="%s" ...(略) ... WHERE userID ="%s"',
mysqli_real_escape_string($database接続,$_SESSION['postData']['name']));
mysqli_real_escape_string($database接続,$_SESSION['postData']['userID']));
mysqli_query($database接続,$sql) or die(mysqli_error($database接続));
unset ($_SESSION['postData']);
で、登録完了です。
databaseから登録内容を引っ張ってきます。IDに関しては変更不可なのでinputタグのdisableと使っています。
(名前と表示名てすとが逆になっているのは気にしないでください)
パスワードはハッシュ化されており、管理者側からも見えないようになっていますので表示できません。
※別ページで上書きして再設定してもらうことになります。
横長なので見えにくいですが、MySQLの方でもdatabaseがしっかりと書き換えられているのがわかります。
勿論、マイページの方でも内容が変わっていることが確認できます。