Hallo Zusammen,
ich bin neu hier und hoffe, dass Ihr mir weiterhelfen könnt. Ich nutze seit Jahren das im Anhang befindliche txt File basierende Gästebuch. Bis zur Version 4.X funktionierte es noch problemlos. Aktuell leider nicht mehr... ich kann mir nur vorstellen, dass mit Version 5 eine Änderung vollzogen worden ist. Leider bin ich was php5 angeht nicht mehr up to date. Vllt. kann mir jemand schnell weiterhelfen...
Viele Dank
dunestar
ich bin neu hier und hoffe, dass Ihr mir weiterhelfen könnt. Ich nutze seit Jahren das im Anhang befindliche txt File basierende Gästebuch. Bis zur Version 4.X funktionierte es noch problemlos. Aktuell leider nicht mehr... ich kann mir nur vorstellen, dass mit Version 5 eine Änderung vollzogen worden ist. Leider bin ich was php5 angeht nicht mehr up to date. Vllt. kann mir jemand schnell weiterhelfen...
Viele Dank
dunestar
PHP:
<?
$adminpasswort="test";
$myemail="test@test.de";
$email_senden="ja";
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();
function gaestebuch_zeigen ()
{
global $PHP_SELF;
echo <<<FORMULAR
<br>
<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=\"#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=50;
} 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">
<font color="#000000">Eintrag ins Gästebuch</font><p>
<FORM action="$PHP_SELF" method="post">
<table width="310">
<tr>
<td>
<font color="#000000">Name:</font>
</td>
<td>
<input type="text" name="nname" size="$breite1" maxlength="40" VALUE="$nname">
</td>
</tr>
<tr>
<td>
<font color="#000000">Email:*</font>
</td>
<td>
<input type="text" name="email" size="$breite1" VALUE="$email">
</td>
</tr>
<tr>
<td width="33%">
<font color="#000000">Homepage:*</font>
</td>
<td>
<input type="text" name="hpage" size="$breite1" VALUE="$hpage">
</td>
</tr>
<tr>
<td colspan="2">
<font color="#000000">Kommentar:</font><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><font color="#000000">* optional</font><br>
</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";
$kommentar = stripslashes ($kommentar);
$kommentar = trim ($kommentar);
$nname = stripslashes ($nname);
$nname = trim ($nname);
$hpage = stripslashes ($hpage);
$hpage = trim ($hpage);
$email = stripslashes ($email);
$email = trim ($email);
$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");
$zurueck="Klicken Sie <a href=\"javascript:history.back()\"><b>hier</b></a>, um zum Formular zurückzukehren und die Fehler zu beheben.</center>";
if ((empty($kommentar)) || ((!ereg(".+@.+\..+", $email)) && (!empty($email))) || (empty($nname))) {echo "<center><br><br><br>Fehler !<br><br>";}
if (empty($kommentar))
{ echo "Sie keinen Kommentar eingegeben.<br><br>"; echo "$zurueck\n"; }
else
if(!ereg(".+@.+\..+", $email)&& !empty($email)) {
echo "Die Email-Adresse ist falsch.<br><br>"; echo "$zurueck\n"; }
else
if (empty($nname))
{ echo "Sie haben Ihren Namen nicht eingegeben.<br><br>"; echo "$zurueck\n"; }
else {
$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);
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>Die Daten wurden gesendet.<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><br>
</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 "<font color=#000000>Zeit: $zeit</font><br>";
echo "<font color=#000000>Name: $name</font><br>";
echo "<font color=#000000>Email: $email</font><br>";
echo "<font color=#000000>Homepage: $hpage</font><br>";
echo "<font color=#000000>Kommentar: $text</font><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><br><br><br><br>Falsches Passwort!\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>
Der Eintrag wurde gelöscht<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;
}
?>
Anhänge
Zuletzt bearbeitet von einem Moderator: