In das Gästebuch eintragen

'; // Anzahl der Seiten berechnen $AnzahlDatensaetze = $db->query("SELECT COUNT(*) FROM `" . $TABLE_PREFIX . "_gaestebuch` WHERE `anzeige` = '1'")->fetchColumn(0); if ($AnzahlDatensaetze > 0) { $Seitenanzahl = ceil($AnzahlDatensaetze / $EINTRAEGE_SEITE); $AktuelleSeite = isset($_GET["seite"]) ? $_GET["seite"] : 1; $AktuelleSeite = ctype_digit($AktuelleSeite) ? $AktuelleSeite : 1; $AktuelleSeite = $AktuelleSeite < 1 || $AktuelleSeite > $Seitenanzahl ? 1 : $AktuelleSeite; $Versatz = $AktuelleSeite * $EINTRAEGE_SEITE - $EINTRAEGE_SEITE; // Gästebucheinträge auslesen $select = $db->query("SELECT `name`, `nachricht`, `homepage`, `bewertung`, `datum` FROM `" . $TABLE_PREFIX . "_gaestebuch` WHERE `anzeige` = '1' ORDER BY `datum` " . ($EINTRAEGE_IO == "Ende" ? "ASC" : "DESC") . " LIMIT " . $Versatz . ", " . $EINTRAEGE_SEITE); if ($datensaetze = $select->fetchAll(PDO::FETCH_OBJ)) { // Link-, und Formular-Navigation print '
' . $AnzahlDatensaetze . ($AnzahlDatensaetze > 1 ? ' Einträge' : ' Eintrag') . ' - Seite: ' . (($AktuelleSeite - 1) > 0 ? '' : '') . ' von ' . $Seitenanzahl . (($AktuelleSeite + 1) <= $Seitenanzahl ? ' ' : '') . '
'; print '
'; // Gästebucheinträge anzeigen foreach($datensaetze as $datensatz) { sscanf($datensatz->datum, "%4s-%2s-%2s", $jahr, $monat, $tag); print '
' . $datensatz->name . ' ' . bewertung($datensatz->bewertung, $STERN_NUMMER) . '  ' . (kalender($tag, $monat, $jahr)) . '' . ($datensatz->homepage != "" ? ' - ' . $datensatz->homepage . '' : '') . '
' . code($datensatz->nachricht) . '
'; } // Navigation Zurück /Weiter if ($AnzahlDatensaetze > $EINTRAEGE_SEITE) { print '

' . (($AktuelleSeite - 1) > 0 ? '◄ Zurück  ' : '') . ' ' . (($AktuelleSeite + 1) <= $Seitenanzahl ? 'Weiter ►' : ''); } } } else { print '

Noch keine Einträge vorhanden!

'; } } else { // In das Gästebuch eintragen $name = isset($_POST["name"]) ? $_POST["name"] : ""; $nachricht = isset($_POST["nachricht"]) ? $_POST["nachricht"] : ""; $email = isset($_POST["email"]) ? $_POST["email"] : ""; $homepage = isset($_POST["homepage"]) ? $_POST["homepage"] : ""; // Benutzereingaben überprüfen $Fehler = array("name"=>"","nachricht"=>"","sicherheit"=>"",); if (isset($_POST["submit"]) || isset($_POST["vorschau"])) { $Fehler["name"] = strlen($_POST["name"]) <= 4 ? 'Bitte füllen Sie dieses Feld aus (min. 5 Zeichen)!
' : ''; $Fehler["name"] = strip_tags($_POST["name"]) != $_POST["name"] ? 'HTML-Tags sind nicht erlaubt!
' : $Fehler["name"]; $Fehler["nachricht"] = strlen($_POST["nachricht"]) < 10 ? 'Bitte füllen Sie dieses Feld aus (min. 10 Zeichen)!
' : ''; $Fehler["nachricht"] = strip_tags($_POST["nachricht"]) != $_POST["nachricht"] ? 'HTML-Tags sind nicht erlaubt!
' : $Fehler["nachricht"]; $Fehler["sicherheit"] = (!isset($_POST["vorschau"]) && md5($_POST["zip"]) != $_POST["zip2"]) ? 'Die Sicherheitsabfrage ist leider falsch!
' : ''; } // Auswahlliste "Webseite Bewertung" $bewertung = isset($_POST["bewertung"]) ? $_POST["bewertung"] : 0; $bewertungsauswahl = "\n \n "; // Sicherheitsabfrage - Zufallszahlen generieren $Z0 = array(mt_rand(1, 9), mt_rand(1, 9)); $Z1 = max($Z0); $Z2 = min($Z0); $Spam = $Z1 . " + &#" . (48 + $Z2) . ";"; $Schutz = md5($Z1 + $Z2); // Formular erstellen $Formular = $javascript . '

