[quote="Autor"] wird nicht mehr geparst

Probleme bei der regulären Arbeiten mit phpBB, Fragen zu Vorgehensweisen oder Funktionsweise sowie sonstige Fragen zu phpBB im Allgemeinen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Krain
Mitglied
Beiträge: 16
Registriert: 29.09.2005 12:16

[quote="Autor"] wird nicht mehr geparst

Beitrag von Krain »

Hallo zusammen,

Ich hoffe in diesem Forum hier bin ich richtig.
Und zwar wird auf meinem Webspace der BBCode [quote="Autor"] nicht mehr richtig geparst. Der normale [quote]-Tag wird richtig geparst und auch dargestellt, doch sobald ein Autor dazu angegeben wird, funktioniert es nicht mehr.

Ich habe mir mal den Code durchgelesen und bin denk ich auf die Zeile gestoßen, die den Fehler verursacht:

Aus: ./includes/bbcode.php

Code: Alles auswählen

function bbencode_second_pass_code($text, $uid, $bbcode_tpl)
{
	global $lang;

	$code_start_html = $bbcode_tpl['code_open'];
	$code_end_html =  $bbcode_tpl['code_close'];

	// First, do all the 1st-level matches. These need an htmlspecialchars() run,
	// so they have to be handled differently.
#In folgender Zeile wird der eingegebene Text einfach übersprungen, ohne dass das Tag [quote="Autor"] beachtet wird
	$match_count = preg_match_all("#\[code:1:$uid\](.*?)\[/code:1:$uid\]#si", $text, $matches);

	for ($i = 0; $i < $match_count; $i++)
	{
		$before_replace = $matches[1][$i];
		$after_replace = $matches[1][$i];

		// Replace 2 spaces with "&nbsp; " so non-tabbed code indents without making huge long lines.
		$after_replace = str_replace("  ", "&nbsp; ", $after_replace);
		// now Replace 2 spaces with " &nbsp;" to catch odd #s of spaces.
		$after_replace = str_replace("  ", " &nbsp;", $after_replace);

		// Replace tabs with "&nbsp; &nbsp;" so tabbed code indents sorta right without making huge long lines.
		$after_replace = str_replace("\t", "&nbsp; &nbsp;", $after_replace);

		// now Replace space occurring at the beginning of a line
		$after_replace = preg_replace("/^ {1}/m", '&nbsp;', $after_replace);

		$str_to_match = "[code:1:$uid]" . $before_replace . "[/code:1:$uid]";

		$replacement = $code_start_html;
		$replacement .= $after_replace;
		$replacement .= $code_end_html;

		$text = str_replace($str_to_match, $replacement, $text);
	}

	// Now, do all the non-first-level matches. These are simple.
	$text = str_replace("[code:$uid]", $code_start_html, $text);
	$text = str_replace("[/code:$uid]", $code_end_html, $text);

	return $text;

} // bbencode_second_pass_code()
Komischerweise funktioniert es auf meiner lokalen Testumgebung einwandfrei. Kann mir dabei jemand weiterhelfen?

Danke

Krain
Krain
Mitglied
Beiträge: 16
Registriert: 29.09.2005 12:16

Beitrag von Krain »

Ich habe jetzt nochmal sichergestellt, dass sowohl auf meinem lokalen Testserver als auch auf meiner Internetpräsenz auch wirklich die selben Source liegen. Aber trotzdem tritt dieser Fehler auf.

Ich habe in die viewtopic.php eine Ausgabe gesetzt, und zwar wie folgt:

Code: Alles auswählen

	//
	// Parse message and/or sig for BBCode if reqd
	//
	if ( $board_config['allow_bbcode'] )
	{
		if ( $user_sig != '' && $user_sig_bbcode_uid != '' )
		{
			$user_sig = ( $board_config['allow_bbcode'] ) ? bbencode_second_pass($user_sig, $user_sig_bbcode_uid) : preg_replace('/\:[0-9a-z\:]+\]/si', ']', $user_sig);
		}

		if ( $bbcode_uid != '' )
		{
                        echo $message."<br />";
			$message = ( $board_config['allow_bbcode'] ) ? bbencode_second_pass($message, $bbcode_uid) : preg_replace('/\:[0-9a-z\:]+\]/si', ']', $message);
                        echo $message."<br />";
		}
	}
Auf meinem lokalen System ist die zweite Ausgabe immer korrekt umgewandelt. Auf meiner Internetpräsenz wird das quote nicht geparst, woran kann das liegen? Ich bin langsam am verzweifeln.
Krain
Mitglied
Beiträge: 16
Registriert: 29.09.2005 12:16

Beitrag von Krain »

hat keiner eine ahnung, woran es ungefähr liegen könnte?

Ich habe jetzt einen neuen Ansatz: Bei mir auf dem Testserver wird das quote mit einer $uid in die DB geschreiben:

[quote:b72262204e="Autor"]

Auf der Internetpräsenz wird lediglich [quote="Autor"] reingeschrieben.

