Links, Zeilenumbruch, Function

SaTaN

Erfahrenes Mitglied
Hallo Leuts,

bin mal wieder am ende meines Wissens gekommen. :-)
Ich weis auch nicht wie ich mein Problem beschreiben soll.
Na hoffentlich gelingt es mir und der eine oder andere versteht mich.

Ich schreibe an ein Gästebuch wo ich möchte das die Links sowie die
Mailadressen per Link dargestellt werden.
Nun folgendes :
Wenn ein Zeilenbruch kommt wird der Link nach dem brechen nicht fortgeführt.
Ich arbeite mit 2 functionen.
Die eine soll nach einer bestimmten Länge brechen und die andere soll
die jeweiligen Links darstellen.
PHP:
// Diese function ist für die bestimmte textlänge zuständig
function wrap($text, $length)
{
    $x = 0; $i = 0; $zeile[0] = "";    
    while ($i<strlen($text)) 
    {
        $word_len = strpos($text, " ", $i+1) - $i;        
        if ($word_len <= 0) $word_len = strlen($text) - $i;
        if (($word_len + $x) <= $length) {
            $zeile[count($zeile)-1] .= substr($text, $i, $word_len);
            $x += $word_len; $i += $word_len;
        }
        elseif ($x == 0) {
            $zeile[count($zeile)-1] = substr($text, $i, $length);
            $zeile[] = "";
            $i += $length;
        }
        else {
            $zeile[] = "";
            $x = 0;    $i++;
        }
    }    
    return implode("<br>", $zeile);
}
//function für die Linkerstellung
function bbcode($s) {  
  $pattern = '#(^|[^\"=]{1})(http://|ftp://|mailto:|news:)([^\s<>]+)([\s\n<>]|$)#sm';
  $s = preg_replace($pattern,"\\1<a href=\"\\2\\3\"><u>\\2\\3</u></a>\\4",$s);
return($s); 
} 

//so rufe ich die function auf
$text = wrap($text,40);
$text = bbcode($text);
echo $text;

Ich hoffe ich konnte micih klar ausdrücken.
Weis jemand wie ich das realisieren kann, das der Link fortgeführt wird nach dem brechen ?

Vielen Dank.

euer SaTaN
 
Zuletzt bearbeitet:
?
geht doch:

<a href="http://www.google.de">Testlink<br>Zeile2</a>

Sorry ich habe vielleicht nicht dazu gesagt das es in einem <Textarea>
feld eingegeben wird.
Vielleicht ist es besser Ihr testet es mal selber.
testlink

Ich weis da sonst einfach nicht weiter.
Meistens tritt es auf wenn die URL`s sehr lang sind.
http://google.de ist für diesen test recht klein.

Vielen Dank

euer SaTaN
 
Zuletzt bearbeitet:
Zurück