2010-04-07 6 views
1

Pour chaque annonce sur mon site, je voudrais une boîte qui montre le nombre de vues qu'elle a (similaire à ce site).Comment faire un compte qui compte le nombre de pages vues? (PHP)

Comment capturer le nombre de pages vues d'une annonce? Y at-il une fonction qui fait cela en PHP?

+1

J'ai supprimé ma réponse puisque les réponses déjà postées posaient une meilleure approche alternative que la mienne. –

Répondre

4

Eh bien, non il n'y a pas de fonction qui fait cela par magie: vous aurez à faire un peu de travail - pas difficile, mais ;-)

Il y a deux choses possibles que vous pouvez compter.


Pour le premier, nombre de fois qu'une annonce est affichée, l'idée de base est la suivante:

  • Votre affichiez un add - vous savez déjà comment faire
  • Lorsque l'afficher, vous mettre à jour un compteur, probablement dans votre base de données:
    • votre requête SQL ressemblera update ad_counters set counter = counter + 1 where ad_id = 123
    • 123 étant remplacé par l'identifiant de votre annonce, bien sûr
  • Et, lors de l'affichage de l'annonce, vous devrez sélectionner ce compteur, et l'afficher à côté de l'annonce.


Pour le second, nombre de fois qu'une annonce est cliquée, l'idée de base est généralement:

  • Ne pas avoir l'annonce soit un lien direct vers la page du produit
  • au lieu de cela, le lien de l'annonce ressemblera http://yoursite.com/ad.php?id=123
  • Et, quand quelqu'un charger cette page, il:
    • incrémenter le compteur de clics: update ad_clicks_counter set counter = counter + 1 where ad_id = 123
    • rediriger l'utilisateur vers la page réelle de l'annonce ou l'afficher directement.

En fait, cela est précisément ce qui est fait sur le SO:

  • Une annonce a un lien tel que http://ads.stackoverflow.com/a.aspx?Task=Click&ZoneID=4&CampaignID=785&AdvertiserID=161&BannerID=1123&SiteID=1&RandomNumber=384213225&Keywords=php%2ccounter%2cx-user-highrep%2cx-user-registered
  • Et quand vous cliquez dessus, vous êtes redirigé vers le vrai page de l'annonce, qui peut être telle que http://www.xpolog.com/home/solutions/landing.jsp


COU rse, ces deux compteurs peuvent être dans la même table - ou même dans la table dans laquelle vous avez la liste de toutes les annonces :-)

+0

merci !!temps pour se rendre au travail :) Je pense que je vais ajouter un champ de compteur à ma table et le "UPDATE SQL" en haut du script ad.php. – ggfan

+0

De rien :-) Amusez-vous! –

Questions connexes