Links im Beitrag sind zu lang

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.
Benutzeravatar
Eclipse16V
Mitglied
Beiträge: 576
Registriert: 27.11.2002 17:04
Wohnort: Gießen
Kontaktdaten:

Links im Beitrag sind zu lang

Beitrag von Eclipse16V »

Hab da mal ne Frage. Gibt es eine Möglichkeit wenn jemand einen Link in einem Beitrag eingibt diesen zu trennen so das er nicht in einer Zeile steht und das Design sprengt sondern zu teilen so das das Design nicht zerstört wird.
www.Eclipse16V.de
Erste Eclipse16V IG Deutschlands
Benutzeravatar
Henne
Ehemaliges Teammitglied
Beiträge: 4520
Registriert: 04.01.2002 01:00
Wohnort: Lage (Lippe)
Kontaktdaten:

Beitrag von Henne »

Gewöhne deinen Leuten an, dass sie mit dem BBCode arbeiten :)

Code: Alles auswählen

[url=http://www.phpbb.de/undnochwasganzlanges]phpBB.de[/url]
Das Problem bei den URLs ist, dass man keinen Zeilenumbruch einfügen kann...
Benutzeravatar
Eclipse16V
Mitglied
Beiträge: 576
Registriert: 27.11.2002 17:04
Wohnort: Gießen
Kontaktdaten:

Beitrag von Eclipse16V »

toll genau das wollte ich vermeiden.
www.Eclipse16V.de
Erste Eclipse16V IG Deutschlands
Benutzeravatar
Henne
Ehemaliges Teammitglied
Beiträge: 4520
Registriert: 04.01.2002 01:00
Wohnort: Lage (Lippe)
Kontaktdaten:

Beitrag von Henne »

Oder man müsste mit ner Funktion arbeiten, die die URL kürzt und dann automatisch nen BBCode von macht.
Benutzeravatar
Eclipse16V
Mitglied
Beiträge: 576
Registriert: 27.11.2002 17:04
Wohnort: Gießen
Kontaktdaten:

Beitrag von Eclipse16V »

Ja so was wie wenn man eine Url eingibt automatisch in den BBCode URL umwandelt und als Testlink "Hier gehts weiter" schreibt.
www.Eclipse16V.de
Erste Eclipse16V IG Deutschlands
MrCruiser

Beitrag von MrCruiser »

Hatte vor kurzem das gleiche Problem wie du und habe es so auch gelöst bekommen. Bei mir werden die Wörter nach 80 Zeichen getrennt. Probier es einfach mal aus:
http://www.phpbb.de/viewtopic.php?p=185161#185161
SevenIsMy
Mitglied
Beiträge: 37
Registriert: 27.07.2003 20:49

Beitrag von SevenIsMy »

finde in bbcode.php:

Code: Alles auswählen

	// matches an "xxxx://yyyy" URL at the start of a line, or after a space.
	// xxxx can only be alpha characters.
	// yyyy is anything up to the first space, newline, comma, double quote or <
	$ret = preg_replace("#(^|[\n ])([\w]+?://.*?[^ \"\n\r\t<]*)#is", "\\1<a href=\"\\2\" target=\"_blank\">\\2</a>", $ret);

	// matches a "www|ftp.xxxx.yyyy[/zzzz]" kinda lazy URL thing
	// Must contain at least 2 dots. xxxx contains either alphanum, or "-"
	// zzzz is optional.. will contain everything up to the first space, newline, 
	// comma, double quote or <.
	$ret = preg_replace("#(^|[\n ])((www|ftp)\.[\w\-]+\.[\w\-.\~]+(?:/[^ \"\t\n\r<]*)?)#is", "\\1<a href=\"http://\\2\" target=\"_blank\">\\2</a>", $ret);
und ersertze es durch

Code: Alles auswählen

	// matches an "xxxx://yyyy" URL at the start of a line, or after a space.
	// xxxx can only be alpha characters.
	// yyyy is anything up to the first space, newline, comma, double quote or <
	$ret = preg_replace_callback("#(^|[\n ])([\w]+?://.*?[^ \"\n\r\t<]*)#is", 'http_url_callback', $ret);


	// matches a "www|ftp.xxxx.yyyy[/zzzz]" kinda lazy URL thing
	// Must contain at least 2 dots. xxxx contains either alphanum, or "-"
	// zzzz is optional.. will contain everything up to the first space, newline, 
	// comma, double quote or <.
	$ret = preg_replace_callback("#(^|[\n ])((www|ftp)\.[\w\-]+\.[\w\-.\~]+(?:/[^ \"\t\n\r<]*)?)#is", 'url_callback', $ret);
finde:

Code: Alles auswählen

	$ret = substr($ret, 1);

	return($ret);
}
und füge danach ein

Code: Alles auswählen

function http_url_callback($m)
{
    $t = $m[2];
    if(strlen($m[2]) > 110)
    {
        $rechts = substr($m[2], 0, 50);
        $links  = substr($m[2], strlen($m[2]) - 50, 50);
        $t = $rechts.' ....... '.$links;

    }
    return $m[1]."<a href=\"".$m[2]."\" target=\"_blank\" class=\"postlink\">".$t."</a>";
}

function url_callback($m)
{
    $t = $m[2];
    if(strlen($m[2]) > 110)
    {
        $rechts = substr($m[2], 0, 50);
        $links  = substr($m[2], strlen($m[2]) - 50, 50);
        $t = $rechts.' ....... '.$links;

    }
    return $m[1]."<a href=\"http://".$m[2]."\" target=\"_blank\" class=\"postlink\">".$t."</a>";
}
Benutzeravatar
Eclipse16V
Mitglied
Beiträge: 576
Registriert: 27.11.2002 17:04
Wohnort: Gießen
Kontaktdaten:

Beitrag von Eclipse16V »

also ich finde bei mir nur das:

Code: Alles auswählen

	// matches an "xxxx://yyyy" URL at the start of a line, or after a space.
	// xxxx can only be alpha characters.
	// yyyy is anything up to the first space, newline, comma, double quote or <
	$ret = preg_replace("#([\t\r\n ])([a-z0-9]+?){1}://([\w\-]+\.([\w\-]+\.)*[\w]+(:[0-9]+)?(/[^ \"\n\r\t<]*)?)#i", '\1<a href="\2://\3" target="_blank">\2://\3</a>', $ret);

	// matches a "www|ftp.xxxx.yyyy[/zzzz]" kinda lazy URL thing
	// Must contain at least 2 dots. xxxx contains either alphanum, or "-"
	// zzzz is optional.. will contain everything up to the first space, newline, 
	// comma, double quote or <.
	$ret = preg_replace("#([\t\r\n ])(www|ftp)\.(([\w\-]+\.)*[\w]+(:[0-9]+)?(/[^ \"\n\r\t<]*)?)#i", '\1<a href="http://\2.\3" target="_blank">\2.\3</a>', $ret);
Soll ich das einfach so ersstzen oder nicht? Ist danderster als die oben stehende.
www.Eclipse16V.de
Erste Eclipse16V IG Deutschlands
SevenIsMy
Mitglied
Beiträge: 37
Registriert: 27.07.2003 20:49

Beitrag von SevenIsMy »

liegt daran das du mit 2.04 arbeitest, kanns es ersetzen würde mich wundern wenn es dadurch zu problemen kommt
Benutzeravatar
frozenAntilope
Mitglied
Beiträge: 37
Registriert: 01.05.2003 07:37

Beitrag von frozenAntilope »

@SevenIsMy

was mach der von dir oben gepostete code? (etwas verwirrt)


mfg
jan
Antworten

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