PHP,MySQL初心者です。
下記PHPファイルを実行し、インサートする度に
AUTO_INCREMENTでid(INT,AUTO_INCREMENT)を1づつ増やしテーブル内にレコードを
増やしていきたいのですが、一回実行すると「2147483647」がidカラムに入ってしまい、
2回目以降は、
SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '2147483647' for key 'ID'のエラーが出てしまう状況です。
PHPファイル内容:
<?php if($_POST['singnup_btn']){ $name = $_POST["name"]; $mail = $_POST["mail"]; $password = $_POST["password"]; //出力確認 echo $name; echo $mail; echo $password; try { // DB情報取得 include('./DBSighIn.php'); $pdo = new PDO($dsn,$user,$password, [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, ] ); //Insert $stmt = $pdo -> prepare("INSERT INTO USER(NAME, EMAIL, PASSWORD) VALUES ('$name', '$mail', '$password')"); $stmt->execute(); } catch (PDOException $e) { // エラーが発生した場合は「500 Internal Server Error」でテキストとして表示して終了する header('Content-Type: text/plain; charset=UTF-8', true, 500); exit($e->getMessage()); } } ?>MySQLテーブルの構造は以下の通り作成しております。
フィールド,種別,照合順序,属性,ヌル(NULL),デフォルト値,その他
ID,int(20),,,いいえ,None,AUTO_INCREMENT
NAME,varchar(30),utf8_general_ci,,いいえ,None,
EMAIL,varchar(100),utf8_general_ci,,いいえ,None,
PASSWORD,varchar(12),utf8_general_ci,,いいえ,None,
ご教示頂けると幸いです。
回答1件
あなたの回答
tips
プレビュー