Sie sind nicht angemeldet.

Neverdie

Hoffnungsträger

  • »Neverdie« ist männlich
  • »Neverdie« ist ein verifizierter Benutzer
  • »Neverdie« ist der Autor dieses Themas

Beiträge: 410

Aktivitätspunkte: 2 335

Registrierungsdatum: 21. März 2008

Wohnort: Deutschland

  • Nachricht senden

Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied

1

Freitag, 27. Februar 2009, 08:10

Eigenes Gästebuch erstellen für deine HP!

Hallo liebe Community,

Hier zeig ich euch, wie ihr bei euren eigenen H(ome)P(ages) ein Gästebuch erstellen könnt.

Wir erstellen 3 Dateien...
  • guestbook.php
  • newreply.php
  • guestbook.txt


Zuerst wird die Datei "guestbook.php" erstellt und zwischen <body> und </body> kommt.

1)

Zitat

<form action="newreply.php" method="POST" target="_self">
<div class="div">Name:&nbsp;<p align="center"><input name="name" size="40"></p></div>
<div class="div">E-Mail:&nbsp;<p align="center"><input name="email" size="40"></p></div>
<div class="div">Kommentar:<br><p align="center"><textarea name="commentar" cols="40" rows="12" wrap="physical"></textarea></p></div>
<p align="center"><input type="submit" name="Absenden" id="button" value="Absenden"></p>
</form>
<hr>
<?php
$beitrag = file("guestbook.txt");
krsort($beitrag);

foreach($beitrag as $ausgabe)
{
$ausgabe = stripslashes($ausgabe);
$zerlegen = explode("|", $ausgabe);

echo "
<table align=\"center\"
border=\"0\" cellspacing=\"0\"
cellpadding=\"5\" width=\"50%\">
<tr>
<td>
Von <a href=\"mailto:$zerlegen[0]\">$zerlegen[1]</a>
am $zerlegen[2]
</td>
</tr>
<tr>
<td><br>
$zerlegen[3]
</td>
</tr>
</table><br>
<hr>
";
}
?>


Die Zeilen beschreiben...

PHP-Quelltext

1
2
$beitrag file("guestbook.txt");
krsort($beitrag);


$beitrag = file("guestbook.txt"); gibt an wo die Beiträge gespeichert werden.

krsort($beitrag); sortiert die Beiträge nach dem neuesten Stand, also neuer Beitrag wird als erstes Angezeigt.

PHP-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
foreach($beitrag as $ausgabe)
   {
   $ausgabe stripslashes($ausgabe);
   $zerlegen explode("|"$ausgabe);

   echo "
   <table align=\"center\"
    border=\"0\" cellspacing=\"0\"
   cellpadding=\"5\" width=\"50%\">
   <tr>
   <td>
  Von <a href=\"mailto:$zerlegen[0]\">$zerlegen[1]</a>
  am $zerlegen[2]
   </td>
   </tr>
   <tr>
   <td><br>
   $zerlegen[3]
   </td>
   </tr>
   </table><br>
   <hr>
   ";
   }


Diese Zeile gibt die Beiträge aus die in guestbook.txt gespeichert wurden.

----------------------------------------

Jetzt wird die Datei "newreply.php" erstellt.

Der Inhalt sieht so aus...

Zitat

<?
$user = $_POST["name"];
$user = htmlentities($user);

$email = $_POST["email"];
$email = htmlentities($email);

$comment = $_POST["commentar"];
$comment = htmlentities($comment);
$comment = str_replace("\n", "<br>", $comment);

if ($user == "" and $comment == "")
{
echo "<font color=\"red\">Sie müssen das Feld \"Namen\"
und \"Kommentar\" ausfüllen</font>";
}

else
{
$datum= date("d.m.Y H:i:s");

$eintrag="$email|$user|$datum|$comment";

$datei = fopen("guestbook.txt", "a");
fwrite($datei, "\n".$eintrag);
fclose($datei);

echo "<font color=\"green\">Dein Eintrag wurde erfolgreich gespeichert</font>";
}
?><br><br>
<a href="guestbook.php">zurück zum Gästebuch</a>


Ihr könnt euch aussuchen entweder macht ihr es in <body> / </body> oder ihr lässt es so den dies dient nur dazu da um Informiert zu werden, ob der Beitrag gespeichert wurde oder nicht.

