Klik teller

Status
Niet open voor verdere reacties.

Lachmetdennis

Gebruiker
Lid geworden
4 jun 2006
Berichten
43
Dag mensen van helpmij

Ik wil graag een teller inbouwen op mijn site zodat ik ken bijhouden hoe vaak er geklikt is op een bepaalde link.
Volgens mij is het dan het handigst om PHP te gebruiken maar ik weet verder niet hoe.
Wie kan mij helpen?
 
Je moet "ergens" een teller opslaan, en die bijwerken telkens er op de link geklikt wordt.
Er zijn 2 mogelijkheden:
1) het betreffende aantal opslaan in een database tabel
2) het betreffende aantal opslaan in een tekstbestand
Voor de tweede mogelijkheid heb je geen SQL/MySQL nodig, maar die methode vind ik zelf wel iets moeilijker en omslachtiger.
Laat maar weten welke methode jij zelf verkiest, en ik probeer je verder te helpen...
 
Ik zal een voorbeeldpagina maken en die hier posten.
Zal ik wel even mee bezig zijn... dus ga gerust slapen of zo, en kom morgen nog eens kijken :p
 
Je kan het voorbeeldje hier bekijken.

Een beetje uitleg:

1) Maak eerst een tabel:
Code:
CREATE TABLE 'tblClickteller' (
'linknaam' VARCHAR(20) NOT NULL ,
'aantal' INT UNSIGNED NOT NULL ,
PRIMARY KEY ('linknaam') 
) ENGINE=InnoDB
Voor elke link op je site waarvan je het aantal clicks wil tellen voeg je een nieuwe record toe. In het veld 'linknaam' plaats je de naam van de betreffende link en in het veld 'aantal' zet je initieel 0 (nul).

2) De links die je wil tellen plaats je als volgt in je pagina:
HTML:
<a href='pagina1.php?linknaam=link1'>linktekst1</a>
<a href='pagina2.php?linknaam=link2'>linktekst2</a>
<a href='pagina3.php?linknaam=link3'>linktekst3</a>
Hetgeen je achter 'linknaam=' zet moet dus hetzelfde zijn als wat je in de database in het veld linknaam hebt gezet.

3) De gelinkte pagina's (dus pagina1.php, pagina2.php, pagina3.php in dit voorbeeld) laat je beginnen met
PHP:
<?php  
  include('clickteller.php');
?>

De gebruikte code van de voorbeeldlink vind je in bijlage. Vergeet niet in het bestand 'openconnectie.php' de gegevens van jou MySQL-account in te vullen.

Het voorbeeld is erg 'basic', dus geen controles, toeters of bellen... Misschien (waarschijnlijk?) zullen er ook wel een paar 'schoonheidsfoutjes' in zitten, maar dat horen we dan ook wel ;)
Bekijk het allemaal eens, en als er iets is dat je niet begrijpt, laat je het maar weten...
 

Bijlagen

  • clickteller.zip
    1,7 KB · Weergaven: 134
Laatst bewerkt:
Dank! Het werkt.

Is het ook nog mogelijk om kliks op links te tellen naar adressen buiten mijn website?
Waar ik dus onderstaande code niet op kan plaatsen:

PHP:
<?php   
  include('clickteller.php'); 
?>
 
In dat geval kan je laten linken naar een pagina op je eigen domein die op zijn beurt weer doorlinkt naar een pagina buiten jou domein:
PHP:
<?php  
  header('Location: http://www.helpmij.nl'); 
  include('clickteller.php');
?>
De derde link in mijn voorbeeldpagina brengt je nu naar helpmij.nl.
Als je teruggaat naar de hoofdpagina met de 'vorige-knop' moet je wel nog even op F5 duwen om het juiste aantal clicks voor link3 te zien
 
Heel erg bedankt. Alles werkt. Heb het hier en daarna nog een beetje aangepast zoals de aantal kliks op een andere beveiligde pagina gezet. En natuurlijk een mooie opmaak.

Maar nogmaals dank!
 
Als ik zo vrij mag zij nog even een vraagje over de klikteller.

Is het ook mogelijk om door middel van 1 klik op een button alle kliks weer op 0 te zetten?
 
Neem volgende link op in de pagina van waar je de tellers wil resetten.
HTML:
<a href='reset.php'>Reset alle tellers</a>
Maak een bestand met volgende inhoud, en noem het 'reset.php'
PHP:
<?php  
  include('openconnection.php');
  $sql="UPDATE tblClickteller SET aantal=0;";
  $res=mysql_db_query($db,$sql,$mysql_id);
  include('closeconnection.php');
?>
<html>
  <body>
    De tellers werden gereset!<br />
    <br />
    Terug naar de <a href='index.php'>hoofdpagina</a>.
  </body>
</html>

LET WEL: het resetten wordt met dit script ONMIDDELIJK uitgevoerd. Er wordt dus niet eerst om bevestiging gevraagd of je dat ook effectief wel wil doen.
 
Handig om te weten...

Ik hoop voor de TS dat hij er een beveiliging inbouwt anders kan jan-en-alleman de teller op nul zetten.
 
Ik vermoed dat hij de link zal plaatsen op een pagina die niet zichtbaar is voor zijn bezoekers, bvb de pagina waar hij het overzicht geeft... ten minste... dat hoop ik voor hem :rolleyes::D
En anders horen we het wel, en zien we weer verder hé ;)
 
Ja ik heb inderdaad een soort van admin pagina gemaakt die beveiligd is met een wachtwoord. Anders ben ik steeds mijn gegevens kwijt he :)
 
Dus alleen de pagina met de link erin heb je achter gesloten deuren?

Bouw ook een beveiliging in de specifieke pagina in, anders hoef ik de naam maar te gokken en er naar toe surfen ;)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan