Seite 1 von 1

Erweiterung der Links

Verfasst: 04.11.2006 13:25
von Sanchez17
Hola,

in unserem Forum bieten wir Programme,Infos und Support für kostenlosen Live Fussball.

Da benötigen wir auch Links, dieser Art:

vgo://netlive|play|13](VGO)

Leider werden diese aber nicht verlinkt (nicht vollständig).Ab dem ersten "|" hört er auf zu verlinken. Dies ist natürlich blöd, vorallem für die User.

Könnte man nicht, in einer Datei diese Zeichen "|" und "(" sowie ")" erlauben?

Verfasst: 04.11.2006 19:29
von killerbees19
Das sollte man in der includes/bbcode.php verändern können :wink:
Wie genau kann ich dir jetzt auch nicht sagen...

Jedenfalls ist dieser Teil dafür verantwortlich:

Code: Alles auswählen

	// matches a [url]xxxx://www.phpbb.com[/url] code..
	$patterns[] = "#\[url\]([\w]+?://([\w\#$%&~/.\-;:=,?@\]+]+|\[(?!url=))*?)\[/url\]#is";
	$replacements[] = $bbcode_tpl['url1'];

	// [url]www.phpbb.com[/url] code.. (no xxxx:// prefix).
	$patterns[] = "#\[url\]((www|ftp)\.([\w\#$%&~/.\-;:=,?@\]+]+|\[(?!url=))*?)\[/url\]#is";
	$replacements[] = $bbcode_tpl['url2'];

	// [url=xxxx://www.phpbb.com]phpBB[/url] code..
	$patterns[] = "#\[url=([\w]+?://[\w\#$%&~/.\-;:=,?@\[\]+]*?)\]([^?\n\r\t].*?)\[/url\]#is";
	$replacements[] = $bbcode_tpl['url3'];

	// [url=www.phpbb.com]phpBB[/url] code.. (no xxxx:// prefix).
	$patterns[] = "#\[url=((www|ftp)\.[\w\#$%&~/.\-;:=,?@\[\]+]*?)\]([^?\n\r\t].*?)\[/url\]#is";
	$replacements[] = $bbcode_tpl['url4'];

MfG Christian

Verfasst: 04.11.2006 19:42
von gn#36
Eine dieser beiden Varianten sollte funktionieren:

Code: Alles auswählen

	// matches a [url]xxxx://www.phpbb.com[/url] code..
	$patterns[] = "#\[url\]([\w]+?://([\w\#$\|()%&~/.\-;:=,?@\]+]+|\[(?!url=))*?)\[/url\]#is";
	$replacements[] = $bbcode_tpl['url1'];

	// [url]www.phpbb.com[/url] code.. (no xxxx:// prefix).
	$patterns[] = "#\[url\]((www|ftp)\.([\w\#$\|()%&~/.\-;:=,?@\]+]+|\[(?!url=))*?)\[/url\]#is";
	$replacements[] = $bbcode_tpl['url2'];

	// [url=xxxx://www.phpbb.com]phpBB[/url] code..
	$patterns[] = "#\[url=([\w]+?://[\w\#$\|()%&~/.\-;:=,?@\[\]+]*?)\]([^?\n\r\t].*?)\[/url\]#is";
	$replacements[] = $bbcode_tpl['url3'];

	// [url=www.phpbb.com]phpBB[/url] code.. (no xxxx:// prefix).
	$patterns[] = "#\[url=((www|ftp)\.[\w\#$\|()%&~/.\-;:=,?@\[\]+]*?)\]([^?\n\r\t].*?)\[/url\]#is";
	$replacements[] = $bbcode_tpl['url4'];

Code: Alles auswählen

	// matches a [url]xxxx://www.phpbb.com[/url] code..
	$patterns[] = "#\[url\]([\w]+?://([\w\#$\|\(\)%&~/.\-;:=,?@\]+]+|\[(?!url=))*?)\[/url\]#is";
	$replacements[] = $bbcode_tpl['url1'];

	// [url]www.phpbb.com[/url] code.. (no xxxx:// prefix).
	$patterns[] = "#\[url\]((www|ftp)\.([\w\#$\|\(\)%&~/.\-;:=,?@\]+]+|\[(?!url=))*?)\[/url\]#is";
	$replacements[] = $bbcode_tpl['url2'];

	// [url=xxxx://www.phpbb.com]phpBB[/url] code..
	$patterns[] = "#\[url=([\w]+?://[\w\#$\|\(\)%&~/.\-;:=,?@\[\]+]*?)\]([^?\n\r\t].*?)\[/url\]#is";
	$replacements[] = $bbcode_tpl['url3'];

	// [url=www.phpbb.com]phpBB[/url] code.. (no xxxx:// prefix).
	$patterns[] = "#\[url=((www|ftp)\.[\w\#$\|\(\)%&~/.\-;:=,?@\[\]+]*?)\]([^?\n\r\t].*?)\[/url\]#is";
	$replacements[] = $bbcode_tpl['url4'];
Ich glaube die erste sollte schon gehen, ich bin mir nicht ganz sicher, ob die Klammern auch mit Fluchtzeichen versehen werden müssen...
Wichtig: Alle Dateien vor der Änderung sichern! Ich habe das nicht getestet und übernehme keine Garantie!

Verfasst: 04.11.2006 20:27
von Ambience
sweit ich weiß müssen die klammern auch mit \ versehen werden, da sie ja eigentlich als Pattern begrenzung genutzt werden, und mit \ dann als textinhalt...

Verfasst: 04.11.2006 20:35
von gn#36
Schon, aber in den eckigen Klammern eigentlich nicht meine ich, schließlich werden diese verwendet um innerhalb eines solchen Blocks (oder auch sonstwo) die Zeichen anzugeben, die dort stehen dürfen, da kann man keine Gruppen drin zusammenfassen. Ich habe es inzwischen Getestet, Version eins funktioniert zumindest bei mir.

Verfasst: 05.11.2006 00:06
von Sanchez17
Danke gn#36,

die erste Lösung hat geklappt. :wink: