Hallo PHP'ers!

Ik ben al een tijdje aan het nadenken om op mijn site een eenmalige advertentie te laten zien, maar ik heb geen idee hoe. Dit is het idee:
1. Een bezoeker komt op mijn site, er word gecontroleerd of het IP de site al bezocht heeft, zo nee dan stuurt hij je door naar "advertentie.php"
2. De pagina advertentie.php onthoud dat dit IP de advertentie gezien heeft, en als een gebruiker klikt gaat deze gewoon naar index.php
3. Een bezoeker gaat opnieuw naar mijn site, maar heeft de advertentie al gezien dus ziet gewoon direct index.php

Ik heb het idee dat ik op de pagina advertentie.php een query uit moet voeren, die een IP en een ID opslaat in de database. Op de pagina index.php word dan gecontroleerd (met $_SERVER['REMOTE_ADDR']) of het IP al bestaat.

Hoe kan ik dit het beste aanpakken? Misschien kan het veel makkelijker, want dit gaat op den duur denk ik veel database ruimte kosten?

Waarschijnlijk is het veel simpeler dan ik denk, maar ik kom er zelf echt even niet meer achter.

Alvast bedankt,
Jurrian
misschien gewoon een cookie gebruiken?
Vincent Huisman op 26/04/2011 21:48:59

misschien gewoon een cookie gebruiken?


Hoe zou ik dit dan het best kunnen doen? Het maken van een cookie kan ik wel;
<?
$huidigip = '$_SERVER['REMOTE_ADDR']';

setcookie("Site_Coockie", $huidigip);
?>
Maar met het controleren kan ik echt niet overweg..
Je moet geen variabelen tussen quotes zetten, en al helemaal niet op deze manier.

Maar de code zal zoiets worden:
<?php
setcookie('noAds', 'hier wat tekst, hoeft niet het ip te zijn');

if(isset($_COOKIE['noAds']))
{ # Als cookie is geset op deze computer
echo 'Je bent hier al een keer geweest.';
}
else
{
echo 'de advertentie';
}
?>

Zie ook deze video tutorial: Diving into PHP dag 9: Detecting first-time visitors
Kijken of het ip al voorkomt in de db :
Komt voor doe niks

Komt niet voor stuur naar advertentie
Cookie aanmaken die oneindig lang geldig is voor het geval dat het ip door dynamic geweizigd is
Jordi kroon op 26/04/2011 22:14:02

Kijken of het ip al voorkomt in de db :
Komt voor doe niks

Komt niet voor stuur naar advertentie
Cookie aanmaken die oneindig lang geldig is voor het geval dat het ip door dynamic geweizigd is


Zou jij het leuk vinden als ik (zonder jouw toestemming) voor altijd iets op jouw pc zet?
[ Cntrl shift esc ] -> delete cookies , en hoe groot is een cookie wel niet
En er bestaat ook zoiets als cookies weigeren vanaf een bepaalde site
Roel van de Water op 26/04/2011 22:37:36

Zou jij het leuk vinden als ik (zonder jouw toestemming) voor altijd iets op jouw pc zet?
Is heel gebruikelijk hoor, kijk maar eens naar de cookies op jouw peeceetje. Heb je al eens op www.tvgids gekeken? Je heb er dan meteen 32 cookies bij om maar wat te noemen. cookies is inderdaad de beste oplossing, het is klein en meest zuiver. ipnummers opslaan is geen goed idee. Hier op werk zitten we bijvoorbeeld met 1000 medewerkers op 1 ip naar buiten. Sla je dat op dan heb je ineens een grote groep uitgesloten.

Bedankt iedereen! Ik ga er eens mee aan het werk en ik zal jullie het resultaat geven.

Mvg,
Jurrian

Reageren