| | | | |
| | |
| Erfahrener Benutzer Registriert seit: 24.12.2004
Beiträge: 102
![]() | Hi, ich habe ein problem mit nem php Gästebuch. Es funktioniert zwar einwandfrei jedoch werden immer auf der Seite Fehler angezeigt mit undefinierten variablen. Hier ist mal der Quell text: <html> <STYLE> BODY { background-color:#808080; 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> <? ##### Admin-Passwort ##### $adminpasswort="*****r"; $myemail="*****@yahoo.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 <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">zum Gästebuch</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","M ai","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()\">hier</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">zum Gästebuch</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">zum Gästebuch</p> <center> <h1>Der Eintrag wurde gelöscht</h1> zum Gästebuch <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; } ?> So dann gibt es da noch die Textdatei wo die einträge rein gespeichert werden. Und all das funzt auch außer das folgende Fehlermeldungen immer da stehen: Notice: Undefined variable: eintrag in c:\Inetpub\wwwroot\Bike\gaestebuch1.php on line 23 Notice: Undefined variable: senden in c:\Inetpub\wwwroot\Bike\gaestebuch1.php on line 24 Notice: Undefined variable: admin_login in c:\Inetpub\wwwroot\Bike\gaestebuch1.php on line 25 Notice: Undefined variable: admin in c:\Inetpub\wwwroot\Bike\gaestebuch1.php on line 26 Notice: Undefined variable: loeschen in c:\Inetpub\wwwroot\Bike\gaestebuch1.php on line 27 so aber ansonsten funktioniert es einwandfrei da aber diese Fehlermeldungen sehr hässlich aussehen wollte ich fragen wo da mein Fehler liegt das er mir diese Fehler anzeigt??? Kann mir einer Helfen??? Danke im Vorraus! |
| |
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | |
| Erfahrener Benutzer Registriert seit: 24.12.2004
Beiträge: 102
![]() | Also sorry ich verstehe schon was dieser Fehler heißt. Ich zeige euch jetze hier mal den link zu dem orig. gästebuch. http://www.widiker.de/php-skripte/ga...2.phtml?co=yes genauso habe ich das auch gedownloadet d.h. das script ist nicht falsch irgendwas mit meinem php stimmt nicht. Aber ich weiß nicht was. Und hatte gehofft das hier jemand schonmal das selbe problem hatte und mir helfen könnte |
| |
| | ||||
| Gast
Beiträge: n/a
| Zitat:
Zitat:
Zitat:
btw: Kann mal jemand diese Anfängerfrage in das Forum verschieben, in dem Anfänger ihre Fragen stellen? Danke. | |||
| | ||
| Gast
Beiträge: n/a
| Zitat:
| |
| | |
| Erfahrener Benutzer Registriert seit: 15.08.2004
Beiträge: 2.473
![]() | Der Beitrag wurde verschoben, wegen... ... Postings im falschen Forum. Bemerkung: Die gestellte Frage entspricht nicht dem Wissensstand eines/einer Fortgeschrittenen.
__________________ mod = master of disaster |
| |
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| [Erledigt] Galerie Problem... | coraplanet | PHP Tipps 2008 | 4 | 06.06.2008 13:42 |
| Sessions Problem | StephenKing | PHP Tipps 2008 | 3 | 16.10.2007 08:30 |
| datensätze defekt oder problem mit dem einlesen? | Ministry | Datenbanken | 4 | 06.07.2006 18:42 |
| problem!!! | PHP Tipps 2006 | 6 | 08.02.2006 11:06 | |
| [Erledigt] wieder ein Problem bei phpmailer und smtp | PHP Tipps 2006 | 24 | 07.02.2006 01:07 | |
| [Erledigt] Problem bei Massenmails versenden mit der Funktion mail | PHP-Fortgeschrittene | 3 | 19.01.2005 13:36 | |
| [Erledigt] Problem mit Übergabe einer Klasse in PHP4 | PHP-Fortgeschrittene | 10 | 08.01.2005 21:00 | |
| Problem mit Weiterleitung | PHP Tipps 2004-2 | 16 | 22.12.2004 17:49 | |
| Smarty und PHP-Skript Problem | PHP Tipps 2004-2 | 2 | 03.12.2004 22:27 | |
| [Erledigt] PHP Upload (Master Value/Local Value Problem) | PHP-Fortgeschrittene | 5 | 23.11.2004 07:21 | |
| Problem mit alter JavaScript-Funktion | woods | PHP Tipps 2004 | 1 | 13.08.2004 13:34 |
| [Erledigt] Problem mit Timestamp! | PHP Tipps 2004 | 24 | 08.06.2004 19:51 | |
| Login Problem | PHP Tipps 2004 | 4 | 04.06.2004 18:46 | |
| foreach problem | mAy^daY | PHP Tipps 2004 | 3 | 02.06.2004 20:29 |
| Besucher kamen über folgende Suchanfragen bei Google auf diese Seite |
| gb_person.gif, ga gästebuch admin standardpasswort, ga gästebuch admin passwort, ga gästebuch standard passwort, smarty php notice: \undefined variable: admin in\, php gästebuch und eintrag löschen, ffaf49, widiker gästebuch |

Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.