###前提・実現したいこと
vagrant環境で会員登録したらdatabaseへ書き込みができるファイルをそのまま、
さくらvpsへ移行したら、databaseへ書き込みをしなくなりました。
どうすれば解決できるのかがわかりません。同じような症状になった方いましたらおしえてください。
###発生している問題・エラーメッセージ
登録画面の情報をusersテーブルに Insertしてくれなく解決できなくて困っています。 機能を実装中にエラーメッセージ等はでてきません。 該当テーブルへinsertが止まっている状況です。 database内の内容は閲覧できていて、表示できています。 パーミッションも書き込みはできるuserです。
###該当のソースコード
会員登録画面(php) <?php include 'app/config/database.php'; include 'app/functions/user.php'; include 'public/view/header.php'; ?> <?php // 送信ボタンが押された時に下記を実行 if ( $_POST ) { // 必須項目に情報が入っているかを確認する if ( !empty( $_POST['user_name']) && !empty( $_POST['user_email']) && !empty( $_POST['user_loca']) && !empty( $_POST['user_style']) && !empty( $_POST['user_password']) && !empty( $_POST['user_pass_check']) ) { // 2回入力したEmailがマッチしているかを確認する if ( $_POST['user_password'] === $_POST['user_pass_check']) { // エラーがない場合 $user_name = $_POST['user_name']; $user_email = $_POST['user_email']; $user_loca = $_POST['user_loca']; $user_style = $_POST['user_style']; $user_password = $_POST['user_password']; // 会員登録する save_user($user_name, $user_email, $user_loca, $user_style, $user_password, $mysqli); } else { echo "パスワードが一致しません"; } } else { echo "エラーがあります"; } } ?> <br> <div class="row"> <div class="text-center"> <h2>会員ID登録</h2> </div> </div> <br> <form action="" method="post"> <div class="row"> <div class="large-12 columns"> <label for="user_name">ニックネーム</label> <input type="text" class="form-control" id="user_name" name="user_name"> </div> <div class="large-12 columns"> <label for="user_email">Email</label> <input type="email" class="form-control" id="user_email" name="user_email"> </div> <div class="large-12 columns"> <label for="user_loca">ロケーション</label> <input type="radio" class="form-control" id="user_loca" name="user_loca" value="ストリート">ストリート <input type="radio" class="form-control" id="user_loca" name="user_loca" value="パーク">パーク </div> <div class="large-12 columns"> <label for="user_style">スタンス</label> <input type="radio" class="form-control" id="user_style" name="user_style" value="レギュラー">レギュラー <input type="radio" class="form-control" id="user_style" name="user_style" value="グーフィー">グーフィー </div> <div class="large-12 columns"> <label for="user_password">パスワード</label> <input type="password" class="form-control" id="user_password" name="user_password"> </div> <div class="large-12 columns"> <label for="user_pass_check">パスワードの確認</label> <input type="password" class="form-control" id="user_pass_check" name="user_pass_check"> </div> <div class="text-center"> <button type="submit" class="button large">登録する</button> </form> </div> </div> <?php include 'public/view/footer.php'; --------app/functions/user.php------------- <?php function save_user($user_name, $user_email, $user_loca, $user_style, $user_password, $mysqli) { $user_name = $mysqli->real_escape_string($user_name); $user_email = $mysqli->real_escape_string($user_email); $user_loca = $mysqli->real_escape_string($user_loca); $user_style = $mysqli->real_escape_string($user_style); $user_password = password_hash($user_password, PASSWORD_DEFAULT); $query = "INSERT INTO users( user_name, user_email, user_loca, user_style, user_password ) VALUES( '$user_name', '$user_email', '$user_loca', '$user_style', '$user_password' )"; $result = $mysqli->query($query); echo "<div class='alert alert-success'> <a href='#' class='close' data-dismiss='alert' aria-label='close'>×</a> 会員登録が完了しました。</div>"; } function login_user($user_email, $user_password, $mysqli) { $user_email = $mysqli->real_escape_string($user_email); $user_password = $mysqli->real_escape_string($user_password); $query = "SELECT user_id, user_email, user_password FROM users WHERE user_email = '$user_email'"; $result = $mysqli->query($query); // パスワード(暗号化済み)とユーザーIDの取り出し while ($row = $result->fetch_assoc()) { $db_hashed_pwd = $row['user_password']; $user_id = $row['user_id']; } // ハッシュ化されたパスワードがマッチするかどうかを確認 if (password_verify($user_password, $db_hashed_pwd)) { $_SESSION['user'] = $user_id; echo "<div class='alert alert-success'> <a href='#' class='close' data-dismiss='alert' aria-label='close'>×</a> ログインが完了しました</div>"; } else { echo "エラーが発生しました"; } }
回答1件
あなたの回答
tips
プレビュー