Seite 1 von 3

Update phpBB 2.0.19 - [quote] geht nicht mehr

Verfasst: 30.12.2005 21:01
von BZebra
Hallo,

habe soeben das 19er Update gemacht. Die Zitier-Funktion geht bei mir nicht mehr.

In der bbcode.php habe ich alle 3 Abschnitte exakt so gefunden und ersetzt. In der functions_post.php stand bei mir aber anstelle von

Code: Alles auswählen

$html_entities_match = array('#&(?!(\#[0-9]+;))#', '#<#', '#>#');
$html_entities_replace = array('&', '<', '>');
das hier:

Code: Alles auswählen

$html_entities_match = array('#&#', '#<#', '#>#');
$html_entities_replace = array('&', '<', '>');
Hab den Abschnitt durch den neuen Code ersetzt.

Der Fehler ist behoben wenn ich die bbcode.php in meine 18er Version zurückversetze.

Links zu den Dateien:
http://bzebra.free.fr/phpbb/bbcode_18.txt
http://bzebra.free.fr/phpbb/bbcode_19.txt
http://bzebra.free.fr/phpbb/functions_post_18.txt
http://bzebra.free.fr/phpbb/functions_post_19.txt

Verfasst: 30.12.2005 21:37
von leopittoni
Hallo

Habe dasselber Problem. Die "Quote"-Funktion funktioniert in der 2.0.19 Version nicht mehr...

Léo

Verfasst: 30.12.2005 22:50
von Martin Truckenbrodt
Hallo,
vielleicht ward ihr in der falschen Zeile, weil es mehrere sehr ähnliche Zeilen gibt?

Gruß Martin

Verfasst: 30.12.2005 23:24
von Saint
@BZebra:

bbcode.php

suche:

Code: Alles auswählen

$match = array("pos" => $curr_pos, "tag" => $which_start_tag, "index" => $start_tag_index);
				bbcode_array_push($stack, $match);
ersetze durch:

Code: Alles auswählen

$match = array("pos" => $curr_pos, "tag" => $which_start_tag, "index" => $start_tag_index);
				array_push($stack, $match);
functions_post.php

suche:

Code: Alles auswählen

$tagallowed = (preg_match('#^<\/?' . $match_tag . ' .*?(style[ ]*?=|on[\w]+[ ]*?=)#i', $hold_string)) ? false : true;
ersetze durch:

Code: Alles auswählen

$tagallowed = (preg_match('#^<\/?' . $match_tag . ' .*?(style[\t ]*?=|on[\w]+[\t ]*?=)#i', $hold_string)) ? false : true;
suche:

Code: Alles auswählen

if ($end_html != strlen($message) && $tmp_message != '')
ersetze durch:

Code: Alles auswählen

if (!$end_html || ($end_html != strlen($message) && $tmp_message != ''))
Gruß

Saint

Verfasst: 30.12.2005 23:58
von BZebra
Hallo Saint,

habs grade probiert. Jetzt gehen zwar die quote-Tags wieder, aber dafür meine equote-Tags ([equote="blabla"]) nicht mehr.

Für den ersten Part in der bbcode.php

Code: Alles auswählen

#
#-----[ FIND ]---------------------------------------------
# Line 255
	$text = bbencode_first_pass_pda($text, $uid, '/\[quote=(\\\".*?\\\")\]/is', '[/quote]', '', false, '', "[quote:$uid=\\1]");

#
#-----[ REPLACE WITH ]---------------------------------------------
# 
	$text = bbencode_first_pass_pda($text, $uid, '/\[quote=\\\\"(.*?)\\\\"\]/is', '[/quote]', '', false, '', "[quote:$uid=\\\"\\1\\\"]");
habe ich noch ein Äquivalent bei den equote-Tags gefunden. Der zweite Part existiert für equote aber wohl nicht.

Code: Alles auswählen

#
#-----[ FIND ]---------------------------------------------
# Line 392
				if( preg_match('#\[quote=\\\"#si', $possible_start, $match) && !preg_match('#\[quote=\\\"(.*?)\\\"\]#si', $possible_start) )
				{
					// OK we are in a quote tag that probably contains a ] bracket.
					// Grab a bit more of the string to hopefully get all of it..
					if ($close_pos = strpos($text, '"]', $curr_pos + 9))
					{
						if (strpos(substr($text, $curr_pos + 9, $close_pos - ($curr_pos + 9)), '[quote') === false)
						{
							$possible_start = substr($text, $curr_pos, $close_pos - $curr_pos + 2);

#
#-----[ REPLACE WITH ]---------------------------------------------
# 
				if( preg_match('#\[quote=\\\"#si', $possible_start, $match) && !preg_match('#\[quote=\\\"(.*?)\\\"\]#si', $possible_start) )
				{
					// OK we are in a quote tag that probably contains a ] bracket.
					// Grab a bit more of the string to hopefully get all of it..
					if ($close_pos = strpos($text, '"]', $curr_pos + 14))
					{
						if (strpos(substr($text, $curr_pos + 14, $close_pos - ($curr_pos + 14)), '[quote') === false)
						{
							$possible_start = substr($text, $curr_pos, $close_pos - $curr_pos + 7);

Verfasst: 31.12.2005 14:12
von Saint
@leopittoni: Verlink doch sonst auch mal Deine bbcode.php und die functions_post.php

@BZebra: ich versteh Deine Antwort nicht recht - sind Deine Probleme jetzt gelöst, bzw ist Dein voriger Post die Lösung?

Gruß

Saint

Verfasst: 31.12.2005 14:18
von leopittoni
Hallo

habe die Änderungen an der bbcode.php und der function_post.php durchgeführt, jetzt gehts wieder!

Was ist denn überhaupt [equote]?

Danke, Léo

Verfasst: 31.12.2005 14:22
von Saint
Wieso nicht gleich so? :wink:

[equote] kenn ich nicht, scheint aber ein kleiner Mod zu sein zum "schnell zitieren", wenn ich das richtig verstanden hab. Sollte Dich also nicht betreffen, solange Du derart nix eingebaut hast.

Gruß

Saint

Verfasst: 31.12.2005 14:26
von leopittoni
ok, danke!

Léo

Verfasst: 31.12.2005 14:27
von Saint
Nochmal hinterher geschoben:
[2.0.x] BBCode equote

Gruß

Saint