I'm trying to learn how to use databases in PHP.
My main html file creates somewhat like a login form. The data which was used as input there is redirected to the PHP file, where it should be printed and also stored in the database.
<?php error_reporting(E_ALL);
function db_con($data_array){
$db = mysqli_connect("localhost", "root", "", "form") or die("Fehler beim Herstellen der Verbindung zur Datenbank!");
mysqli_set_charset($db, 'utf8');
mysqli_query($db, "
INSERT INTO 'data'
(
'E-Mail', 'Name', 'Bewertung', 'Kommentar', 'Thema'
)
VALUES
(
'".$data_array['E-Mail']."',
'".$data_array['Name']."',
'".$data_array['Buchbewertung']."',
'".$data_array['Kommentar']."',
'".$data_array['Lieblingsthema']."'
)
") or die("Fehler beim Schreiben der Datensätze!");
}
if(isset($_POST['name'], $_POST['email'], $_POST['rating'], $_POST['comment'], $_POST['interest'])){
$data_array = array(
"Name" => $_POST['name'],
"E-Mail" => $_POST['email'],
"Buchbewertung" => $_POST['rating'],
"Kommentar" => $_POST['comment'],
"Lieblingsthema" => $_POST['interest']
);
echo "<th colspan='2'>Folgende Daten wurden übermittelt: </th>";
echo "<br><br>";
foreach($data_array as $key => $val){
echo "<tr><td><b>". $key. ": ". "</b></td><td>". $val. "</td></tr>";
}
db_con($data_array);
}
?>
I don't get why it doesn't work. There is no error, but the script stops after mysqli_query (last output: Fehler beim Schreiben der Datensätze!).
Can someone help me why all those data sets won't be stored in the database and how to fix it?