user_ID のリストが事前入力されたテーブル [user_id, name] があります。ユーザーが自分の user_id に対して名前を登録できるようにするフォームを作成したいと考えています。
基本的な HTML フォームは次のとおりです。
<form action="" id="contact-form" class="form-horizontal" method="post">
<label class="control-label" for="inputName">Enter Name</label>
<input type="text" class="form-control input-lge" name="inputName" id="inputName">
<input type="hidden" class="form-control" id="hidUid" name="hidUid" value="<?php echo $reg_user_id?>">
<input type="submit" id="sub_button" class="btn btn-default btn-lg" value="Save"/>
</form>
$reg_user_id は、セッションによって設定された user_id 変数であることに注意してください。
これがPHPでの私の始まりです:
if(isset($_POST['hidUid']) && isset($_POST['inputName'])){
$inputName=$_POST['inputName'];
$inputUid=$_POST['hidUid'];
if ($stmtint = $mysqli->prepare("SELECT user_email FROM users WHERE user_ID=?")) {
$stmtint->bind_param("s", $inputUid);
$stmtint->execute();
$stmtint->bind_result($user_email);
$stmtint->fetch();
$stmtint->close();
if($user_email != "" && $inputName !=""){
$user_email="";
if ($stmtint = $mysqli->prepare("UPDATE users SET name=? where user_ID=?")) {
$stmtint->bind_param("ss", $inputName,$inputUid);
$stmtint->execute();
$stmtint->close();
echo "User saved successfully";
exit;
}
}
else{
echo "Please enter correct Name and password";
exit;
}
}
}
私の問題は、フォームが正常に送信されることですが、データベースが更新されません。PHP 出力にもコンソール ログにもエラーはありません。何か案は?