das is die datei gaeste.php udn dannist im gleichen ordner noch gbuch.txt:
<HTML> <HEAD> <TITLE>Gästebuch</TITLE> </HEAD> <link rel="stylesheet" href="s.css" type="text/css"> <BODY> <table width="100%" border="0"> <tr> <td> <?
Admin-Passwort
$adminpasswort="xxxxxxx";
Ihre Email-Adresse - UNBEDINGT ÄNDERN!
$myemail="info@wallwitzburg.de";
Soll bei jedem Eintrag eine Mail an Sie geschickt werden (ja/nein)?
$email_senden="ja";
########### 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 <b>Gästebuch</b> <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<br>\n"; echo "<img src="gb_person.gif" width="12" height="12" border="0" vspace="0"> $name<br>\n";
if ($email!="") { echo "<img src="gb_email.gif" width="12" height="12" border="0" vspace="0"> <a href="mailto:$email">$email</a><br>\n"; }
if ($hpage!="") { echo "<img src="gb_home.gif" width="12" height="12" border="0" vspace="0"> <a href="$hpage" target="blank">$hpage</a><br>\n"; }
echo "<p align="justify" style="margin:40pt; margin-top:0pt; margin-bottom:0pt">$text</p>"; echo "</p>\n"; echo"<hr width="80%" color="#FFFFFF" 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"><a href="$PHP_SELF">zum Gästebuch</a></p> <table cellpadding="5" cellspacing="5" width="100%"> <tr> <td align="center">
<b>Eintrag ins Gästebuch</b><p> <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:<br> <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> <br>* 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><br><br><br><b>Fehler !</b><br><br>";}
### Kommentar ### if (empty($kommentar)) { echo "Sie keinen Kommentar eingegeben.<br><br>"; echo "$zurueck\n"; }
### Email ### else if(!ereg(".+@.+..+", $email)&& !empty($email)) { echo "Die Email-Adresse ist falsch.<br><br>"; echo "$zurueck\n"; }
### Name ### else if (empty($nname)) { echo "Sie haben Ihren Namen nicht eingegeben.<br><br>"; echo "$zurueck\n"; }
####### Alles in Ordnung ####### else {
####### Daten werden gespeichert ####### $komm=ereg_replace(chr(10),"<br>",$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><br><br><br><b>Die Daten wurden gesendet.</b><br><br><br>\n"; echo "<a href="$PHP_SELF">Gästebuch erneut anschauen</a></center>"; } }
function admin_login() { global $PHP_SELF;
echo <<<ADMINFORMULAR <p align="right"><a href="$PHP_SELF">zum Gästebuch</a></p> <center><br><br> <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"><br>"; echo "</td><td>"; echo"Zeit: $zeit<br>"; echo "Name: $name<br>"; echo "Email: $email<br>"; echo "Homepage: $hpage<br>"; echo "Kommentar: $text<br><br>"; 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><b><br><br><br><br>Falsches Passwort!</b>\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"><a href="$PHP_SELF">zum Gästebuch</a></p> <center> <b>Der Eintrag wurde gelöscht</b><br><br><br> <a href="$PHP_SELF">zum Gästebuch</a><br><br><br> <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; } ?> </td> </tr> </table> </BODY> </HTML>