Jag skulle vilja vet hur man gör för att kunna se hur många som klicka på de olika länkarna på min sida,vilken länk som anväda mest och flitigast, hur fixar man det på ett enkelt sätt??
ett tänkbart sätt är att varje länk läses från en databas, och varje sida som den länken länkar till innehåller ett funktion som ökar ett värde i databasen där länken finns.. är det externa länka, så kan man få det att funka på samma sätt..typ!
Tabell: länkar.
ID | LankNamn | Lank | Klick |
-------------------------------------
function links($url) {
$sql = "UPDATE länkar SET Klick = Klick + 1 WHERE ID = ".$url."";
mysql_query($sql);
}
// länken kanske ser ut så här: nyheter.asp?ID=2
links($_GET['ID']);
Finns nog ett antal olika sätt att lösa frågan på... frågan är bara vilken som är enklast!
Här kommer mitt förslag.
Med detta skriptet behöver du inte lägga till de olika sidorna först. Den använder nämligen skriptets namn som identifierare i database. Självklart går det inte lika snabbt att jämföra två strängar/texter som att jämföra två heltal men om man inte har en extremt belastad sida så ska det nog inte vara några problem.
spara denna koden i en fil sedan är det bara att inkludera den filen i de sidor som ska räknas.
Du behöver kanske även ändra databas samt användarnamn och lösenord.
<?
/*
# SQL
CREATE TABLE link_counter
(
link VARCHAR (255) NOT NULL,
counter INT (6) UNSIGNED DEFAULT '0' NOT NULL,
PRIMARY KEY(link),
UNIQUE(link),
INDEX(link, counter)
);
*/
if(!defined(__LINK_COUNTED__))
{
// make sure link doesn't count more than once.
define(__LINK_COUNTED__, true);
// connect to database.
mysql_pconnect("localhost", "", "");
mysql_select_db("test");
// check if link exist in database.
$res_id = mysql_query("SELECT link FROM link_counter WHERE link='".$_SERVER['PHP_SELF']."'");
if(mysql_num_rows($res_id) > 0)
{
// update counter for link if it exist.
mysql_query("UPDATE link_counter SET counter = counter + 1 WHERE link='".$_SERVER['PHP_SELF']."'");
}
else
{
// add link if it doesn't exist.
mysql_query("INSERT INTO link_counter(link, counter) VALUES('".$_SERVER['PHP_SELF']."', '1')");
}
}
?>
En nackdel är att du inte kan få ut statistik för varje månad/vecka men det är lätt att ändra.
Istället för att uppdatera räknaren lägger man bara till en ny post för varje gång sidan laddats samt spara timestamp för det. Vill man kan man då även lägga in session id för att lättare får ut räknare totalt samt för unika besökare.
Så det beror lite på hur avancerad räknare du vill ha.
254 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2