
Verfasst von
Alice am 10.08.2008 - wurde schon
5214 mal gelesen
Schwierigkeit: einfach
Kommentare: [ 0 ]
MySQL
Datensatz
PHP
MySQL Datensaetze hinzufuegen mit PHP - Tutorial
Wie wir eine MySQL-Tabelle erstellen wissen wir ja nun mittlerweile
MySQL-Tabelle erstellen mit PHP
Da wir aber mit einer leeren Tabelle nicht viel anfangen koennen,
wollen wir sie nun mit Daten fuellen.
Hier fuer benoetigen wir den Befehl
INSERT INTO
Die Syntax von
INSERT INTO ist immer folgendermassen aufgebaut
INSERT INTO tabelle
(spalte1,spalte2)
VALUES
('wert1', 'wert2');
tabelle steht fuer den Namen der Tabelle in der die Daten eingetragen werden sollen
(spalte1,spalte2) steht fuer die Spalten in die Daten eingetraegen werden sollen, mehrere Spalten werden mit einem Komma getrennt
(wert1, wert2) enthaelt die Daten die in die einzelnen Spalten eingetragen werden sollen, die Werte muessen in ' bzw. " stehen (wenn sie keine MySQL-Funktionen sind) und muessen in der selben Anordnung wie die Spalten stehen und werden ebenfalls mit einem Komma getrennt
Beispiel
Nehmen wir einmal an unsere Tabelle traegt die Bezeichnung
news
und enthaelt folgende Spalten:
----------------------------------------
| id | autor | titel | story | datum |
----------------------------------------
Die Spalte
id ist der Primaerschluessel unsere Teabelle und ist somit auto_increment, das heisst, diese Spalte bekommt immer automatisch beim Eintraegen der Daten einen Wert zugewiesen, dieser Wert ist einmalig in dieser Spalte und ergibt sich immer aus der Anzahl der bisher eingetragene Datensaetzen + 1 ...
Wir muessen zur erst eine Verbindung zur Datenbank aufbauen,
wie das geht wird hier erklaert
=>Datenbankverbindung herstellen
Ohne Verbindung zur Datenbank koennen keine Daten in die Tabelle eingetragen werden!
<?php
// Datenbankverbindung
//---------------------------------------------------
$host = "localhost"; // Adresse des Datenbankservers, meist localhost
$user = ""; // Ihr MySQL Benutzername
$pass = ""; // Ihr MySQL Passwort
$dbase = ""; // Name der Datenbank
$connection = mysql_connect("$host" , "$user" , "$pass")
OR die ("Keine Verbindung zu der Datenbank moeglich.");
$db = mysql_select_db($dbase , $connection)
OR die ("Auswahl der Datenbank nicht moeglich.");
//---------------------------------------------------
// Daten in Tabell eintragen
//---------------------------------------------------
$daten = "INSERT INTO news (autor, titel, story, datum)
VALUES ('Alice', 'Urlaub zu ende', 'Leider ist mein Urlaub schon wieder ...', now() )";
$eintragen = mysql_query($daten) OR DIE (mysql_error());
mysql_close(); // beendet die DB-Verbindung
?>
In der Variable
$daten werden die Daten fuer den Eintraeg in unsere Tabelle definiert.
news ist der Tabellenname
(autor, titel, story, datum) gibt die Spalten an, in die wir Daten eintraegen wollen
('Alice', 'Urlaub zu ende', 'Leider ist mein Urlaub schon wieder ...', now() ) enthaelt die Daten die in die einzelnen Spalten eingetraegen werden sollen
In die Spalte
autor wird also
Alice eingetragen,
in die Spalte
titel wird
Urlaub zu ende eingetragen,
usw. ...
now() bewirkt, dass das aktuelle Datum in die Spalte datum eingetragen wird, da es sich bei
now() um eine MySQL-Funktion handelt darf dieser Wert nicht in ' bzw. " gesetzt werden ...
$eintragen = mysql_query($daten) ist dafuer zustaendig, dass die Daten in die Tabelle geschrieben werden, sofern dies nicht moeglich sein sollte, bewirkt
OR DIE (mysql_error()); einen Abbruch des Scriptes und die Ausgabe einer Fehlermeldung ...
mysql_close(); beendet die Datenbankverbindung dann wieder, diese Angabe ist nicht zwingend notwendig, da die Datenbankverbindung in der Regel nach der Beendigung des PHP-Scriptes sowieso automatisch beendet wird.
Wichtig
Wenn man nun ein ' bzw. ein " in einer Spalte speichern will, muss man wie in PHP das Zeichen mittels \ escapen also \' oder \" schreiben, da es sonst zu Fehlerhaften Eintraegen kommen kann...
Merke:
Die Werte muessen in der selben Reihenfolge wie die Spalten angegeben werden und muessen in ' bzw. " gesetzt sein, sofern sie keine MySQL-Funktion sind!
Werte wie ein ' bzw. ein " muessen escaped werden ...
Du musst angemeldet sein, um einen Kommentar zu hinterlassen...
Du bist noch kein Mitglied von Alice-Grafixx.de?
Dann kannst du dich hier kostenlos registrieren ...