webForumDet fria alternativet

Länk av uthämtad info

PHP

2 svar · 433 visningar · startad av SoulGod

Medlem sedan aug. 20051 200 inlägg
Frågan#1

Jag hämtar ut en text genom följande kommando:
$sid['innehall']

Jag har sedan tänkt söka igenom texten efter ev länkar ( https://www.dn.se ),
och då automatiskt göra om dessa till länk,
men lyckades inte med detta.

Så beslöt mig då för att skriva för hand https://www.dn.se,
och sedan när man skriver ut texten, köra ereq på &
för att byta ut dessa mot HTML koden, men det vägrar också att fungera.

Så min fråga lyder - HUR får jag scriptet att automatiskt känna av att det är en www adress i texten, och göra om det till en länk?

Och är det bäst att göra det när jag sparar det IN till databasen, eller påvägen ut?

Medlem sedan mars 2007845 inlägg
#2

$sid['innehall'] Är en variabel (eller om man ska vara korrekt en nyckel i en array) som kan innehålla ett värde. Men det är inte något kommando.

Det enklaste är om du använder någonslags BBCode. Annars får du söka i texten efter www eller http:// och sen är det adressen fram till nästa mellanslag. Vilket typiskt ger problem när någon smackar dit en punkt efter.

Medlem sedan juni 20006 031 inlägg
#3

SoulGod skrev:

Så min fråga lyder - HUR får jag scriptet att automatiskt känna av att det är en www adress i texten, och göra om det till en länk?

Detta använder jag, men är på g att ändra så den hanterar länkar med å,ä och ö.

$text = nl2br($sid['innehall']);
// fixa länkar
$text = preg_replace( '/(?<!"|href=|href\s=\s|href=\s|href\s=)(http|ftp|https):\/\/[\w]+(.[\w]+)([\w\-\.,@?^=%&:\/~\+#]*[\w\-\@?^=%&\/~\+#])?/i', "<a href=\"$0\" title=\"$0\" target=\"_blank\">$0</a>", $text );
$text = preg_replace('/(?<!"|href=|href\s=\s|href=\s|href\s=)(?<!:\/\/)www(.[\w]+)([\w\-\.,@?^=%&:\/~\+#]*[\w\-\@?^=%&\/~\+#])?/i', "<a href=\"http://$0\" title=\"http://$0\" target=\"_blank\">$0</a>", $text );
259 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)