phpでPDOを使用して会員登録を行いたいのですが、その際2つのテーブルに情報を入れるときに$sql2の文は実行されるのですがsql3のほうが実行されないです。
PDOを初めて触っての作業なので調べながらやりましたがよくわかりません。
どこが間違っているのか教えていただきたいです。
Mysql使用しています
php
1<?php 2ini_set("display_errors", 1); 3error_reporting(E_ALL); 4//フォームからの値をそれぞれ変数に代入 5$name = $_POST['name']; 6$pass = $_POST['pass']; 7try { 8 $db = new PDO('*******); 9} catch (PDOException $e) { 10 echo "データベース接続エラー :".$e->getMessage(); 11} 12$sql = "SELECT count(*) FROM user WHERE username=:name"; 13$stmt = $db->prepare($sql); 14$stmt->bindValue(':name', $name); 15$stmt->execute(); 16$member=0; 17$member = $stmt->fetch(); 18$a=$member[0]; 19if ($a > 0) { 20 $msg = '同じユーザー名が存在します。'; 21 $link = '<a href="signup.php">戻る</a>'; 22} else { 23 $sql2 = "INSERT INTO user (username, passwd) VALUES (:name, :pass)"; 24 $stmt2 = $db->prepare($sql2); 25 $stmt2->bindValue(':name', $name); 26 $stmt2->bindValue(':pass', $pass); 27 $stmt2->execute(); 28 $sql3 = "INSERT INTO userscore (name) values (:name)"; 29 $stmt3 = $db->prepare($sql3); 30 $stmt3->bindValue(':name', $name); 31 $stmt3->execute(); 32 $msg = '会員登録が完了しました'; 33 $link = '<a href="login_form.php">ログインページ</a>'; 34 ?> 35<h1><?php echo $msg; ?></h1><!--メッセージの出力--> 36<?php echo $link; ?>
回答1件
あなたの回答
tips
プレビュー