Gästebuch mit Excel-Import?


#1
Hi, leider stellt 123gb.de den Dienst ein, dort hatte ich lange ein Gästebuch.
Jetzt habe ich die Excel-Datei mit den Einträgen bekommen.
(Datum, Name, Email, Homepage, Eintrag)

Nun brauche ich natürlich ein neues Gästebuch, in das ich die Einträge importieren kann.
Kennt Ihr da vielleicht eins, womit das möglich ist?
 

ikosaeder

Teekannen-Agnostiker
#2
Ich kenne keines, und würde auch nicht damit rechnen, dass irgendein Anbieter so eine Funktion hat.
Mein Vorschlag: Erstelle eine Webseite mit den alten Einträgen und verlink sie als Archiv und dann erstell dir bei einem Anbieter ein neues Gästebuch.
Dann kannst du dir den Anbieter danach aussuchen, was er für Features hat.
Alternativ: Erstell dein Gästebuch selbst, dann kannst du die Einträge problemlos hinzufügen.

Ein Gästebuch ist ja im Grunde genommen nur ein Formular und eine Datenbank mit Einträgen. Im einfachsten Fall sogar nur eine Textdatei.

Dein Gästebuch könnte so aussehen:
HTML:
<html>
<head>
<?php
$ip = $_SERVER["REMOTE_ADDR"];
?>
</head>
<body>
<form action="admin/comment.php" method="post">
<input type="text" name="name" value="Name"><br>
<textarea type="text" name="comm" cols=40 rows=6 wrap=soft >
</textarea><br>
<input type="submit" value=" Absenden ">
<input type="reset" value=" Abbrechen">
<input type="hidden" name="botter" >
<?php
echo "<input type=\"hidden\" name=\"ip\" value=\"" . $ip . "\">";
?>
</form>
<div>
<em>Neueste Kommentare</em><br>
</div>
<?php
$handle = file("admin/comments.txt");
foreach($handle as $line)
{
list($dat,$ip,$name,$comm) = explode("§",$line);
echo "<br>" .$dat . "<br><strong>" . $name . "</strong><br>" . $comm . "<br>";
}
?>
</body>
</html>
Das Skript, das die Kommentare speichert:

PHP:
<?php
$timestamp = time();
$datum = date("d.m.Y - H:i", $timestamp);
foreach($_POST as $key=>$value){
$_POST[$key]=trim(strip_tags($value));
}
$name=$_POST['name'];
$comm=$_POST['comm'];
$ip=$_POST['ip'];
$bot=$_POST['botter'];
$stamp=$timestamp-$_POST['zeitstempel'];
if( $bot !="" || $stamp <= 4){
$fh=fopen("comments.log", "a+") or die ("Dateizugriff fehlgeschlagen");
fputs($fh,"$datum §");
fputs($fh,"$ip §");
fputs($fh,"$name §");
fputs($fh,"$bot §");
fputs($fh,"$stamp §");
fputs($fh,"$comm\n");
fclose($fh);

header("Location: http://webseite.com");
}
else{
$fh = fopen("admin/guestbook.txt", "a+") or die ("Dateizugriff fehlgeschlagen");
fputs($fh,"$datum §");
fputs($fh,"$ip §");
fputs($fh,"$name §");
fputs($fh,"$comm\n");
fclose($fh);
header("Location: http://website.com");
}
?>
Hinweise: Diese Gästebuch bietet so gut wie keinen Schutz vor Spammern.
Die Speicherung der IP-Adresse kann rechtlich problematisch sein.
Die Performance ist schlecht verglichen mit Datenbank basierten Gästebüchern.
Es ist keine Funktion zum Unterteilen des Gästebuches in Seiten vorhanden.
Du kannst deine Exceldatei im CSV Format abspeichern und diese Datei direkt anstelle von guestbook.txt einbinden du musst nur das Trennzeichen (§ im PHP Skript) ändern/anpassen.
 

ComFreek

Mod | @comfreek
Moderator
#3
Suche dir einfach ein Gästebuch aus, das dir gefällt (und eine hohe Reputation im Internet hat).

Fast alle Gästebücher speichern ihre Einträge irgendwo. Genau da kannst du ansetzen, um deine alten Einträge einzufügen. Dafür bräuchtest du nur ein kleines (PHP-)Skript.
 
#4
Also, wenn es keinen Anbieter gibt, bei dem das möglich ist, dann brauche ich ein Gästebuchscript mit eigener Datenbank.
Ich meine, hier gab es mal ein Tutorial dazu, fürchte aber das ist noch nicht wieder anschaubar, oder?
 

ikosaeder

Teekannen-Agnostiker
#6
Es gibt einige Forenbeiträge hier, die sich mit dem Thema befassen. Einfach nach Gästebuch suchen.
Ich hab auf die Schnelle mal einen herausgepickt.
http://www.tutorials.de/threads/hilfe-bei-gaestebuch-tutorial.391039/
Da sind einige nützliche Links drin, z.B. dieser hier
http://tut.php-quake.net/de/guestbook.html
Im Grunde genommen musst du nur die Textdatei, die in meinem Skript verwendet wird durch eine Datenbank ersetzen.
Die muss gar nicht mehr als eine Tabelle mit den Spalten Datum, Name, Email, Homepage, Eintrag enthalten, wie sie auch in deiner Exceldatei stehen. Dazu noch eine fortlaufende ID.

Suche dir einfach ein Gästebuch aus, das dir gefällt (und eine hohe Reputation im Internet hat).
Fast alle Gästebücher speichern ihre Einträge irgendwo. Genau da kannst du ansetzen, um deine alten Einträge einzufügen. Dafür bräuchtest du nur ein kleines (PHP-)Skript.
Die meisten Anbieter von Gästebüchern, wie auch 123gb.de speichern die Daten auf ihren eigenen Servern und liefern nur einen Link. Du kannst den Inhalt dann höchstens durch ein Verwaltungstool editieren und das ist bei vielen Einträgen mühsam.
Alternative wäre es, ein CMS, ein Framework oder ein Forum zu installieren. Die haben eine Kommentar/Gästebuchfunktion in der Regel eingebaut, z.B. Wordpress. Ist aber Overkill, wenn man Wordpress selbst nicht nutzen will.

Es gibt im Internet auch genug fertige Skripte, aber da ist es oft schwerer nachzuvollziehen, wie gut/sicher sie sind, als wenn man das von Grund auf selbst macht. Außerdem ist da die Installation unter Umständen problematisch.