<?php
require_once 'Connect.php';
//Prepare HTML insert statement binding parameters
$stmt = $conn->prepare("INSERT INTO records (`Title`, `FirstName`, `LastName`, `Gender`, `DOB`, `Mem.Expiry`, `Mem.Type`, `EmailAddress`)
VALUES (:Title, :Fname, :Lname, :Gender, :DOB, :MemX, :MemType, :Email)");
$title = $_POST['Title'];
$fname = $_POST['Fname'];
$lname = $_POST['Lname'];
$gender = $_POST['Gender'];
$dob = $_POST['DOB'];
$memx = $_POST['MemX'];
$memtype = $_POST['MemType'];
$email = $_POST['Email'];
//Attempt row insertion by executing prepared statement
try
{
//Insert a row
$stmt ->bindParam(':Title', $title);
$stmt ->bindParam(':Fname', $fname);
$stmt ->bindParam(':Lname', $lname);
$stmt ->bindParam(':Gender', $gender);
$stmt ->bindParam(':DOB', $dob);
$stmt ->bindParam(':MemX', $memx);
$stmt ->bindParam(':MemType', $memtype);
$stmt ->bindParam(':Email', $email);
$stmt->execute();
}
catch (PDOException $e)
{
echo $e->getMessage();
}
?>
localhostに接続されたデータベースを更新するWebフォームがあります。私はプライマリキーを実装したいと思います。 ID列をインクルードしてプライマリキーに設定すると、上記のコードに自動で入力する方法を実装できますか?私はオンラインで見ましたが、役に立たないものは見つかりませんでした。主キーの実装SQL
データベースをクリアして主キーを挿入しました。フォームに記入すると、最初の入力がアップロードされ、主キーは0になります。これ以降、他の情報は登録されていませんか?
を探していると思います。 Auto Incrementの場合は、INSERTクエリから完全に除外してください。 MYSQLはその列に次の番号を作成します。 – RiggsFolly
MYSQLにすべての仕事をさせるとき、最初のAutoIncrementキーは通常1です – RiggsFolly
別注: '$ conn-> prepare()'は 'try/catch'の中にあるべきです。これはまさにそうである可能性があり、実際には 'bindParam'と' execute'よりも例外をスローする可能性が高い – RiggsFolly