ich will gerne für meine Webseite ein Kontaktformular machen.
Das klappt auch alles, nur die Daten werden nicht in die Datenbank gespeichert.
Quelltext:
<?php
$name = htmlspecialchars($_POST["name"]);
$user = htmlspecialchars($_POST["user"]);
$eMail = htmlspecialchars($_POST["eMail"]);
$URL = htmlspecialchars($_POST["URL"]);
$Nachricht = htmlspecialchars($_POST["Nachricht"]);
$datenbank = new mysqli (
"localhost", /* Datenbankhost */
"root", /*Benutzername */
"", /* Für XAMPP habe ich kein Passwort*/
"Kontakt" /*Tabellenname */
);
if(isset($_POST['absenden']))
{
if($datenbank -> query("INSERT INTO Kontakt (name, user, email, url, nachricht) VALUES ($name,$user,$eMail,$URL,$Nachricht) ")) {
echo "Erfolgreich in die Datenbank geschrieben!";
} else {
echo "Es konnte nicht in die Datenbank geschrieben werden!";
}
}
$datenbank -> close();
?>
<html>
<head>
<link rel="stylesheet" href="Style.css">
</head>
<body>
<div class="header">
<h2>Kontakt</h2>
</div>
<div class="row">
<div class="leftcoumn">
<div class="card">
<form action="index.php">
Dein Name:<br>
<input type="text" name="name" size="30"><br>
Dein Benutzername:<br>
<input type="text" name="user" size="30"><br>
Deine E-Mail Adresse:<br>
<input type="text" name="eMail" size="30"><br>
Deine Homepage:<br>
<input type="text" name="URL" size="30"><br>
Deine Nachricht:<br>
<textarea name="Nachricht" cols="34" rows="5"></textarea><br>
<input type="submit" name="absenden" value="Nachricht abschicken">
<input type="reset" value="Eingaben löschen">
</form>
</body>
</html>
Zuhause habe ich XAMPP und damit müsste gleichzeitig auch phpmyadmin sein.
Ich werde an die index.php weitergeleitet, alles klappt außer, dass die Daten nicht in die Datenbank gespeichert werden.
Außerdem kann ich die folgende Tabelle nicht erstellen:
CREATE TABLE IF NOT EXISTS 'users' (
'id' int(11) NOT NULL AUTO_INCREMENT,
'username' varchar(255) NOT NULL,
'password' varchar(255) NOT NULL,
PRIMARY KEY ('id'),
UNIQUE KEY 'username' ('username')
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Da steht das es einen Fehler "at line 1" gibt, ich weiß aber nicht warum?