PHP-MySQL-Insert Into

Die INSERT INTO-Anweisung wird verwendet, um neue Einträge in eine Datenbanktabelle einzufügen.

Daten in eine Datenbanktabelle einfügen

Die INSERT INTO-Anweisung wird verwendet, um neue Einträge in eine Datenbanktabelle hinzuzufügen.

Syntax

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

Sie können auch angeben, in welche Spalte Sie Daten einfügen möchten:

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

Anmerkung:SQL-Anweisungen sind bezüglich der Groß- und Kleinschreibung unempfindlich. INSERT INTO ist gleich insert into.

Um die PHP-Ausführung dieses Satzes zu ermöglichen, müssen wir die Funktion mysql_query() verwenden. Diese Funktion wird verwendet, um Abfragen oder Befehle an eine MySQL-Verbindung zu senden.

Beispiel

In den vorherigen Kapiteln haben wir eine Tabelle namens "Persons" mit drei Spalten erstellt: "Vorname", "Nachname" und "Alter". Wir verwenden in diesem Beispiel die gleiche Tabelle. Im folgenden Beispiel werden zwei neue Einträge in die Tabelle "Persons" eingefügt:

<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
  die('Verbindung konnte nicht hergestellt werden: ' . 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);
?>

Daten vom Formular in die Datenbank einfügen

Jetzt erstellen wir ein HTML-Formular, das neue Einträge in die Tabelle "Persons" einfügen kann.

Dies ist dieser HTML-Formular:

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

Wenn der Benutzer auf den Absenden-Button im HTML-Formular im obigen Beispiel klickt, werden die Formulardaten an "insert.php" gesendet. Die Datei "insert.php" verbindet sich mit der Datenbank und holt die Werte über die $_POST-Variable vom Formular ab. Anschließend führt die mysql_query()-Funktion das INSERT INTO-Statement aus und ein neues Eintrag wird in die Datenbanktabelle hinzugefügt.

Nachstehend ist der Code der "insert.php"-Seite aufgeführt:

<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
  {
  die('Verbindung konnte nicht hergestellt werden: ' . mysql_error());
  }
mysql_select_db("my_db", $con);
$sql="INSERT INTO Personen (Vorname, Nachname, Alter)
Werte
('$_POST[firstname]','$_POST[lastname]','$_POST[age]')";
if (!mysql_query($sql,$con))
  {
  die('Fehler: ' . mysql_error());
  }
echo "1 record added";
mysql_close($con)
?>