Gästebücher
Georg
- programmiertechnik
0 Jeena Paradies-2 Lukas0 Georg0 Alexander Brock0 Lukas
Hallo,
kann mir jemand was über Gästebücher sagen? Wie die funktionieren und so? Was muss ich da machen und was brauche ich dazu?
Hallo,
kann mir jemand was über Gästebücher sagen?
Gästebücher im Internet sind ganz stinknormale Gästebücher wie man sie in diversen Hotels oder auch auf Partys finden kann, nur dass sie auf das Internet übertragen wurden.
Wie die funktionieren und so?
Es gibt ein Formular in welches Menschen, die die Seite besuchen ihre Kommentare reinschreiben können. Wenn sie dieses abschicken nimmt es ein serverseitiges Script entgegen und speichert die Daten auf der Festplatte des Servers.
Wenn die Seite mit den alten Gästebucheinträgen aufgerufen wird sucht sich der Server die Daten auf seiner Festplatte zusammen formatiert sie anständig und liefert sie an den Browser aus.
Was muss ich da machen und was brauche ich dazu?
Einen Server auf dem du ein solches Gästebuchprogramm ausführen lassen kannst, und natürlich das Gästebuchprogramm selbst.
Grüße
Jeena Paradies
Hi,
Was muss ich da machen und was brauche ich dazu?
Einen Server auf dem du ein solches Gästebuchprogramm ausführen lassen kannst, und natürlich das Gästebuchprogramm selbst.
Das ist natürlich richtig, aber vielleicht etwas abstrakt... Also ich kenne mich zwar nicht sehr aus, aber will das, was ich weiß (oder glaube zu wissen) hier doch mal posten:
Also auf jeden Fall muss dein Hosting-Paket eine Skriptsprache wie z. B. PHP, Perl, ASP usw. beherrschen. Ich persönlich bevorzuge PHP, da es besonders flexiben und einfach zu erlernen ist.
Ein kleines PHP-Skript habe ich einmal für ein einfaches Gästebuch erstellt, das zwar keine Einträge nach Seiten sortieren kann, aber dafür z. B. HTML-Code herausfiltern kann. Erläuternde Kommentare füge ich mit
// am Zeilenanfang ein. An diesem einfachen Beispiel kannst du die Funktionsweise (hoffentlich) ein wenig verstehen lernen und irgendwann auch umfangreichere Projekte erstellen...
<?
// Hier gibst du den Dateinamen auf dem Server ein, in dem die Einträge gespeichert werden. Die Datei muss vorhanden und beschreibbar sein.
$filename="./guestbook.txt";
// Hier definiere ich Variabeln für Datum und Uhrzeit.
$date=strftime("%d. %m. %Y");
$time=strftime("%H:%M");
// Hier fragt die PHP-Datei die vom Formular beim Aschicken übermittelten Daten ab.
if(isset($_POST['text']) && $_POST['text'] <> "")
{
if(isset($_POST['name']) && $_POST['name'] <> "")
{
if(isset($_POST['email']) && $_POST['email'] <> "")
{
// Dies ist die Zeile, die in die guestbook.txt (oder eine andere, in $filename definierte Datei) eingetragen wird, wenn Text, Name und eMail-Adresse eingegeben wurden.
$line="<br />\n<br />\n<h4>\n <strong>" . nl2br(htmlentities($_POST['name'])) . "</strong> (<a href="mailto:" . nl2br(htmlentities($_POST['email'])) . "" title="Eine eMail an " . nl2br(htmlentities($_POST['email'])) . " senden">eMail</a>) schrieb am " . $date. " um " . $time . ":\n</h4>\n" . nl2br(htmlentities($_POST['text'])) . "\n\n";
}
else
{
// Dies ist die Zeile, die in die guestbook.txt (oder eine andere, in $filename definierte Datei) eingetragen wird, wenn Text und Name, aber nicht die eMail-Adresse eingegeben wurden.
// Die Funktion nl2br macht aus einfachen Zeilenumbrüchen (X)HTML-Zeilenumbrüche (<br />), die Funktion htmlentities macht aus & &, aus " ", aus ä ä, aus ß ß usw.
$line="<br />\n<br />\n<h4>\n <strong>" . nl2br(htmlentities($_POST['name'])) . "</strong> schrieb am " . $date. " um " . $time . ":\n</h4>\n" . nl2br(htmlentities($_POST['text'])) . "\n\n";
}
}
else
{
// Diese Zeile wird auf dem Bildschirm ausgegeben, wenn der Besucher zwar Text (und evtl. eMail-Adresse), aber keinen Namen angegeben hat.
echo "<h4>Fehler</h4>\nSie haben keinen Namen angegeben. <a href="javascript:history.back();" title="Zurück zu Ihrer Eingabe im Formular (erfordert JavaScript)">Bitte holen Sie dies nach!</a><br /><br />\n";
$line="";
}
// Hier erfolgt der Schreibvorgang in die Datei
$file=fopen($filename, "a");
if($file)
{
fputs($file, $line);
fclose($file);
}
}
if(file_exists($filename))
{
$file=fopen($filename, "r");
if($file)
{
while($line=fgets($file, 255))
{
echo stripslashes($line);
}
fclose($file);
}
}
?>
<br />
<br />
<hr />
<h2>
formular
</h2>
Bitte tragen Sie sich doch auch ein!
<br />
<br />
// Hier kommt das Formular.
<form action="./" method="post" enctype="multipart/form-data">
<div>
<strong>Ihr Name:</strong>
<br />
<input type="text" name="name" />
<br />
<br />
<strong>Ihre eMail-Adresse:</strong>
<br />
<input type="text" name="email" />
<br />
<br />
<strong>Ihr Text:</strong>
<br />
<textarea rows="7" cols="50" name="text"></textarea>
<br />
<small>Bitte beachten Sie: Das Ausführen von (X)HTML-Code ist nicht möglich.</small>
<br />
<br />
<input type="submit" value="Eintragen" />
</div>
</form>
Ich hoffe, damit lässt sich was anfangen. Wenn du Fragen zum PHP-Code hast, recherchierst du am besten im PHP-Manual (http://www.php.net/manual/de/). So machst zu gewissermaßen "learning-by-doing" ;-)
Lukas
Hi,
Was muss ich da machen und was brauche ich dazu?
Einen Server auf dem du ein solches Gästebuchprogramm ausführen lassen kannst, und natürlich das Gästebuchprogramm selbst.Das ist natürlich richtig, aber vielleicht etwas abstrakt... Also ich kenne mich zwar nicht sehr aus, aber will das, was ich weiß (oder glaube zu wissen) hier doch mal posten:
Also auf jeden Fall muss dein Hosting-Paket eine Skriptsprache wie z. B. PHP, Perl, ASP usw. beherrschen. Ich persönlich bevorzuge PHP, da es besonders flexiben und einfach zu erlernen ist.
Ein kleines PHP-Skript habe ich einmal für ein einfaches Gästebuch erstellt, das zwar keine Einträge nach Seiten sortieren kann, aber dafür z. B. HTML-Code herausfiltern kann. Erläuternde Kommentare füge ich mit
// am Zeilenanfang ein. An diesem einfachen Beispiel kannst du die Funktionsweise (hoffentlich) ein wenig verstehen lernen und irgendwann auch umfangreichere Projekte erstellen...<?
// Hier gibst du den Dateinamen auf dem Server ein, in dem die Einträge gespeichert werden. Die Datei muss vorhanden und beschreibbar sein.
$filename="./guestbook.txt";
// Hier definiere ich Variabeln für Datum und Uhrzeit.
$date=strftime("%d. %m. %Y");
$time=strftime("%H:%M");// Hier fragt die PHP-Datei die vom Formular beim Aschicken übermittelten Daten ab.
if(isset($_POST['text']) && $_POST['text'] <> "")
{
if(isset($_POST['name']) && $_POST['name'] <> "")
{
if(isset($_POST['email']) && $_POST['email'] <> "")
{// Dies ist die Zeile, die in die guestbook.txt (oder eine andere, in $filename definierte Datei) eingetragen wird, wenn Text, Name und eMail-Adresse eingegeben wurden.
$line="<br />\n<br />\n<h4>\n <strong>" . nl2br(htmlentities($_POST['name'])) . "</strong> (<a href="mailto:" . nl2br(htmlentities($_POST['email'])) . "" title="Eine eMail an " . nl2br(htmlentities($_POST['email'])) . " senden">eMail</a>) schrieb am " . $date. " um " . $time . ":\n</h4>\n" . nl2br(htmlentities($_POST['text'])) . "\n\n";
}
else
{// Dies ist die Zeile, die in die guestbook.txt (oder eine andere, in $filename definierte Datei) eingetragen wird, wenn Text und Name, aber nicht die eMail-Adresse eingegeben wurden.
// Die Funktion nl2br macht aus einfachen Zeilenumbrüchen (X)HTML-Zeilenumbrüche (<br />), die Funktion htmlentities macht aus & &, aus " ", aus ä ä, aus ß ß usw.
$line="<br />\n<br />\n<h4>\n <strong>" . nl2br(htmlentities($_POST['name'])) . "</strong> schrieb am " . $date. " um " . $time . ":\n</h4>\n" . nl2br(htmlentities($_POST['text'])) . "\n\n";
}
}
else
{// Diese Zeile wird auf dem Bildschirm ausgegeben, wenn der Besucher zwar Text (und evtl. eMail-Adresse), aber keinen Namen angegeben hat.
echo "<h4>Fehler</h4>\nSie haben keinen Namen angegeben. <a href="javascript:history.back();" title="Zurück zu Ihrer Eingabe im Formular (erfordert JavaScript)">Bitte holen Sie dies nach!</a><br /><br />\n";
$line="";
}// Hier erfolgt der Schreibvorgang in die Datei
$file=fopen($filename, "a");
if($file)
{
fputs($file, $line);
fclose($file);
}
}
if(file_exists($filename))
{
$file=fopen($filename, "r");
if($file)
{
while($line=fgets($file, 255))
{
echo stripslashes($line);
}
fclose($file);
}
}
?><br />
<br />
<hr />
<h2>
formular
</h2>
Bitte tragen Sie sich doch auch ein!
<br />
<br />// Hier kommt das Formular.
<form action="./" method="post" enctype="multipart/form-data">
<div>
<strong>Ihr Name:</strong>
<br />
<input type="text" name="name" />
<br />
<br />
<strong>Ihre eMail-Adresse:</strong>
<br />
<input type="text" name="email" />
<br />
<br />
<strong>Ihr Text:</strong>
<br />
<textarea rows="7" cols="50" name="text"></textarea>
<br />
<small>Bitte beachten Sie: Das Ausführen von (X)HTML-Code ist nicht möglich.</small>
<br />
<br />
<input type="submit" value="Eintragen" />
</div>
</form>Ich hoffe, damit lässt sich was anfangen. Wenn du Fragen zum PHP-Code hast, recherchierst du am besten im PHP-Manual (http://www.php.net/manual/de/). So machst zu gewissermaßen "learning-by-doing" ;-)
Lukas
Vielen Dank!!!
Aber was ist das dann für ein Dateienformat?
Hallo Freunde des gehobenen Forumsgenusses,
[Viel zu viel Zitat entfernt]
Zitiere bitte nur, worauf du dich beziehst und lies die </hilfe/>.
Vielen Dank!!!
Aber was ist das dann für ein Dateienformat?
Das ist eine stinknormale Textdatei.
Gruß
Alexander Brock
Hallo nochmal,
Aber was ist das dann für ein Dateienformat?
Das ist eine stinknormale Textdatei.
Wobei ich hinzufügen möchte, dass man die Datei mit der Endung .php abspeichern sollte, damit der PHP-Interpreter sie bearbeitet.
Drum herum kommt natürlich der "stinknormale" (X)HTML-Code (siehe [http://de.selfhtml.org/]). Was innerhalb <? dieser Zeichen ?> steht, ist dann der in (X)HTML eingebettete PHP-Code.
Tja, ich merke, du scheinst nicht ganz den Durchblick zu haben ;-) Also auch, wenn du einen WYSIWIG- (einen grafischen) -Editor verwendest, solltest du dich unbedingt mit den (X)HTML-Grundlagen auseinandersetzen. Da liegt natürlich nichts näher als SELFHTML [http://de.selfhtml.org/] ;-) Nach und nach wirst du wohl verstehen, worum es geht, hoffe ich :-)
Grüße,
Lukas