Das Gästebuch anzeigen

✲ ' . $Fehler["nachricht"] . ' ' . (smiley()) . '

' . ( $FORMFELD_EMAIL == "ja" ? '

' : '' ) . ( $FORMFELD_HOMEPAGE == "ja" ? '

' : '' ) . '

(Optional, Sterne von 1 bis 4)

' . ($_SERVER["REQUEST_METHOD"] != "POST" ? '' : '

') . '

Bitte alle mit markierten Felder ausfüllen.
Beachten Sie, das Ihr Gästebucheintrag erst nach einer Prüfung frei geschaltet wird.


  ' . ($_SERVER["REQUEST_METHOD"] == "POST" ? '' : '') . '

'; // Vorschau if (isset($_POST["vorschau"]) && strlen($_POST["name"]) >= 4 && strlen($_POST["nachricht"]) >= 10) { print '
Vorschau' . $name . ' ' . (bewertung($bewertung, $STERN_NUMMER)) . '
' . '
' . code($nachricht, true) . '
' . ($FORMFELD_EMAIL == "ja" && $email != "" ? '
E-Mail: ' . $email . '' : '') . ($FORMFELD_HOMEPAGE == "ja" && $homepage != "" ? '
Homepage: ' . $homepage . '' : '') . '
'; } // Formular abgesendet if (isset($_POST["submit"])) { // Sind keine Benutzer-Eingabefehler vorhanden ... if (implode("", $Fehler) == "") { // ... in die Datenbank eintragen. $insert = $db->prepare("INSERT INTO `" . $TABLE_PREFIX . "_gaestebuch` (`anzeige`, `name`, `nachricht`, `email`, `homepage`, `bewertung`, `datum`) VALUES ( :anzeige, :name, :nachricht, :email, :homepage, :bewertung, '" . date("Y-m-d H:i:s") . "')"); if ($insert->execute([':anzeige' => $ANZEIGESPERRE, ':name' => $_POST["name"], ':nachricht' => $_POST["nachricht"], ':email' => $email, ':homepage' => $homepage, ':bewertung' => $_POST["bewertung"]])) { $id = $db->lastInsertId(); print '

Vielen Dank ' . htmlspecialchars($_POST["name"], ENT_QUOTES | ENT_HTML5, 'UTF-8') . ',
Sie wurden in das Gästebuch eingetragen.

Das Gästebuch anzeigen

'; // E-Mail an den Admin versenden if ($GB_INFO == "ja") { mb_internal_encoding("UTF-8"); $Betreff = mb_encode_mimeheader("Neuer Gästebucheintrag", "UTF-8", "Q"); $Kopfzeile = "MIME-Version: 1.0;\nFrom: " . mb_encode_mimeheader($_POST["name"], "UTF-8", "Q") . "" . "\nContent-Type: text/plain; Charset=UTF-8;\n"; @mail($EMAIL, $Betreff, "Datum: " . date("d.m.Y H:i") . " Uhr\nName: " . strip_tags($_POST["name"]) . "\nNachricht:\n" . strip_tags($_POST["nachricht"]) . "\n\nE-Mail:\n" . strip_tags($email) . "\nHomepage:\n" . strip_tags($homepage) . "\n\nBearbeiten: " . $PFAD . "/gb_admin.php?id=" . $id, $Kopfzeile); } } } else { // Formular und Benutzer-Eingabefehler ausgeben print $Formular; } } else { // Formular ausgeben print $Formular; } } ?>