Hallo zusammen,
ich komm nicht mehr weiter
Ich will ein Insert aus einem Kontaktformular in zwei Tabellen schreiben.
Erst ein Insert in eine Gast-tabelle (Benutzerkonto) und mit dem ihrem der ID (autoincrement) dann als Forein - Key in eine neue Tabelle.
Was mache ich falsch ? Gast wird angelegt, Last insert id kommt leider als 0 zurück und bei der Buchung springt er mir automatisch in den Else Zweig.
ich komm nicht mehr weiter
Ich will ein Insert aus einem Kontaktformular in zwei Tabellen schreiben.
Erst ein Insert in eine Gast-tabelle (Benutzerkonto) und mit dem ihrem der ID (autoincrement) dann als Forein - Key in eine neue Tabelle.
Was mache ich falsch ? Gast wird angelegt, Last insert id kommt leider als 0 zurück und bei der Buchung springt er mir automatisch in den Else Zweig.
PHP-Code:
//error_reporting(E_ERROR | E_WARNING | E_PARSE);
//Verbindung zur DB aufbauen (Schritt 2)
$mysqli = new mysqli('localhost', 'root', '', 'feriendb');
//Verbindungsaufbau ok?
if ($mysqli->error)
{
//...nein!
echo ('Fehler beim Verbindungsaufbau (' . $mysqli->errno . '): ' . $mysqli->error);
}
else {
//...ja!
//SQL-Anweisung formlieren (Schritt 3)
$sql1 = "insert into gast (Vorname, Name, eMail, fon, Straße, PLZ, Ort) values('" . $_POST['vname'] . "', '" . $_POST['name'] . "', '" . $_POST['mail'] . "', '" . $_POST['fon'] . "', '" . $_POST['strasse'] . "', '" . $_POST['plz'] . "', '" . $_POST['ort'] . "')";
//SQL-Anweisung absetzen und Ergebnistabelle in $result merken
if ($mysqli->query($sql1) === TRUE) {
echo "Benutzerkonto angelegt";
printf("Letzer eingefügter Datensatz hat id %d\n", mysql_insert_id());
} else {
echo "Konto wurde nicht angelegt - Datenbankfehler";
}
$query = "INSERT INTO buchungen (gastID, personenanzahl, anreise, abreise, anmerkung) VALUES (LAST_INSERT_ID(),'" . $_POST['anreise'] . "','" . $_POST['abreise'] . ", '3'') ";
if ($mysqli->query($query) === TRUE) {
echo " Urlaub gebucht";
} else {
echo "Buchung fehlgeschlagen";
}
}
$mysqli->close();
} else {
echo "Ungültige oder leere Daten --> hier noch zurück button programmieren ;) " ;
echo $_POST["name"] ;
echo $_POST["strasse"];
echo $_POST["vname"];
echo $_POST["plz"];
echo $_POST["ort"];
echo $_POST["mail"];
echo $_POST["fon"];
echo $_POST["anreise"];
echo $_POST["abreise"];
}
Kommentar