---
title: "Leta länkar"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/70499-leta-länkar"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "ahassis"
published: "2003-03-08T21:24:37.000Z"
updated: "2003-03-17T07:56:08.000Z"
replies: 3
views: 269
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/70499-leta-länkar"
---

# Leta länkar

## #1 — ahassis, 2003-03-08T21:24Z

Hejsan!
Jag har nu sökt i olika forum efter den ultimata lösningen, jag har skapat en funktion som ser ut så här:

```php
function code ($press) {
$text = $press;
$text = str_replace("<", "<", $text);
$text = str_replace(">", ">", $text);
$text = str_replace(";)", "<img src=\"images/smileys/blink.gif\" border=\"0\">", $text);
$text = str_replace(";-)", "<img src=\"images/smileys/ler.gif\" border=\"0\">", $text);
$text = str_replace(":)", "<img src=\"images/smileys/ler.gif\" border=\"0\">", $text);
$text = str_replace("=)", "<img src=\"images/smileys/ler.gif\" border=\"0\">", $text);
$text = str_replace(":-)", "<img src=\"images/smileys/ler.gif\" border=\"0\">", $text);
$text = str_replace(":D", "<img src=\"images/smileys/glad.gif\" border=\"0\">", $text);
$text = str_replace(":e", "<img src=\"images/smileys/skratt.gif\" border=\"0\">", $text);
$text = str_replace(":h", "<img src=\"images/smileys/cool.gif\" border=\"0\">", $text);
$text = str_replace(":l", "<img src=\"images/smileys/hmm.gif\" border=\"0\">", $text);
$text = str_replace(":(", "<img src=\"images/smileys/ledsen.gif\" border=\"0\">", $text);
$text = str_replace(":o", "<img src=\"images/smileys/oj.gif\" border=\"0\">", $text);
$text = str_replace(":r", "<img src=\"images/smileys/skamsen.gif\" border=\"0\">", $text);
$text = str_replace(":p", "<img src=\"images/smileys/retas.gif\" border=\"0\">", $text);
$text = str_replace("X(", "<img src=\"images/smileys/arg.gif\" border=\"0\">", $text);
$text = str_replace(":x", "<img src=\"images/smileys/surmin.gif\" border=\"0\">", $text);
$text = str_replace(":q", "<img src=\"images/smileys/vad.gif\" border=\"0\">", $text);
$text = str_replace(":OO", "<img src=\"images/smileys/stirr.gif\" border=\"0\">", $text);
$text = str_replace("[b]", "<b>", $text);
$text = str_replace("[/b]", "</b>", $text);
$text = str_replace("[i]", "<i>", $text);
$text = str_replace("[/i]", "</i>", $text);
$text = str_replace("[u]", "<u>", $text);
$text = str_replace("[/u]", "</u>", $text);
$text = str_replace("\n","<br>", $text);
$text = preg_replace("/(?<=^|\s)(www\.([-a-zA-Z0-9_]+\.)*[-a-zA-Z0-9_]+\.[-a-zA-Z0-9_])/", "http://$1", $text);
$search = "/(?<=^|\s)(http:\/\/|https:\/\/|ftp:\/\/)(([-a-zA-Z0-9_]+\.)*[-a-zA-Z0-9_]+\.[-a-zA-Z0-9_]{2,8}[^\s]*)(?=\s|$)/";
$replace = "<a href=\"$1$2\">$2</a>";
$text = preg_replace($search, $replace, $text);

return $text;
}
```

Och sedan en till som ser ut så här:

```php
function usr ($press) {
$str = $press;
$str=eregi_replace("\[usr\](.*)\[/usr\]","<a href=\"./?page=profil&username=\\1\">\\1</a>",$str);
return $str;
}
```

Och sedan anropar jag dem så här:

```php
<?=usr(code($r['press'])); ?>
```

Men varför fixar den inte till länkarna? Det är samma fel på alla script jag testar. Har testat att ha <https://www.link.link> och <http://www.link.link> i $r\['press'\] ingen skillnad, i vissa script har jag lyckats få till en mailto:, men ingen \<a href="http://www.sida.se" target="\_blank"\>sidan\</a\>, nån som ser felet?
Eller nån som kan kasta ett getöga på det?

Mvh Anders Hassis

Permalänk: https://www.webforum.nu/p/70499

## #2 — Nexus86, 2003-03-08T22:29Z

Detta var allt jag fick fram: <http://www.webforum.nu/showthread.php?s=&threadid=66250>

Permalänk: https://www.webforum.nu/p/973769

## #3 — ahassis, 2003-03-09T11:33Z

Jo, den har jag ju testat med, men det funkar ju inte på min, tänkte om det var nån str_replace som gjorde så att inte det blev länkar?

Permalänk: https://www.webforum.nu/p/973948

## #4 — Nexus86, 2003-03-17T07:56Z

Prova detta. Såg det i php's manual. Verkar fungera bra!

```php
$text = eregi_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]", "<a href=\"\\0\">\\0</a>", $text);
```

Permalänk: https://www.webforum.nu/p/982155

---

Tråden på webben: https://www.webforum.nu/amne/php/70499-leta-länkar
