Hallo,
Ich habe mal im Internet nach einem Php Gästebuch gesucht und bin auf folgendes gestossen:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>Gästebuch</TITLE>
</HEAD>
<STYLE>
BODY { background-color:#113a67; font-family:Verdana,Arial,Tahoma; font-size:8pt; color:#ffffff }
A { font-family:Verdana,Arial,Tahoma; font-size:8pt; color:#ffaf49 }
H1 { font-family:Verdana,Arial,Tahoma; font-size:16pt; color:#ffaf49 }
HR { color:#ffffff }
TD { font-family:Verdana,Arial,Tahoma; font-size:8pt; color:#ffffff }
INPUT,TEXTAREA { background-color:#517aa7; border:1px solid #ffffff; font-family:Arial,Tahoma; font-size:8pt; color:#ffffff; }
</STYLE>
<BODY>
<?
##### powered by widiker.de #####
##### Admin-Passwort #####
$adminpasswort="Sag ich nicht";
##### Ihre Email-Adresse - UNBEDINGT ÄNDERN! #####
$myemail="Sag ich nicht";
##### Soll bei jedem Eintrag eine Mail an Sie geschickt werden (ja/nein)? #####
$email_senden="nein";
########### HAUPTPROGRAMM ###########
if ($eintrag) { eintrag(); }
else if ($senden) { auswertung($kommentar,$nname,$hpage,$email); }
else if ($admin_login) { admin_login(); }
else if ($admin) { admin($passwort); }
else if ($loeschen) { loeschen($to_delete); }
else gaestebuch_zeigen();
########### FUNKTIONEN ###########
function gaestebuch_zeigen ()
{
global $PHP_SELF;
echo <<<FORMULAR
<h1>Gästebuch</h1>
<center>
<FORM METHOD="POST" ACTION="$PHP_SELF">
<INPUT TYPE="SUBMIT" NAME="eintrag" VALUE="Neuer Eintrag">
</FORM>
</center>
FORMULAR;
$eintrag=array();
$lesen=array();
$teil=array();
if (file_exists("gbuch.txt")) {
$datei=fopen("gbuch.txt","r");
while (!feof($datei)) {
$lesen=fgets($datei,100000);
array_push($eintrag,$lesen);
}
array_pop($eintrag);
arsort($eintrag);
foreach ($eintrag as $zeile) {
$teil=explode("|",$zeile);
$sekunden=$teil[0];
$zeit=$teil[1];
$name=$teil[2];
$email=$teil[3];
$hpage=$teil[4];
$text=$teil[5];
echo "<p align=\"justify\" style=\"margin-left:17pt;margin-right:25pt\">\n";
echo"$zeit
\n";
echo "<img src=\"gb_person.gif\" width=\"12\" height=\"12\" border=\"0\" vspace=\"0\">$name
\n";
if ($email!="") {
echo "<img src=\"gb_email.gif\" width=\"12\" height=\"12\" border=\"0\" vspace=\"0\"><a href=\"mailto:$email\">$email</a>
\n";
}
if ($hpage!="") {
echo "<img src=\"gb_home.gif\" width=\"12\" height=\"12\" border=\"0\" vspace=\"0\"><a href=\"$hpage\" target=\"blank\">$hpage</a>
\n";
}
echo "<p align=\"justify\" style=\"margin:40pt; margin-top:0pt; margin-bottom:0pt\">$text</p>";
echo "</p>\n";
echo"<hr width=\"80%\" color=\"#2f5a4f\" size=\"1\">\n";
}
}
echo "<p align=\"right\"><a href=\"$PHP_SELF?admin_login=true\">Admin</a>\n";
}
function eintrag()
{
global $PHP_SELF;
$ua=getenv("HTTP_USER_AGENT");
if (1*strpos(strtolower($ua),"msie")>0) {
$breite1=38;
$breite2=62;
} else {
$breite1=22;
$breite2=30;
}
echo <<<EINTRAG
<p align="right">[url='$PHP_SELF']zum Gästebuch[/url]</p>
<table cellpadding="5" cellspacing="5" width="100%">
<tr>
<td align="center">
<h1>Eintrag ins Gästebuch</h1>
<FORM action="$PHP_SELF" method="post">
<table width="310">
<tr>
<td>
Name:
</td>
<td>
<input type="text" name="nname" size="$breite1" maxlength="40" VALUE="$nname">
</td>
</tr>
<tr>
<td>
Email:*
</td>
<td>
<input type="text" name="email" size="$breite1" VALUE="$email">
</td>
</tr>
<tr>
<td width="33%">
Homepage:*
</td>
<td>
<input type="text" name="hpage" size="$breite1" VALUE="$hpage">
</td>
</tr>
<tr>
<td colspan="2">
Kommentar:
<textarea name="kommentar" rows="6" cols="$breite2" VALUE="$kommentar"></textarea>
</td>
<td>
</td>
</tr>
<tr>
<td colspan="2">
<input type="submit" name="senden" value="eintragen">
<INPUT TYPE="reset" VALUE=" löschen ">
</td>
<td>
</td>
</tr>
<tr>
<td>
* optional
</td>
</tr>
</table>
</FORM>
</td></tr></table>
EINTRAG;
}
function auswertung ($kommentar,$nname,$hpage,$email)
{
global $PHP_SELF;
global $myemail;
global $email_senden;
echo "<p align=\"right\"><a href=\"$PHP_SELF\">zum Gästebuch</a></p>\n";
####### Die Angaben werden von überflüssigen Zeichen befreit #######
$kommentar = stripslashes ($kommentar);
$kommentar = trim ($kommentar);
$nname = stripslashes ($nname);
$nname = trim ($nname);
$hpage = stripslashes ($hpage);
$hpage = trim ($hpage);
$email = stripslashes ($email);
$email = trim ($email);
####### Das Datum und die Zeit wird ermittelt #######
$tag=date("d.");
$m=array("Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember");
$monat=$m[1*date("m")-1];
$jahr=date("Y");
$tdw=array("Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag",);
$x=date("w");
$zeit=date("H:i:s");
$anm=$tdw[$x].",".$tag."".$monat."".$jahr."-".$zeit;
$sekunden=date("U");
####### Definition der Fehlermeldung #######
$zurueck="Klicken Sie <a href=\"javascript:history.back()\">[b]hier[/b]</a>, um zum Formular zurückzukehren und die Fehler zu beheben.</center>";
####### Überprüfunge auf Fehler #######
if ((empty($kommentar)) || ((!ereg(".+@.+\..+", $email)) && (!empty($email))) || (empty($nname))) {echo "<center>
<h1>Fehler !</h1>
";}
### Kommentar ###
if (empty($kommentar))
{ echo "Sie keinen Kommentar eingegeben.
"; echo "$zurueck\n"; }
### Email ###
else
if(!ereg(".+@.+\..+", $email)&& !empty($email)) {
echo "Die Email-Adresse ist falsch.
"; echo "$zurueck\n"; }
### Name ###
else
if (empty($nname))
{ echo "Sie haben Ihren Namen nicht eingegeben.
"; echo "$zurueck\n"; }
####### Alles in Ordnung #######
else {
####### Daten werden gespeichert #######
$komm=ereg_replace(chr(10),"
",$kommentar);
if (!file_exists("gbuch.txt")) { $datei=fopen("gbuch.txt","w"); fclose($datei); }
$gbfile=fopen("gbuch.txt","a");
fputs($gbfile,"$sekunden|$anm|$nname|$email|$hpage|$komm\n");
fclose($gbfile);
####### FALLS $email_senden="ja", WIRD EINE EMAIL AN $myemail GESENDET #######
if ($email_senden=="ja")
{
$subject = "Eintrag";
$header = "From: Gästebuch <$myemail>\n";
$nachricht="Zeit - $anm\nName - $nname\nEmail - $email\nText - $komm";
mail($myemail,$subject,$nachricht,$header);
}
echo "<center>
<h1>Die Daten wurden gesendet.</h1>
\n";
echo "<a href=\"$PHP_SELF\">Gästebuch erneut anschauen</a></center>";
}
}
function admin_login()
{
global $PHP_SELF;
echo <<<ADMINFORMULAR
<p align="right">[url='$PHP_SELF']zum Gästebuch[/url]</p>
<center>
<form action="$PHP_SELF?admin=true" method="post">
Passwort:
<input type="password" name="passwort" size="20" maxlength="30">
<input type="submit" name="admin" value=" login ">
</form>
</center>
ADMINFORMULAR;
}
function admin($passwort)
{
global $PHP_SELF;
global $adminpasswort;
echo "<p align=\"right\"><a href=\"$PHP_SELF\">zum Gästebuch</a></p>\n";
if ($passwort==$adminpasswort)
{
echo "<form action=\"$PHP_SELF\" method=\"post\">";
echo "<table cellpadding=\"5\" cellspacing=\"5\" width=\"100%\">";
$eintrag=array();
$lesen=array();
$teil=array();
if (file_exists("gbuch.txt"))
{
$datei=fopen("gbuch.txt","r");
while (!feof($datei))
{
$lesen=fgets($datei,100000);
array_push($eintrag,$lesen);
}
array_pop($eintrag);
rsort($eintrag);
foreach ($eintrag as $zeile)
{
$teil=explode("|",$zeile);
$sekunden=$teil[0];
$zeit=$teil[1];
$name=$teil[2];
$email=$teil[3];
$hpage=$teil[4];
$text=$teil[5];
$time=ereg_replace("","",$zeit);
$time=ereg_replace(" ","",$time);
echo "<tr><td width=\"50\" align=\"right\" valign=\"top\">";
echo "<input type=\"radio\" name=\"to_delete\" value=\"$sekunden\">
";
echo "</td><td>";
echo"Zeit: $zeit
";
echo "Name: $name
";
echo "Email: $email
";
echo "Homepage: $hpage
";
echo "Kommentar: $text
";
echo "</td></tr>";
}
echo "<tr><td></td><td align=\"left\">";
echo "<input type=\"submit\" name=\"loeschen\" value=\"den markierten Eintrag löschen\">";
echo "<input type=\"reset\" value=\"abbrechen\"></td></tr>";
echo "</table></form>";
}
}
else
{
echo "<center><h1>
Falsches Passwort!</h1>\n";
echo "<p align=\center\"><a href=\"$PHP_SELF?admin_login=true\">Admin</a><center>\n";
}
}
function loeschen($to_delete)
{
global $PHP_SELF;
global $adminpasswort;
$zeile=array();
$tosave=array();
$to_delete=ereg_replace("","",$to_delete);
$to_delete=ereg_replace(" ","",$to_delete);
$datei=fopen("gbuch.txt","r");
while (!feof($datei))
{
$zeile=fgets($datei,100000);
$teil=explode("|",$zeile);
$datum=ereg_replace("","",$teil[0]);
$datum=ereg_replace(" ","",$datum);
if ($datum!=$to_delete) { array_push($tosave,$zeile); }
}
fclose($datei);
$datei=fopen("gbuch.txt","w");
foreach ($tosave as $x)
{
fputs($datei,"$x");
}
fclose($datei);
echo <<<FORMULAR
<p align="right">[url='$PHP_SELF']zum Gästebuch[/url]</p>
<center>
<h1>Der Eintrag wurde gelöscht</h1>
[url='$PHP_SELF']zum Gästebuch[/url]
<form action="$PHP_SELF" method="post">
<input type="hidden" name="passwort" value="$adminpasswort">
<input type="submit" name="admin" value="zurück zur Administration">
</form>
</center>
FORMULAR;
}
?>
</BODY>
</HTML>
Alles anzeigen
Funzt allerdings nicht . Fehlermeldung zu sehen unter http://www.fame.de.tt mal im gästebuch versuchen nen beitrag zu schreiben.
Bitte helft mir, ich kann kein php und hab keine ahnung was ich machen soll. Muss ich da irgendwas mit mysql machen?? Wenn ja, gibt's da irgendwo ein gutes tutorial?
Vielen, vielen Dank,
peace89