Das epp Gästebuch fehler Parse error

Hallo, will ich bei meinem Gästebuch auf meiner hp einen neuen Artikel schreiben, erscheint dies Fehlermeldung:

Parse error: syntax error, unexpected $end in /users/pflanzspass/www/Gastebuch/eintrag.php on line 137

Wie kann ich diesen Fehler beheben ?

Hier die Eintragsdatei:

<?php
 /*
  ___           __  ____ ___  ___     ___       ___      ___   ___
  |       /   /    |    |   |      |   |  | |      /    |
  |      /__  __  |___ |__/ |__/    |__/ |__| |__/ __ |___  |___/
  |    / /         |    |    |       |    |  | |       |    |
  |___/  |    | __/ |___ |    |       |    |  | |       ___/ |___/

  */

  ##################################################################
  # Dieses PHP-Script unterliegt den Bedingungen der General       #
  # Public Licence, siehe lizenz.txt.                              #
  #                                                                #
  # Autor: Joseph Kellerer (<a href="http://www.dasepp.de" target="_blank" rel="nofollow">www.dasepp.de</a>)                         #
  ##################################################################

  include ('includes/optionen.inc.php');// Includiert die verschiedenen Optionsdateien
  include ('includes/texte.inc.php');
  include ('includes/smilies.inc.php');
  include ('includes/design.inc.php');
  include('includes/ersetzungsfunktionen.inc.php');
  $zeige_regeln = 'ja';

  // Schaltet den Cache-Modus des Browsers (meistens) aus
  header('Cache-Control: no-store, no-cache, must-revalidate');
  header('Cache-Control: post-check=0, pre-check=0', false);
  header('Pragma: no-cache');

  // IP bestimmen
  if(getenv('HTTP_X_FORWARDED_FOR'))
 {
   $ip = getenv('HTTP_X_FORWARDED_FOR');
 }
 else
 {
   $ip = getenv('REMOTE_ADDR');
 }

 if (!empty ($_POST['text']))
 {
   header('refresh:10;url=gbuch.php?seite=1');// Automatische Weiterleitung nach 10 Sekunden

   // Setzen verschiedener Cookies. Diese sind dazu da, dass man ab dem zweiten Besuch nicht nochmal seine ganzen
   // Daten wie Name, EMail, Alter usw. eingeben muss
   setcookie('dasepp_php_gb_user', $_POST['user'], time()+365*48*3600);
   setcookie('dasepp_php_gb_mail', $_POST['mail'], time()+365*48*3600);
   setcookie('dasepp_php_gb_alter', $_POST['alter'], time()+365*48*3600);
   setcookie('dasepp_php_gb_wohnort', $_POST['wohnort'], time()+365*48*3600);
   setcookie('dasepp_php_gb_homepage', $_POST['homepage'], time()+365*48*3600);
   setcookie('dasepp_php_gb_icq', $_POST['icq'], time()+365*48*3600);
   setcookie('dasepp_php_gb_bild', $_POST['bild'], time()+365*48*3600);
   setcookie('dasepp_php_gb_passwort', pwd($_POST['password']), time()+365*48*3600);
 }

 $fenstertitel = $eintrag_php_titel;// Festlegen des Titels
 include ('includes/gbheader.php');// Includiert die Header-Datei
 include('includes/eintraege_auslesen.inc.php');

 echo '<noscript> ' . gbcharset($nojserror) . ' ';

 $ip_open = fopen($entries_file,'r');
 $ip_read = fread($ip_open, filesize($entries_file)+1);
 fclose($ip_open);
 $ip_split = explode('^',$ip_read);
 if(filesize($entries_file) > 0)
 {
   foreach(range(0, (count($ip_split)/17)) as $vie)
   {
     if($ip == $ip_split[$vie*16+8])
     {
       $check = time() - $ip_split[$vie*17+7] > $zeitzw2eintraegen ? 0 : 1;
     }
   }
 }

 $assira_check = 0;

 if($eingabef_assira == 'ja' and !empty($_POST['user']) and !empty ($_POST['text'])) {
   $assira = file('<a href="http://challenge.asirra.com/cgi/Asirra?action=ValidateTicket&ticket=" target="_blank" rel="nofollow">http://challenge.asirra.com/cgi/Asirra?action=Valida...</a>' . $_POST['Asirra_Ticket']);
   if(trim($assira[2]) == 'Fail') {
     $assira_check = 1;
   }
 }


 if($check == 0 and $assira_check == 0)// Überprüft, ob die Zeitbegrenzung eingehalten wurde
 {

   if (!empty($_POST['user']) and !empty ($_POST['text']))
   {
     $freischalt_uri = str_replace('eintrag.php', 'freischalt.php', 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']);

     if($_FILES['bild']['tmp_name'] != 'none' and $_FILES['bild']['tmp_name'] != '')
     {
       include('includes/upload_image.inc.php');
     }

     // Sonderzeichen, die als Trennzeichen verwendet werden, werden in ihre HTML-Entsprechungen umgewandelt
     $user = eingabefeld($_POST['user']);
     $mail = mailprotect($_POST['mail']);
     $alter = is_numeric($_POST['alter']) ? $_POST['alter'] : '';
     $wohnort = eingabefeld($_POST['wohnort']);
     $homepage = eingabefeld($_POST['homepage']);
     $homepage = str_replace('http://', '', $homepage);
     $homepage = str_replace('noch keine', '', $homepage);
     if(strlen($homepage) > 5) $homepage = 'http://'.$homepage;
     $icq = is_numeric($_POST['icq']) ? $_POST['icq'] : "";
     $bild = $name_bild;
     $betreff = eingabefeld($_POST['betreff']);
     $bewertung = eingabefeld($_POST['bewertung']);
     $misc_1 = eingabefeld($_POST['misc_1']);
     $misc_2 = eingabefeld($_POST['misc_2']);
     $misc_3 = eingabefeld($_POST['misc_3']);
     $misc_4 = eingabefeld($_POST['misc_4']);
     $password = pwd($_POST['password']);// Passwort wird verschlüsselt gespeichert

     $text = $_POST['text'];
     $text = eingabefeld($text);

     if($aut_break == 'ja')
     {
       $text = preg_replace("/(S{100})(S)/", " ", $text);// Bricht lange Wörter alle 100 Zeichen um
     }

     $neuer_eintrag = "$user^$mail^$alter^$wohnort^$homepage^$icq^$bild^".time()."^$ip^$betreff^$bewertung^$text^^$misc_1^$misc_2^$misc_3^$misc_4^$password|";// Neuer Eintrag wird erstellt

     $mailtext = preg_replace("/[quote=(.*?)](.*?)[/quote]/si", "Zitat von : 
 ", $_POST['text']);
     $mailtext = preg_replace("/[(.*?)]/si", "", $mailtext);// BBCodes werden aus Mailtext entfernt
     $mailtext = preg_replace("/[/(.*?)]/si", "", $mailtext);
     $mailtext = stripslashes($mailtext);
     $mailmail = empty($_POST['mail']) ? "<a href="mailto:keine.Angabe@unbekannt.org" target="_blank" rel="nofollow">keine.Angabe@unbekannt.org</a>" : QB_SECURE_MAIL_PARAM($_POST['mail']);

     $mailtext_mail = !empty($_POST['mail']) ? "
 Mail: ".$_POST['mail'] : "";
     $mailtext_homepage = !empty($_POST['homepage']) ? "
 Homepage: ".$_POST['homepage'] : "";
     $mailtext_icq = is_numeric($_POST['icq']) ? "
 ICQ: ".$_POST['icq'] : "";
     $mailtext_misc_1 = !empty($_POST['misc_1']) ? "
 $eintrag_php_misc_1: ".$_POST['misc_1'] : "";
     $mailtext_misc_2 = !empty($_POST['misc_2']) ? "
 $eintrag_php_misc_2: ".$_POST['misc_2'] : "";
     $mailtext_misc_3 = !empty($_POST['misc_3']) ? "
 $eintrag_php_misc_3: ".$_POST['misc_3'] : "";
     $mailtext_misc_4 = !empty($_POST['misc_4']) ? "
 $eintrag_php_misc_4: ".$_POST['misc_4'] : "";
     $mailtext_wohnort = !empty($_POST['wohnort']) ? "
 Wohnort: ".$_POST['wohnort'] : "";
     $mailtext_alter = is_numeric($_POST['alter']) ? "
 Alter: ".$_POST['alter'] : "";
     $mailtext_bewertung = !empty($_POST['bewertung']) ? "
 Bewertung: ".$_POST['bewertung'] : "";
     $mailtext_betreff = !empty($_POST['betreff']) ? "
 Betreff: ".$_POST['betreff'] : "";

     $mailtext_info = $mailtext_mail.$mailtext_homepage.$mailtext_icq.$mailtext_misc_1 .$mailtext_misc_2.$mailtext_misc_3.$mailtext_misc_4.$mailtext_alter.$mailtext_wohnort.$mailtext_bewertung.$mailtext_betreff;

     $bildinfotext = '';
     if(!empty($name_bild))
     {
       $bildinfotext = "
 ".$_POST['user'].' hat ein Bild hochgeladen: '.str_replace(basename($_SERVER['PHP_SELF']), '', 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']).$name_bild."
 Um dieses Bild zu löschen, musst du diesen Eintrag erst freischalten und dann löschen.";
     }

     if ($send_mail == 'ja' and $mod_gb == 'nein')
     {
       $mail_text = "Neuer Eintrag im Gästebuch. Dieser wurde sofort hinzugefügt.

 ----------

 Name: ".$_POST['user'].$mailtext_info."
 IP: ".$ip."
 Text:

 ".$mailtext;

       mail(
         QB_SECURE_MAIL_PARAM($user_mail),
         QB_SECURE_MAIL_PARAM($mail_betreff),
         QB_SECURE_MAIL_PARAM($mail_text, 1),
         'From:'.QB_SECURE_MAIL_PARAM($_POST['user'])."
 Reply-To: $mailmail"
       );
         // Versendet die Info-Mail
     }

     if ($mod_gb == 'ja')
     {
       $mail_text = "Neuer Eintrag im Gästebuch. Dieser wurde noch nicht hinzugefügt.

 ----------

 Name: ".$_POST['user'].$mailtext_info."
 IP: ".$ip."
 Text:

 ".$mailtext."

 ----------

 Wenn dieser Eintrag ins Gästebuch soll, gehe auf ".$freischalt_uri." und füge dort folgenden Code ein:

 ----------

 ".wordwrap(base64_encode("$user^$mail^$alter^$wohnort^$homepage^$icq^$bild^".time()."^$ip^$betreff^$bewertung^$text^^$misc_1^$misc_2^$misc_3^$misc_4^$password|"), 70, "
 ", 1)."

 ----------

 Gib dann noch dein Passwort ein und sende das Formular ab. Der Eintrag wird dann hinzugefügt.$bildinfotext";
       mail(
         QB_SECURE_MAIL_PARAM($user_mail),
         QB_SECURE_MAIL_PARAM($mail_betreff),
         QB_SECURE_MAIL_PARAM($mail_text, 1),
         'From:'.QB_SECURE_MAIL_PARAM($_POST['user'])."
 Reply-To: $mailmail"
       );
         // Versendet die Info-Mail bei moderiertem Gästebuch
     }

     if ($mod_gb != 'ja')
     {
       $lesen = file_get_contents($entries_file);

       $derzuspeicherndetext = $lesen . $neuer_eintrag;// Der neue Eintrag wird hinzugefügt

       $speichern = file_put_contents($entries_file, $derzuspeicherndetext);
     }

   }

   $option_array = explode('|', $eintrag_php_bewertung_opt);// Auswahlliste für Bewertung

   $idcode = '';
   if(is_numeric($_GET['id']))
   {
     $idcode = "
 ";
   }

   if(empty ($_POST['text']) and empty($_POST['regeln']) and $zeige_regeln == "ja")
   {
     echo "
 $regeln";
     echo "

 $idcode
 ";

     if($buttontyp == 'a')
     {
       $acc_inf = getimagesize($image_acc);
       echo "<a href="%255C%2522javascript:document.regeln.submit()%255C%2522" rel="nofollow"></a> ";
     }
     if($buttontyp == 'b')
     {
       echo '<a href="javascript:document.regeln.submit()" rel="nofollow">' . gbcharset($eintrag_php_button_ak) . '</a>';
     }

     echo "

 ";
   }

   elseif(empty ($_POST['text']) and $_POST['regeln'] == 'ok')
   {
     include('includes/formular.inc.php');
   }

   elseif(empty ($_POST['text']) and $zeige_regeln != 'ja')
   {
     include('includes/formular.inc.php');
   }

   else
   {
     echo $mod_gb == 'ja' ? $erfolgsmeldung_freischalt : $erfolgsmeldung;// Gibt die Erfolgsmeldung aus
   }
 }
 elseif($assira_check == 1)
 {
   echo $meldung_assira;
 }
 else
 {
   echo $unterschreit;// Fehlermeldung bei Unterschreiten der Zeitbegrenzung
 }
 include ('includes/gbfooter.php');
 ?>

 </noscript>
 
Re: das epp Gästebuch fehler Parse error
weshalb quälen sich manche den Quellcode ihrer halben Website abzudrucken anstatt einfach einen Link zur Seite einzutragen expressionless

Es braucht meistens mehr Infos als nur Auszüge um ein Problem analysieren zu können. Manchmal nervt es schon frowning

Gruß, der Rosslauer
Re: das epp Gästebuch fehler Parse error
Wenn euch der Link besser weiterhilft, hier der Link:

http://www.pflanzspass.bplaced.net/Gastebuch/gastebu...

Gruß haner.
Re^2: das epp Gästebuch fehler Parse error
Hi haner,

erstmal Danke das Du den Link noch nachgereicht hast smile

Zu Deinem Problem.
Bestimmte Bereiche in Deinem Script scheinen unvollständig

if($eingabef_assira == 'ja' and !empty($_POST['user']) and !empty ($_POST['text'])) {
$assira = file('http://challenge.asirra.com/cgi/Asirr...' . $_POST['Asirra_Ticket']);
if(trim($assira[2]) == 'Fail') {
$assira_check = 1;

und

$freischalt_uri = str_replace('eintrag.php', 'freischalt.php', 'http://'.$_SERVER['HTTP_HOST'].$_SERV...);


Möglich wäre natürlich das Du diese bewust weggelassen hast.

Gruß, der Rosslauer
Re^2: das epp Gästebuch fehler Parse error
Hallo,

danke für deine Antwort, sie hat mir weitergeholfen.
Nun habe ich jedoch noch ein paar Fehlermeldungen, was muss ich machen, damit auch diese verschwinden?
Hier der Link direkt dorthin:

http://www.pflanzspass.bplaced.net/Gastebuch/eintrag...

Gruß haner.
Re^3: das epp Gästebuch fehler Parse error
hallo haner,

vor dem Ausliefern der Header Information an den Browser darf keine Ausgabe, welche auch immer erfolgen. Sonst hast eben häßliche Fehlermeldungen smile
Nun kannst entweder einfach die Fehlermeldung unterdrücken durch einfügen von error_reporting(0); oder schaun ob eine Deiner PHP-Dateien vor dem ersten oder nach dem letzten ?> irgendeine Ausgabe tätigt wobei hier auch Leerzeichen oder Zeilenumbrüche zählen.
Vorrangig tippe ich hier mal auf eintrag.php, der gbuch.php oder eventuell auf template.php da Du hier sicher Anpassungen vorgenommen hast.

Gruß, der Rosslauer

Re^3: das epp Gästebuch fehler Parse error
Hallo,

wo muss ich das error_reporting(0); denn einfügen.
Am Anfang bzw. Ene, oder in irgend eine bestimmte Zeile?

Gruß haner.