M
mustermen
Gast
Hallo also ich habe ein Gästebuch wo alle Einträge drin sind, die gb.php die lädt die Daten aus der MySQL, die Datenbank dafür heißt gb und die Tabelle auch gb, dort in der Tabelle sind folgende Werte gespeichert: id, name, email, text, datum. Wen jemand einen Eintrag verfassen möchte geht er auf die gbentry.html, wo alle Formularfelder sind und wen er die abschickt wird er zur gbentry.php geleitet und ab hier hackt es gbentry.php sagt mir das ich keine database ausgewählt habe, obwohl ich dort eine verbindung dazu habe? Hier mal der Code von der gbentry.php:
Und hier noch gb.php die funktioniert aber super und lädt die Beispiel Dateien von der MySQL Datenbank:
und hier noch gbentry.html wo das formular ist:
PHP:
<?php
// Verbindung zum Datenbankserver aufnehmen
$host = 'localhost';
$user = 'root';
$pass = '';
$db = 'gb';
$conn = new mysqli($host, $user, $pass, $db);
//Variablen füllen
$name = mysql_real_escape_string($_POST["name"]);
$email = mysql_real_escape_string($_POST["email"]);
$text = mysql_real_escape_string($_POST["text"]);
$antwort = mysql_real_escape_string($_POST["antwort"]);
// Felder ausgefüllt ?
if(($name == "") OR ($email == "") OR ($text == "") OR ($antwort == ""))
{
echo "Bitte fülle alle Felder aus.";
exit;
}
if($antwort != 10)
{
echo "Falsche Antwort!";
exit;
}
$datum = date("d.m.Y");
$sql = mysql_query("INSERT INTO `gb`(`name`,`email`,`text`,`datum`) VALUES ('".$name."','".$email."','".$text."','".$datum."')") or die (mysql_error());
if($sql)
{
echo 'Eintrag erfolgreich hinzugefügt.';
// Zum Gästebuch zurück Achtung funktioniert das hier wirklich?????
header("Location: gb.php");
}
// Datenbankverbindung schließen
$conn->close();
?>
Und hier noch gb.php die funktioniert aber super und lädt die Beispiel Dateien von der MySQL Datenbank:
PHP:
<?php
// Verbindung zum Datenbankserver aufnehmen
$host = 'localhost';
$user = 'root';
$pass = '';
$db = 'gb';
$conn = new mysqli($host, $user, $pass, $db);
// SQL-Code an die Datenbank senden
$sql = "SELECT * FROM gb ORDER BY `id` DESC";
$query = $conn->query($sql);
// Abfrageergebnis speichern
$result = array();
while ($row = $query->fetch_assoc()) {
$result[] = $row;
}
// Datenbankverbindung schließen
$conn->close();
?>
<!DOCTYPE html>
<html>
<head>
<link href="css/all.css" rel="stylesheet" type="text/css" media="all">
</head>
<body>
<header>
</header>
<article class="gb">
<h2>Gästebuch</h2>
<a href="gbentry.html" class="gb-btn">»Ins Gästebuch eintragen«</a>
<?php
foreach ($result as $row) {
echo "<div>";
echo "<p>";
echo $row['name'];
echo "</p>";
echo "<p>";
echo $row['datum'];
echo "</p>";
echo "<p>";
echo $row['text'];
echo "</p>";
echo "</div>";
}
?>
</article>
<footer>
</footer>
</body>
</html>
und hier noch gbentry.html wo das formular ist:
PHP:
<article>
<h2>Ins Gästebuch eintragen</h2>
<form action="gbentry.php" method="post">
<input type="text" name="name" placeholder="Dein Name" required><br>
<input type="email" name="email" placeholder="Deine Email" required><br>
<textarea name="text" placeholder="Deine Nachricht…" required></textarea><br>
<input type="text" name="antwort" placeholder="7 + 3 = ?" required><br>
<input type="submit" name="formaction"><br>
</form>
</article>