Hi,
wenn die Daten aus der Datenbank ausgelesen und angezeigt werden, sollen die Links (http, www, usw) innerhalb des Strings erkannt und als solches angezeigt werden.
Dafür verwende ich folgendes Script:
Es klappt auch mit Links wie www.google.de oder http://yahoo.com. wunderbar.
Das Problem ist aber, dass wenn der Link wie folgt aussieht:
www.google.de/art/test.php
dann wird nur www.google.de als Link erkannt und der Rest nicht.
Kennt jemand eine Lösung??
Danke
wenn die Daten aus der Datenbank ausgelesen und angezeigt werden, sollen die Links (http, www, usw) innerhalb des Strings erkannt und als solches angezeigt werden.
Dafür verwende ich folgendes Script:
function str2link($string){
$string= preg_replace('/[^href=\'|href=\\"|\>][^http:\/\/](www.[a-zA-Z0-9._-]+)/', ' http://$1', $string);
$string= preg_replace('/([^href=\'|href=\\"|\>]http:\/\/[a-zA-Z0-9._-]+|[^href=\'|href=\\"|\>]https:\/\/[a-zA-Z0-9._-]+|[^href=\'|href=\\"|\>]ftp:\/\/[a-zA-Z0-9._-]+)/', "<br><br><a href='$0' target='_blank'>$0</a>", $string);
return $string;
}
$string= preg_replace('/[^href=\'|href=\\"|\>][^http:\/\/](www.[a-zA-Z0-9._-]+)/', ' http://$1', $string);
$string= preg_replace('/([^href=\'|href=\\"|\>]http:\/\/[a-zA-Z0-9._-]+|[^href=\'|href=\\"|\>]https:\/\/[a-zA-Z0-9._-]+|[^href=\'|href=\\"|\>]ftp:\/\/[a-zA-Z0-9._-]+)/', "<br><br><a href='$0' target='_blank'>$0</a>", $string);
return $string;
}
Das Problem ist aber, dass wenn der Link wie folgt aussieht:
www.google.de/art/test.php
dann wird nur www.google.de als Link erkannt und der Rest nicht.
Kennt jemand eine Lösung??
Danke
Kommentar