PHP-Quelltext

1
2
3
4
5
6
7
8
9
$user $_POST["name"];
$user htmlentities($user);

$email $_POST["email"];
$email htmlentities($email);

$comment $_POST["commentar"];
$comment htmlentities($comment);
$comment str_replace("\n""<br>"$comment);


Diese Zeilen verfassen nur auf was in der guestbook.php definiert wurde.
z.B. bei guestbook.php wird bei <form>, <div class="div">Name:&nbsp;<p align="center"><input name="name" size="40"></p></div> geschrieben und newreply.php verfasst jetzt für $user = $_POST["name"]; <input name="name".

PHP-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
if ($user == "" and $comment == "")
   {
   echo "<font color=\"red\">Sie müssen das Feld \"Namen\"
   und \"Kommentar\" ausfüllen</font>";
   }

else
   {
   $datumdate("d.m.Y H:i:s");

   $eintrag="$email|$user|$datum|$comment";

   $datei fopen("guestbook.txt""a");
   fwrite($datei"\n".$eintrag);
   fclose($datei);

   echo "<font color=\"green\">Dein Eintrag wurde erfolgreich gespeichert</font>";
   }


if schaut ob die bedingungen erfüllt sind also die Felder ausgefüllt sind. Falls nicht wird der echo der in { und } geschrieben ist, denjenigen darauf aufmerksam machen. Falls doch wird der Inhalt in { und } von else angezeigt und infomiert denjenigen das der beitrag erfolgreich gespeichert wurde.

PHP-Quelltext

1
2
3
   $datei fopen("guestbook.txt""a");
   fwrite($datei"\n".$eintrag);
   fclose($datei);


Diese Zeilen öffnet die Datei "guestbook.txt" mit $datei = fopen, "a" ist nur eine beschreibung welche Rechte es hat. Mit fwrite($datei, "\n".$eintrag); schreibt er in die Datei rein, dass was eingetragen wurde und fclose($datei); schließt die Datei wieder.

----------------------------------------

Jetzt erstellt ihr nur noch die Datei "guestbook.txt" die ihr aber leer lässt, denn eurer PC schreibt von selbst in die Datei hinein.

----------------------------------------

So ich hoffe es war hilfreich und leicht zu verstehen :)

DEMO gibt es hier: http://dannybaba.da.funpic.de/HTML/gaestebuch.php

Und als nächstes zeig ich euch wie ihr eine Upload Datei erstellt, wo ihr Bilder oder sonstiges von euren PC hochladen könnt muss nur noch was beheben.

Mit freundlichen Grüßen

Danny alias Neverdie
Signatur von »Neverdie«
Kein Support via PN, MSN, ICQ oder etwas anderes in der Art!

Dreamlady

Supported User

  • »Dreamlady« ist weiblich

Beiträge: 422

Aktivitätspunkte: 2 465

Registrierungsdatum: 24. März 2008

Wohnort: Castrop-Rauxel

WBB Version: alle

Danksagungen: 0 / 1

  • Nachricht senden

Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied

2

Freitag, 27. Februar 2009, 10:31

Hi, klasse beschrieben,

aber eine Frage hab ich, oben steht HP´s, ist das auch für Foren z.B. ein 2er???? :what:

Neverdie

Hoffnungsträger

  • »Neverdie« ist männlich
  • »Neverdie« ist ein verifizierter Benutzer
  • »Neverdie« ist der Autor dieses Themas

Beiträge: 410

Aktivitätspunkte: 2 335

Registrierungsdatum: 21. März 2008

Wohnort: Deutschland

  • Nachricht senden

Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied Seit über 48 Monaten Mitglied

3

Freitag, 27. Februar 2009, 17:39

Könnte man machen ist aber umständlich, weil sie nicht mit der Datenbank arbeitet ;)
Signatur von »Neverdie«
Kein Support via PN, MSN, ICQ oder etwas anderes in der Art!

Niinake

User wurde auf Wunsch gelöscht!

4

Freitag, 27. Februar 2009, 19:10

Sieht ja super aus.
Nur ne frage,die newreplay da..die datei ist doch schon vorhanden?Überschreitet sich das dann nicht?

Lesezeichen: