/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Lidt mere på...del 2
Fra : Henrik Pedersen


Dato : 10-02-02 16:37

Hej igen!

Et par posts længere nede skrev jeg om hvordan jeg gerne villle have
tilføjet noget til dette:

<?php
$tekst=
eregi_replace("(^|[[:space:]])((www.)([a-zA-Z0-9@:%_.~#-\?&]+[a-zA-Z0-9@%_~#
&/]))", "\\1<A HREF=\"http://\\2\" TARGET=\"_blank\">\\2</A>", $tekst);
?>

Hvilket gør at f.eks. www.domain.dk automatisk bliver omskrevet til et link.
Jeg vil dg oxo gerne gøre det muligt at omskrive emailadresser til links -
jeg har derfor forsøgt mig således:

<?=wordwrap(stripslashes(nl2br($post["message"] =
eregi_replace("(^|[[:space:]])((www.)([a-zA-Z0-9@:%_.~#-\?&]+[a-zA-Z0-9@%_~#
&/]))", "\\1<A HREF=\"http://\\2\" TARGET=\"_blank\">\\2</A>",
"(^|[[:space:]])([_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,
3})","\\1<A HREF=\"mailto:\\2\">\\2</A>", $post["message"]))),50,"\n",1)?>

Jeg har her lige pastet lidt mere af hele koden, så det giver en sammenhæng


Men ovenstående virker ikke optimalt - jeg får en Warning: Wrong parameter
count for eregi_replace()

Er der nogen her som kan se sig ud af dette, og evt. finde fejlen - håber
der er nogen som kan hjælpe. Thx....


--

-------------------m-Õ--Õ-m------------------
Med venlig hilsen / Best regards

Henrik Pedersen - BeOne.dk
Email: hp@beone.dk
Site: www.beone.dk

May U Live 2 See The Dawn



 
 
Ukendt (10-02-2002)
Kommentar
Fra : Ukendt


Dato : 10-02-02 21:35


"Henrik Pedersen" <hp@beone.dk> skrev i en meddelelse
news:3c6693a5$0$251$edfadb0f@dspool01.news.tele.dk...
> <?php
> $tekst=
>
eregi_replace("(^|[[:space:]])((www.)([a-zA-Z0-9@:%_.~#-\?&]+[a-zA-Z0-9@%_~#
> &/]))", "\\1<A HREF=\"http://\\2\" TARGET=\"_blank\">\\2</A>", $tekst);
> ?>

Her har du korrekt 3 params i brugen af eregi_replace men....

> <?=wordwrap(stripslashes(nl2br($post["message"] =
>
eregi_replace("(^|[[:space:]])((www.)([a-zA-Z0-9@:%_.~#-\?&]+[a-zA-Z0-9@%_~#
> &/]))", "\\1<A HREF=\"http://\\2\" TARGET=\"_blank\">\\2</A>",
> "(^|[[:space:]])([_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,
> 3})","\\1<A HREF=\"mailto:\\2\">\\2</A>", $post["message"]))),50,"\n",1)?>

Her har du (såvidt jeg lige kan tælle) 5 den dutter ikke, iflg manualen til
PHP tager eregi_replace kun 3 parametre derfor får du :

> Men ovenstående virker ikke optimalt - jeg får en Warning: Wrong parameter
> count for eregi_replace()
>
> Er der nogen her som kan se sig ud af dette, og evt. finde fejlen - håber
> der er nogen som kan hjælpe. Thx....

En mulighed, muligvis ikke den bedste, kunne være at lave et forhåndscheck
på hhv www. og @ evt i en if { }else{}og så eregi_replace afhængigt af
resultatet pseudo noget lignende :

resultatet=den_tekst_der_analyseres;
står der www.
jeps
OK byt resultatet ud med http://+
nope
står der @
jeps
byt resultatet ud med mailto://+
nope
Skriv resultatet

Skyd mig bare, men indenfor PHP er jeg komplet newbie, så jeg håber andre
kan komme med lige så gode råd :)

John



Henrik Pedersen (11-02-2002)
Kommentar
Fra : Henrik Pedersen


Dato : 11-02-02 00:03


"John Larsen" <jola_at_get2net_dot_dk> wrote in message
news:3c66db9c$0$22298$edfadb0f@dspool01.news.tele.dk...
> En mulighed, muligvis ikke den bedste, kunne være at lave et forhåndscheck
> på hhv www. og @ evt i en if { }else{}og så eregi_replace afhængigt af
> resultatet pseudo noget lignende :
>
> resultatet=den_tekst_der_analyseres;
> står der www.
> jeps
> OK byt resultatet ud med http://+
> nope
> står der @
> jeps
> byt resultatet ud med mailto://+
> nope
> Skriv resultatet
>

Hej !

Den sad jeg nemlig oxo og tænkte på John, men den går jo alligevel
ikke......for hvad nu hvis indholdet har både en domain.dk og en
domain@domain.dk på samme tid - så tager den jo kun den sidste (altså
emailen) med - eller er det mig der er galt på den??

For problemet er nemlig at få begge ting til at virke på samme
string......samtidig.

Gode forslag modtages gerne------

*/Henrik Pedersen




Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408938
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste