Avatar billede amx_dk Nybegynder
01. marts 2006 - 21:27 Der er 11 kommentarer

Statistik på links fra email

Hej Jeg har en hjemmeside hvor jeg sender et html nyhedsbrev ud en gang i mellem. I denne email er der nogle links er der en nem måde man kan køre lidt statistik på hvor mange der klikker på disse links?
Avatar billede softspot Forsker
01. marts 2006 - 21:47 #1
Du kan linke dem forbi en side som opsamler klikket og sender dem videre til den rigtige side. Du kan så knytte nogle (endog brugerspecifikke) oplysninger til linket, så du kan følge med i hvem der klikker på dine links.

Eksempel:

I din mail indsætter du et link med flg. url:

  <a href="http://din.server.dk/newletter/link.asp?newsid=111&userid=999">Nyhed 1</a>

I link.asp på din server, kan du så gemme disse informationer i en database og redirecte brugeren til den pågældende nyhed (på grundlag af newsid'et). Hvorvidt du vil/kan bruge userid afhænger af hvordan du udsender nyhedsbrevene. Hvis du skal sende mange nyhedsbreve er det nok usandsynligt at du kan sende dem personligt, med mindre du har en dedikeret mailserver der sparker en vis legemsdel :)

link.asp:

<%
if request.querystring("newsid") & "" <> "" then
  '
  ' TO DO: gem brugerens koblet med nyhedens id i databasen
  '
  response.redirect "newsitem.asp?id=" & request.querystring("newsid")
end if
%>
Avatar billede amx_dk Nybegynder
02. marts 2006 - 00:21 #2
jeg har tre links i min mail til tre forskællige sider. disse giver jeg alle et newsid som skrevet ovenover og dropper så userid

skal link.asp så se sådan her ud?

<%
if request.querystring("newsid") & "" <http://www.amx.dk\link1.html> "" then
  '
  '
  response.redirect "newsitem.asp?id=" & request.querystring("newsid")
end if
%>
Avatar billede softspot Forsker
02. marts 2006 - 00:40 #3
Hvis jeg forstår dig korrekt, så er de tre nyhedssider statisk HTML-sider og id'erne er som sådan bare nogle "pladsholdere" for de tre nyhedssider. Hvis dette er korrekt ville jeg vælge flg. metode:

<%
if request.querystring("newsid") & "" <> "" then
  '
  ' TO DO: gem brugerens koblet med nyhedens id i databasen
  '
  select case request.querystring("newsid")
    case 1 ' Spring til nyhedsside 1
      response.redirect "link1.htm

    case 2 ' Spring til nyhedsside 2
      response.redirect "link2.htm

    case 3 ' Spring til nyhedsside 3
      response.redirect "link3.htm

    case else
      response.redirect "/" ' Spring til forsiden hvis der ikke er noget nyhedsid

  end select
end if
%>


Du kan naturligvis bare ændre linket til de enkelte nyhedssider, samt udvide select case-sætningen med flere nyhedssider hvis det bliver nødvendigt. Du kunne evt. overveje at gøre den dynamisk, altså basere den på en database, hvor nyheden ligger og bliver genereret af en asp-side (hvilket var tanken i mit oprindelige oplæg).
Dette kan dog godt bruges på et site som ikke ændrer sig meget hvad angår nyheder.
Avatar billede amx_dk Nybegynder
02. marts 2006 - 01:28 #4
jeg kan ikke helt få det til at virke.

jeg har lavet en html side som fungerer som emailen.

i den er der dette link
<a href="asp.asp?newsid=1">Nyhed 1</a>

i asp.asp er dette
<%
if request.querystring("newsid") & "" <> "" then
  '
  ' TO DO: gem brugerens koblet med nyhedens id i databasen
  '
  select case request.querystring("newsid")
    case 1 ' Spring til nyhedsside 1
      response.redirect "link1.htm

    case 2 ' Spring til nyhedsside 2
      response.redirect "link2.htm

    case 3 ' Spring til nyhedsside 3
      response.redirect "link3.htm

    case else
      response.redirect "/" ' Spring til forsiden hvis der ikke er noget nyhedsid

  end select
end if
%>


men det vil ikke linke til link1.htm
Avatar billede softspot Forsker
02. marts 2006 - 01:35 #5
Du er nød til at angive den fulde url til din webside, for det ved emailprogrammet jo ikke hvor er, så dette link

  <a href="asp.asp?newsid=1">Nyhed 1</a>

skal ændres til at asp.asp foranstilles med URL til dit website (med http:// osv - som jeg vist i mit første eksempel)

  <a href="http://www.dinserver.dk/asp.asp?newsid=1">Nyhed 1</a>
Avatar billede amx_dk Nybegynder
02. marts 2006 - 02:04 #6
virker ikke. der sker to ting. først kommer der en sikkerhedsvarsel fra windows om jeg vil åbne asp.asp  hvis jeg siger ja så lukker den vinduet ned. altså den går ikke til siden link1.htm
Avatar billede softspot Forsker
02. marts 2006 - 02:09 #7
Prøv lige at vis den kode du rent faktisk genererer ind i din mail.

Jeg vil også gerne lige høre om du rent faktisk kører dette på en webserver , for det er en af betingelserne for at du kan få det til at fungere (også hvad angår opdatering af databasen mht. statistikken).

NB: localhost er også en webserver, selvom den ikke vil fungere hos andre end digselv hvis du lægger den adresse i en mail.
Avatar billede amx_dk Nybegynder
02. marts 2006 - 02:14 #8
den køre på en webserver. det skal ikke køre sammen med nogen database. mit webhotel kører automatisk stats på alle sider. dvs. min nyhedsmail skal blot linke til en side som linker vidre til de tre rigtige sider.  på denne måde kan jeg se hvor mange der klikker på links i mailen.

mail koden ser sådan her ud.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
  <a href="http://www.amx.dk/test/asp.asp?newsid=1">Nyhed 1</a>
</body>
</html>
Avatar billede softspot Forsker
02. marts 2006 - 02:17 #9
OK, fair nok. Understøtter din webserver ASP?
Avatar billede amx_dk Nybegynder
02. marts 2006 - 02:23 #10
bommer nej. det troede jeg faktisk det gjorde. har webhotel linux hos wannafind.

ved du om man kan lave det samme med php?
Avatar billede softspot Forsker
02. marts 2006 - 02:46 #11
Det er jeg ret sikker på at man kan, men jeg ved ikke noget om PHP, så jeg kan ikke give dig en løsning - desværre :|
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