Avatar billede likedon Nybegynder
02. april 2005 - 09:39 Der er 13 kommentarer og
1 løsning

modificer link

Hejsa

Jeg har ex. følgende link:
<a href="http://www.minside.dk/page.asp?id=9">se den her side</a>

det vil jeg gerne have lavet om til:
<a href="http://www.link.dk/link.php?url=http://www.minside.dk/page.asp?id=9">se den her side</a>


jeg kender selvfølgelig ikke linkene i forvejen og den skal virke ved at jeg løber en lang tekst igennem og så modificere den alle linkene.

den skal også virke med image maps:

<area shape="rect" coords="366,44,453,69" href="http://www.xxx.dk/show.asp?ID=3" alt="" target="_blank">


Er der nogen der kan hjælpe mig på vej?
Avatar billede mysli Nybegynder
02. april 2005 - 09:43 #1
prøv at bruge str_replace().
Avatar billede likedon Nybegynder
02. april 2005 - 09:51 #2
ja men hvordan får jeg de der " til at spille med har den her:
$news_body2 = eregi_replace("href=", "href=http://xxx.dk/link.php?mailid=$id&url", $news_body);

men der går i ged for linket hedder jo href="safddsfdsfd.dk"

og ikke href=sdfdgdg.dk
Avatar billede busschou Praktikant
02. april 2005 - 10:00 #3
kan man ikke bruge ' ? altså
$news_body2 = eregi_replace("href=", "href='http://xxx.dk/link.php?mailid=$id&url'", $news_body);
Avatar billede mysli Nybegynder
02. april 2005 - 10:02 #4
Du kan også prøve med \"
Avatar billede busschou Praktikant
02. april 2005 - 10:02 #5
eller
$news_body2 = eregi_replace("href=", "href=\"http://xxx.dk/link.php?mailid=$id&url\"", $news_body);
Avatar billede busschou Praktikant
02. april 2005 - 10:02 #6
doh :o)
Avatar billede likedon Nybegynder
02. april 2005 - 10:13 #7
mysli >> det kan jeg ikke få til at virke så leder den efter href\" og det står jo ikke noget sted

busschou nemlig doh :-(
Avatar billede barklund Nybegynder
02. april 2005 - 14:34 #8
str_replace er da rigeligt her?

$prefix = "http://xxx.dk/link.php?url=";
$news_body2 = str_replace("href=\"", "href=\"".$prefix, $news_body);

Ingen grund til regulære udtryk her. :)

--
Morten Barklund
Avatar billede busschou Praktikant
03. april 2005 - 08:47 #9
Avatar billede likedon Nybegynder
03. april 2005 - 10:09 #10
ja det virker jo sådan set næsten, kan bare ikke få den til at genkende "href=\"" den kan ikke finde det noget sted i teksten den der \ driller??
Avatar billede barklund Nybegynder
03. april 2005 - 11:14 #11
den der \ er nødvendig for ellers kan man jo ikke skrive en " i en streng omkranset af " - men vi kan bare lave det om til:

$prefix = "http://xxx.dk/link.php?url=";
$news_body2 = str_replace('href="', 'href="'.$prefix, $news_body);

Hvis du så bedre kan overskue det. Det har præcis samme effekt som foregående.

Hvis den ikke erstatter strengene korrekt - så er det fordi de ikke står præcis sådan. Måske der står Href=" måske href=' og andre varianter. Hvis det er tilfældet, så kan vi da hive fat i noget preg i stedet for:

$prefix = "http://xxx.dk/link.php?url=";
$news_body2 = preg_replace("/(href=[\"']?)/i", "\\1".$prefix, $news_body);

:)

--
Morten Barklund
Avatar billede busschou Praktikant
08. juli 2005 - 08:35 #12
likedon >> kommet videre? lukketid ? ;o)
Avatar billede likedon Nybegynder
08. juli 2005 - 09:47 #13
hejsa
tro det eller lad være, men jeg har faktisk ikke fået det til at virke, jeg har bare ikke haft tid til at udvikle på det projekt siden, men det er da stadig planen. Det er også derfor, at det ikke er lukket endnu, bare for at huske mig selv på det.
Jeg er heller ikke den, der har åbne spørgsmål normalt. Har faktisk kun denne åben lige nu.
Avatar billede likedon Nybegynder
22. september 2008 - 10:24 #14
denne er blevet gammel og lukkes hermed, hvis nogen vil have point for deres hjælp så lig lige et svar.
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