会員登録で新規登録者だけを登録させたいです。
事前にemailが登録されてるかでcountをとり、count数が0なら新規登録、1ならなにもしないという処理にしようとしています。
しかし、カウント0でもデータベース上には登録されていなく、うまく処理せれてないようです。
書き方などおかしいところがあれば指摘して欲しいですl。
php
1//データベース接続 2 $conn = dbConnect(); 3 4 $sql = "SELECT COUNT(*) AS count FROM user_date WHERE email ='$encrypt'"; 5 $stmt = $pdo->query($sql); 6 $result = $stmt->fetchAll(PDO::FETCH_ASSOC); 7 foreach ($result as $row) { 8 $count = $row['count']; 9 } 10 11 echo $count; 12 13 if($count === 0){ 14 $sql = "INSERT INTO user_date (name, password, email) VALUES (?, ?, ?)"; 15 $stmt = $pdo->prepare($sql); 16 $stmt->bindValue(1, $name, PDO::PARAM_STR); 17 $stmt->bindValue(2, $hash, PDO::PARAM_STR); 18 $stmt->bindValue(3, $encrypt, PDO::PARAM_STR); 19 $stmt->execute(); 20 $pdo = null; 21 echo "会員登録が完了しました。<br>"; 22 echo "<a href='login.html'>ログイン画面</a>"; 23 } 24 25 if($count === 1){ 26 echo "すでに登録済みです"; 27 echo "<a href='login.html'>ログイン画面</a>"; 28 } 29 $pdo = null; 30 31
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2018/04/17 02:39
退会済みユーザー
2018/04/17 03:06 編集