Könnte der Fehler also irgendwo in der posting.php liegen?

Bitte bitte helft mir etwas auf die Sprünge, ich flippe hier bald aus.
Krain
Mitglied
Beiträge: 16
Registriert: 29.09.2005 12:16

Beitrag von Krain »

Ich habe einen weiteren Test gemacht und auf meinem Webspace ein völig jungfräuliches Board hochgezogen und dort mal das quoten getestet. Leider mit dem selben Ergebnis.

Kann das Problem an meinem Webspace und den Server- bzw. PHP-Einstellungen liegen?
Krain
Mitglied
Beiträge: 16
Registriert: 29.09.2005 12:16

Beitrag von Krain »

Zur Hilfe habe ich mal eine phpinfo() auf den Webspace hochgespielt die vielleicht bei der Analyse helfen könnte.

Abrufbar unter: phpinfo

Ich wäre euch wirklich sehr dankbar, wenn ihr mir weiterhelfen könntet, ich kann den Fehler nicht finden.

Gruss

Krain
Benutzeravatar
mad-manne
Ehemaliges Teammitglied
Beiträge: 5403
Registriert: 18.03.2005 10:00
Wohnort: Marl im Ruhrgebiet

Re: [quote="Autor"] wird nicht mehr geparst

Beitrag von mad-manne »

Krain hat geschrieben:Und zwar wird auf meinem Webspace der BBCode {quote="Autor"} nicht mehr richtig geparst. Der normale {quote}-Tag wird richtig geparst und auch dargestellt, doch sobald ein Autor dazu angegeben wird, funktioniert es nicht mehr.
Hab' jetzt nicht das gesamte Thema durchgelesen, deshalb diese kurze Frage:
Hat es denn jemals funktioniert, und falls JA ... nach welchen Änderungen hat sich das Problem eingestellt?

Fragt sich (und dich),
Manne.
Try not. Do or do not. There is no try. (YODA)
Supportanfragen via E-Mail oder PN werden ignoriert
Krain
Mitglied
Beiträge: 16
Registriert: 29.09.2005 12:16

Re: [quote="Autor"] wird nicht mehr geparst

Beitrag von Krain »

mad-manne hat geschrieben:Hab' jetzt nicht das gesamte Thema durchgelesen, deshalb diese kurze Frage:
Hat es denn jemals funktioniert, und falls JA ... nach welchen Änderungen hat sich das Problem eingestellt?

Fragt sich (und dich),
Manne.
Nein, es hat nie funktioniert. Wie oben erwähnt habe ich auch versucht ein komplett jungfräuliches phpBB zu installieren. Auch bei diesem Board trat der Fehler auf.

Ich habe das Problem jetzt vorläufig so gelöst, dass bei der Ausgabe auch quote Tags ohne eine $uid geparst werden. Damit ist das Problem erstmal erschlagen, wenn auch nicht wirklich gelöst, da die Posts ja eigentlich falsch in die DB geschrieben werden

Gruß

Krain
Krain
Mitglied
Beiträge: 16
Registriert: 29.09.2005 12:16

Beitrag von Krain »

So wie es aussieht ist dieses Problem wohl noch bei niemandem aufgetreten?
Dann muss ich mich wohl erstmal mit meiner Lösung zufrieden geben.

Gruß

Krain
Benutzeravatar
mad-manne
Ehemaliges Teammitglied
Beiträge: 5403
Registriert: 18.03.2005 10:00
Wohnort: Marl im Ruhrgebiet

Beitrag von mad-manne »

funktionieren denn alle anderen BB-Codes?

Hast du mal 'nen Link zu deinem Board? (wenn du's nicht öffentlich machen willst gerne auch per PN)

Gruss,
Manne.

P.S. Einen Testaccount mit Posting-Rechten in mindestens einem Forum bräuchte ich dann latürnich auch :wink;
Try not. Do or do not. There is no try. (YODA)
Supportanfragen via E-Mail oder PN werden ignoriert
Krain
Mitglied
Beiträge: 16
Registriert: 29.09.2005 12:16

Beitrag von Krain »

mad-manne hat geschrieben:funktionieren denn alle anderen BB-Codes?

Hast du mal 'nen Link zu deinem Board? (wenn du's nicht öffentlich machen willst gerne auch per PN)

Gruss,
Manne.

P.S. Einen Testaccount mit Posting-Rechten in mindestens einem Forum bräuchte ich dann latürnich auch :wink;
Wie oben erwähnt, habe ich das Problem von der Ausgabeseite her umgangen. Das Forum ist hier: Donnerhuf
Die PhpInfo findest du hier, falls es dir hilft:
Donnerhuf

Einen Testaccount brauchst du nicht, da im Forum "Fragen an den Donnerhufstamm" jeder posten darf.
Soll ich meine Änderungen mal wieder entfernen, damit du siehst, dass es nicht geht?


Übrigens Danke für dein Interesse an meinem Problem.
Antworten

Zurück zu „phpBB 2.0: Administration, Benutzung und Betrieb“