Avatar billede flim Nybegynder
22. maj 2005 - 09:42 Der er 5 kommentarer og
1 løsning

url2link - hvordan med billede?

Hej exp!

Jeg har nu følgende kode som laver webadresser om til links:

function url2link($txt)
    {
        $username = "[a-z0-9_\-]+";
        $password = "[a-z0-9_\-!#]+";
        $host = "[a-z0-9\-]+\.[a-z0-9\-\.]+";
        $port = "\d{1,5}";
        $path = "\/[a-z0-9\/\-\.\(\)\%]*";
        $querystr = "\?[a-z0-9&=\-\.%\(\)]+";
        $proto = "(https?|ftp):\/\/";
        $url = "$host(:$port)?($path($querystr)?)?";
        $protodomain = "/$proto(($username(:$password)?@)?$url)/i";
        $domain = "/(^| )(www\.$url)/im";
        $protomail = "/mailto:($username@$host)/i";
        $mail = "/(^| )($username@$host)/im";
        $replacements = array(
                $protodomain => "<a href=\"\\0\" target=\"_blank\">\\2</a>"
                ,$domain => "\\1<a href=\"http://\\2\" target=\"_blank\">\\2</a>"
                ,$protomail => "<a href=\"\\0\">\\1</a>"
                ,$mail => "\\1<a href=\"mailto:\\2\">\\2</a>"
            );
        return preg_replace( array_keys( $replacements ), array_values( $replacements ), $txt );
    }

Problemet er når folk linker til et billede, så bliver koden også skrevet. Kan man ikke lave det sådan at hvis linket slutter på et billedeformat (fx jpg, jpeg, png, gif osv) så vises billedet siedet for at der bliver lavet et link til det?

Håber der er en der kan hjælpe.

/Flim
Avatar billede Bjarne Novice
22. maj 2005 - 19:58 #1
Ved godt dette ikke helt matcher det efterspurgte, men det kunne jo være du kunne bruge det:)

function url2pic($string) {
$string = str_replace(array("[image]", "[/image]"), array("<img src='", "' alt='image' />"), $string);
return $string;
}

så kan du skrive [image]http://sti[/image] som vil blive vist som et billede, hvis du smider det igennem url2pic()
Avatar billede Bjarne Novice
22. maj 2005 - 19:59 #2
det kunne experten ikke lide:)

[image]sti[/image] fx
Avatar billede flim Nybegynder
24. maj 2005 - 08:36 #3
bjarne...

Kan man ikke lave en substr() et eller andet, så hvis endelsen på linket er jpg, jpeg, gif eller png så skriver den <img src="..."> isetdet for <a href="..">

Jeg ved bare ikke hvordan jeg laver det :/
Avatar billede Bjarne Novice
24. maj 2005 - 08:56 #4
det du siger kan sagtens lade sig gøre. Men det kræver jo at man er halv hård til regulære udtryk.
Avatar billede flim Nybegynder
24. maj 2005 - 13:59 #5
bjarne - jeg prøver lige med din løsning engang i aften. Så længe den virker er det jo fint fint. Jeg mener bare at der gå kage i den når folk skriver et link til et billede. Fx [image]http:///omæne.dk/mappe/billede.jpg[/image].

Så vil den jo lave det til et link samtidig med at din funktion forsøger at vise billedet. Det duer jo nok ikke :/
Avatar billede flim Nybegynder
11. oktober 2005 - 08:30 #6
Lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester