Avatar billede mjl Nybegynder
23. oktober 2005 - 11:22 Der er 17 kommentarer og
1 løsning

Tælle antal klik på link

Hej der...

Jeg har nogle links, der hentes fra MySQL - de listes op på min side, og kan så vælges...

Jeg vil nu gerne ha' talt, hvor mange gange hvert link vælges - hvert link har jo i DB'en er unikt ID, og jeg har oprettet et felt for hver, der hedder "count" - men hvordan laver jeg det, så klikkene tælles?

hilsen Conrad
Avatar billede mjl Nybegynder
23. oktober 2005 - 11:46 #1
Jeg har forsøgt med dette i et nyt dokument, hvor url = adressen, og lid = ID fra DB'en. Det virker fint, bortset fra når URL'en indeholder ?=& o.s.v.

<?
include "db_conn.php";
mysql_query("UPDATE book_links SET count = count+1 WHERE lid = '$id'");
header("location: " . $_GET['url']);
?>
Avatar billede krydset Nybegynder
23. oktober 2005 - 11:47 #2
Det kan du gøre såen her
<?php
//Find nuværende antal i database
$res = mysql_quer("SELECT * FROM tb WHERE id = '$_GET[id]'") or die(mysql_error());
while($row = mysql_fetch_array($res)) {
$antClick = $row['click'];
$nyantClick = $antClick++;
//Updater i database
mysql_query("UPDATE tb SET click = '$nyantClick'") or die(mysql_error());
}
?>
<a href="test.php?id=22&amp;count=1">Artikel</a>
Avatar billede mjl Nybegynder
23. oktober 2005 - 11:48 #3
Det er fra første & tegn, at den stopper...
Avatar billede mjl Nybegynder
23. oktober 2005 - 11:50 #4
Det er eksterne links...
Avatar billede mjl Nybegynder
23. oktober 2005 - 12:04 #5
Nogen der kan fikse det?
Avatar billede krydset Nybegynder
23. oktober 2005 - 12:12 #6
Det er eksterne links...

hva mener du med det ?
Avatar billede mjl Nybegynder
23. oktober 2005 - 12:14 #7
F.eks. http://www.fona.dk

...og så kunne der være mere f.eks. http://www.fona.dk?noget=lidt&meget=andet - men så tager den ikke det hele med, den stopper ved & tegnet : http://www.fona.dk?noget=lidt
Avatar billede krydset Nybegynder
23. oktober 2005 - 12:20 #8
hvordan henter du de data efter ? tegnet
Avatar billede mjl Nybegynder
23. oktober 2005 - 12:22 #9
<a href=count_script.php?url=

$url bliver så = den url den henter i DB'en
Avatar billede mjl Nybegynder
23. oktober 2005 - 12:35 #10
Fandt selv svaret...

$url = "http://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];

Læg svar krydset, så deler vi points...
Avatar billede jaw Nybegynder
23. oktober 2005 - 12:53 #11
Hvordan kan du snakke om eksterne links og så samtidig fyre $_SERVER['HTTP_HOST'] af? :) Men hvis du har problemer med &noget=hest, så prøv at smide det i en htmlentities();
Avatar billede krydset Nybegynder
23. oktober 2005 - 13:19 #12
Jeg skal ikke have point har ikke hjulpet med noget :-S
Avatar billede mjl Nybegynder
23. oktober 2005 - 13:52 #13
jaw > Nu er jeg jo ikke den største haj, men jeg prøver mig lidt famlende frem, og tit lærer jeg noget :o) - Måske du ville forklare/vise mig brugen af htmlentities();
Avatar billede jaw Nybegynder
23. oktober 2005 - 13:57 #14
Gider jeg godt, men jeg ved ikke om du har brug for den :) Men htmlentites() vil ændre alle specialtegn til HTML-output. Altså & til &amp; ø til &oslash; osv. osv. osv.
Avatar billede mjl Nybegynder
23. oktober 2005 - 13:58 #15
Åhhh....ok!

Jeg har *GG* brugt $url = str_replace() til at fjerne det overflødige he he - men det virker fint...!
Avatar billede mjl Nybegynder
23. oktober 2005 - 14:20 #16
Vil meget gerne give Jer points - det er rart at I vil bruge tid på mit problem!

Så - læg svar - så får I points!

Og 1000 tak!
Avatar billede jaw Nybegynder
23. oktober 2005 - 14:28 #17
Nah, mit var jo bare en lille sidebemærkning :) Ellers tak.
Avatar billede mjl Nybegynder
23. oktober 2005 - 15:19 #18
Okay - lukker - tak!
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