PHP MySQL Insert Into

INSERT INTO文はデータベースのテーブルに新しいレコードを挿入するために使用されます。

データベースのテーブルにデータを挿入する

INSERT INTO文はデータベースのテーブルに新しいレコードを追加するために使用されます。

構文

INSERT INTO table_name
VALUES (value1, value2,...)

データを挿入したい列を指定することもできます:

INSERT INTO table_name (column1, column2,...)
VALUES (value1, value2,...)

注釈:SQL文は大文字小文字を区別しません。INSERT INTOとinsert intoは同じです。

PHPを実行するためにこのステートメントを使用するには、mysql_query()関数を使用する必要があります。この関数はMySQL接続にクエリやコマンドを送信するために使用されます。

前の章で「Persons」という名前のテーブルを作成しました。これは「Firstname」、「Lastname」および「Age」の3つの列があります。この例では、同じテーブルを使用します。以下の例では「Persons」テーブルに2つの新しいレコードを追加します:

<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }
mysql_select_db("my_db", $con);
mysql_query("INSERT INTO Persons (FirstName, LastName, Age) 
VALUES ('Peter', 'Griffin', '35')");
mysql_query("INSERT INTO Persons (FirstName, LastName, Age) 
VALUES ('Glenn', 'Quagmire', '33')");
mysql_close($con);
?>

フォームからのデータをデータベースに挿入します

今、私たちは新しいレコードを挿入するために使用されるHTMLフォームを作成します。

これはこのHTMLフォームです:

<html>
<body>
<form action="insert.php" method="post">
<input type="text" name="firstname" />
<input type="text" name="lastname" />
<input type="text" name="age" />
<input type="submit" />
</form>
</body>
</html>

ユーザーが上記の HTML フォームの送信ボタンをクリックすると、フォームデータが「insert.php」に送信されます。「insert.php」ファイルはデータベースに接続し、$_POST 変数を通じてフォームから値を取り出します。その後、mysql_query() 関数が INSERT INTO 文を実行し、新しいレコードがデータベーステーブルに追加されます。

以下は「insert.php」ページのコードです:

<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }
mysql_select_db("my_db", $con);
$sql="INSERT INTO Persons (FirstName, LastName, Age)
VALUES
('$_POST[firstname]','$_POST[lastname]','$_POST[age]')";
if (!mysql_query($sql,$con))
  {
  die('Error: ' . mysql_error());
  }
echo "1 record added";
mysql_close($con)
?>