Seite 1 von 3

2.0.11 - Alle Url's in [img] Tags erlauben

Verfasst: 12.12.2004 16:50
von phpbbUSER
Guten Tag alle zusammen,

Da seit Version 2.0.8 die URL's im [ externes Bild ]

[ externes Bild ]

Benutze schon folgenden (erweiterten) Code in der bbcode.php:

Code: Alles auswählen

// [img]image_url_here[/img] code..
	$text = preg_replace("#\[img\]((ht|f)tp://)([^ &\"\n\r\t<]*?(\.(jpg|jpeg|gif|png|php[^\[]*|html[^\[]*|chart[^\[]*)))\[/img\]#sie", "'[img:$uid]\\1' . str_replace(' ', '%20', '\\3') . '[/img:$uid]'", $text);
Die "Gefahr", bei weiterer Öffnung des Codes, ist mir bewusst. Deshalb möchte ich eine gewisse Kontrolle beibehalten, jedoch sieht es wohl so aus, als müsste ich die Kontrolle ganz rausnehmen?

Und wenn ja, wie muss der Code dann aussehen?

Danke und Gruß,

PS: Sorry, dass die URL die Tabelle sprengt..

Verfasst: 12.12.2004 17:08
von Nico Haase
das zweite ist eine html-datei und kein bild, eine darstellung als image würde zu einem fehler führen. das erste ist ein bild, wird aber nicht als solches erkannt. warum das seit 2.0.8 so ist, musst du die entwickler fragen, aber sie werden einen sicherheitstechnischen grund für die einführung gehabt haben, den du nicht einfach rauscoden solltest.

Verfasst: 12.12.2004 17:11
von phpbbUSER
Das 2te ist ein dynamisch generiertes Bild .. eher ein Chart aber OK.

Die Darstellung der 2ten URL als [img] hat bis Version 2.0.8 wunderbar geklappt.

Der Sicherheitstechnische Grund ist für mich obsolet. Ein Grund dafür ist, dass ich ein (sehr kleines) geschlossenes Board betreibe.

Verfasst: 12.12.2004 17:31
von Nico Haase
guck dir mal das zweite an, das ist ganz offensichtlich eine html-seite. okay, aber hier nun - auf eigene gefahr! - die lösung deines problems: öffne die datei includes/bbcode.php und ersetze

Code: Alles auswählen

$text = preg_replace("#\[img\]((ht|f)tp://)([^ \?&=\"\n\r\t<]*?(\.(jpg|jpeg|gif|png)))\[/img\]#sie", "'[img:$uid]\\1' . str_replace(' ', '%20', '\\3') . '[/img:$uid]'", $text);
(phpbb 2.0.8a) bzw.

Code: Alles auswählen

$text = preg_replace("#\[img\]((http|ftp|https|ftps)://)([^ \?&=\#\"\n\r\t<]*?(\.(jpg|jpeg|gif|png)))\[/img\]#sie", "'[img:$uid]\\1' . str_replace(' ', '%20', '\\3') . '[/img:$uid]'", $text);
(ab phpbb 2.0.9) mit

Code: Alles auswählen

$text = preg_replace("#\[img\]((ht|f)tp://)([^\r\n\t<\"]*?)\[/img\]#sie", "'[img:$uid]\\1' . str_replace(' ', '%20', '\\3') . '[/img:$uid]'", $text);
dann sollte es wieder klappen.

Verfasst: 12.12.2004 17:46
von phpbbUSER
Hallo Nico,

danke für die schnelle Reaktion. Sorry hab mein erstes Posting editiert. Der 2te link war tatsächlich eine Html Seite.

Es sollte folgender link sein:

http://isht.comdirect.de/charts/large.c ... TR&hcmask=

[ externes Bild ]

Werde deine Lösung testen. Bzw. ich habe den "alten" Code schonmal eingebaut, nur hat es dann auch nicht mehr geklappt. Werde mal schauen.

Verfasst: 12.12.2004 22:47
von phpbbUSER
Der 2te URL Typ läßt sich leider immernoch nicht darstellen.

Habe folgenden Code jetzt verwendet:

[ externes Bild ]

Folgende URL geht nicht:

http://isht.comdirect.de/charts/large.c ... TR&hcmask=

[ externes Bild ]

Gibt es hierfür eine Lösung?

Gruß,

Verfasst: 12.12.2004 23:45
von HeinerT.
Hi zusammen,

ich verwende 2.0.10 und habe auch das o.g. Problem.

Habe

Code: Alles auswählen

$text = preg_replace("#\[img\]((http|ftp|https|ftps)://)([^ \?&=\#\"\n\r\t<]*?(\.(jpg|jpeg|gif|png)))\[/img\]#sie", "'[img:$uid]\\1' . str_replace(' ', '%20', '\\3') . '[/img:$uid]'", $text);
gegen

Code: Alles auswählen

$text = preg_replace("#\[img\]((ht|f)tp://)([^\r\n\t<\"]*?)\[/img\]#sie", "'[img:$uid]\\1' . str_replace(' ', '%20', '\\3') . '[/img:$uid]'", $text);
in "includes/bbcode.php" ersetzt und es funzt bisher prima!

Verfasst: 16.12.2004 22:07
von phpbbUSER
Hallo,

sorry nach 4 Tagen möchte ich mal kurz "bumpen" :lol:

Die Codeänderung ermöglicht leider nicht die Darstellung von allen gewünschten charts.

[ externes Bild ]

Was müsste ich denn noch ändern?

Gruß und Danke.

Verfasst: 16.12.2004 22:10
von Matzelein
Ich möchte nur kurz etwas anmerken. ;)

Ab 2.0.8 werden auch "Live-Signaturen" (php-Dateien, die Bilder erzeugen) nicht mehr in den [img]-Tags zugelassen, da durch php Sicherheitsrisiken entstehen können, da ja jeder beliebigen php-Code verlinken könnte.

Verfasst: 16.12.2004 23:09
von HeinerT.
phpbbUSER hat geschrieben:Hallo,

sorry nach 4 Tagen möchte ich mal kurz "bumpen" :lol:

Die Codeänderung ermöglicht leider nicht die Darstellung von allen gewünschten charts.

[ externes Bild ]

Was müsste ich denn noch ändern?

Gruß und Danke.
Bei mir im Forum funzt es mit der o.g. URL!