Beste mensen ik ben met een nieuwe site bezig alleen ik kom even ergens niet uit.

Ik heb nu een script dat je eerst op een banner moet klikken en dat die daarna het script laad. Maar je kan ook gewoon gelijk naar het script gaan, alleen dat is niet de bedoeling omdat ik dna dus geen sponsor geld/punten krijg.
Weet iemand hoe die dit moet beveiligen? Hier zijn de 2 scripts.

koop.php

<?PHP
Ob_Start();
	Include("includes/include.php");
		Design_Boven("Inlogggen");
		?>
<script language="JavaScript"> 
   stem = 0; 
    
   function votebanner() { 
    stem = 1; 
   } 

   function toelating() { 
    if (stem == 1) { 
     document.fbc_post.submit(); 
    } 
    else { 
     alert("Sorry voordat u kan klikken op een van onze leden dient u te klikken op de sponsor banner!"); 
    } 
   } 
  </script> <? $nummer = rand(1, 4);
if ($nummer == '1') { 
$banner = "http://img79.imageshack.us/img79/4851/bannerstart9everxo2.jpg";
$klikurl = "http://www.promolist.nl/script/count.php?liste=888&id=888";
}
if ($nummer == '2') { 
$banner = "http://img79.imageshack.us/img79/4851/bannerstart9everxo2.jpg";
$klikurl = "http://www.promolist.nl/script/count.php?liste=888&id=888";
}
if ($nummer == '3') {
$banner = "http://www.dutchleader.com/pics/banner468x60.gif";
$klikurl = "http://www.dutchleader.nl/top50/in.php?userid=888&siteid=1";
}
if ($nummer == '4') {
$banner = "http://www.dutchleader.com/pics/banner468x60.gif";
$klikurl = "http://www.dutchleader.nl/top50/in.php?userid=888&siteid=1";
}
$allow = array("http://1.2.3.4/", "http://5.6.7.8", "enz."); //IP-adressen waarvan je mag komen (bijv. http://1.2.3.4/) 
     if ($_SESSION['check'] == "ja") { 
      //Hier komt dan de tekst die een gebruiker te zien krijgt als hij op je banner heeft geklikt 
     } 
     else { 
      if (in_array($from, $allow) && $_POST['toegang'] == "jup") { 
       session_register(forced_banner_click); //Sessie aanmaken 
       $_SESSION['check'] = "ja"; //Sessie variabele aanmaken 
       header("Location: ".$_SERVER['PHP_SELF'].""); //Doorsturen naar de juiste pagina 
      } 
      else { 
 ?> 
    <tr>
      <td height="28" background="images/content-boven.jpg"></td>
    </tr>
    <tr>
      <td background="images/content-background.jpg"><p align="center" class="style1">Je dient op de banner te klikken om door te gaan en de speler te helpen met zijn dutchleaders.<br />
      </p>
      <p align="center" class="style1"><a href="index.php"><div onClick="votebanner()">
<CENTER><SCRIPT TYPE="text/javascript" LANGUAGE="JavaScript" src="http://dutchleader.nl/php/banex/view.php?id=gamersforum"></SCRIPT></CENTER>
<form name="fbc_post" method="post" action="koop1.php?dealer=<? echo $_GET['dealer']; ?>"> 
<input type="hidden" name="toegang" value="jup"> 
<center> <input name="toelaten" onClick="toelating();" type="button" value="Klik"> 
    <tr>
      <td height="7" background="images/content-onder.jpg"></td>
    </tr>
		<? Design_Onder();
Ob_End_Flush();
?><? exit; } };  ?>






Koop1.php deze voert dus alles uit en die bovenste die checkt of je op de banner klikt.

<?php
Ob_Start();
	$user_ip = (!empty($HTTP_SERVER_VARS['REMOTE_ADDR'])) ? $HTTP_SERVER_VARS['REMOTE_ADDR'] : (( !empty($HTTP_ENV_VARS['REMOTE_ADDR'])) ? $HTTP_ENV_VARS['REMOTE_ADDR'] : $_SERVER['REMOTE_ADDR']);
	if(!isset($user_ip))
	{
		echo 'Je kunt niet klikken zonder IP!';
		exit;
	}
	Include("includes/include.php");
		Design_Boven("Koop een...");
			
		$sSql = "SELECT gebruikersnaam,betaald FROM `users` WHERE gebruikersnaam='".htmlspecialchars($_GET['dealer'])."'";
		$sQuery = Mysql_Query($sSql);
		$Bestaat = Mysql_Num_Rows($sQuery);

		If($Bestaat == 1)
		{
			$User = Mysql_Fetch_Assoc($sQuery);
			$Day = Date("d");
			$Month = Date("m");
			$Year = Date("Y");
			$Uur = Date("H");
			if($User['betaald'] == 1)
			{
				if($Uur >= 00 && $Uur <= 11)
				{
					$Time_Now = mktime(0,0,0,$Month,$Day,$Year);
				}
				else
				{
					$Time_Now = mktime(12,0,0,$Month,$Day,$Year);
				}
			}
			else
			{
				$Time_Now = mktime(0,0,0,$Month,$Day,$Year);
			}
			$user_ip = (!empty($HTTP_SERVER_VARS['REMOTE_ADDR'])) ? $HTTP_SERVER_VARS['REMOTE_ADDR'] : (( !empty($HTTP_ENV_VARS['REMOTE_ADDR'])) ? $HTTP_ENV_VARS['REMOTE_ADDR'] : $_SERVER['REMOTE_ADDR']);
			$fSql = "SELECT gebruikersnaam FROM `clicks` WHERE gebruikersnaam='".htmlspecialchars($_GET['dealer'])."' AND ip='".$user_ip."' AND datum > '".$Time_Now."'";
			$fQuery = Mysql_Query($fSql) OR DIE(Mysql_Error());
			$Geklikt = Mysql_Num_Rows($fQuery);
			If($Geklikt == 0)
			{
				If($User['betaald'] == 1)
				{
					$Rand = Rand(1,3);
				}
				else
				{
					$Rand = Rand(1,2);
				}
				$Spullen = Array("Normale Dutchleader","Gouden Dutchleader","Titanium Dutchleader");
				$Waarde = Array("5","10","12");
				
				$Product = $Spullen[$Rand];
				$Geld = $Waarde[$Rand];

				Echo Top("".$Product." gekocht");
			
					Echo "Je hebt succesvol "; 
					
					If($User['betaald'] == 1){
						Echo "2 x ";
					}
					
					Echo "een <u>".$Product."</u> gekocht. ".htmlspecialchars(ucfirst($_GET['dealer']))." heeft hiermee <u>";					
					If($User['betaald'] == 1){
						Echo "2 x ";
					}
					
					Echo "&euro; ".$Geld."</u> verdient!</h3>
					
					Wil jij ook Super veel dutchleaders verdienen? <a href='aanmelden.php'>Meld je dan aan!</a>";
				
				Echo Bottom();
				
				Mysql_Query("INSERT INTO `clicks` (id,gebruikersnaam,datum,type,geld,ip) VALUES ('','".htmlspecialchars($_GET['dealer'])."','".Time()."','".$Product."','".$Geld."','".$_SERVER['REMOTE_ADDR']."')") OR DIE(Mysql_Error());
				Mysql_Query("UPDATE `users` SET geld=geld+".$Geld." WHERE gebruikersnaam='".htmlspecialchars($_GET['dealer'])."'") OR DIE(Mysql_Error());

				If($User['betaald'] == 1){

					Mysql_Query("INSERT INTO `clicks` (id,gebruikersnaam,datum,type,geld,ip) VALUES ('','".htmlspecialchars($_GET['dealer'])."','".Time()."','".$Product."','".$Geld."','".$_SERVER['REMOTE_ADDR']."')") OR DIE(Mysql_Error());
					Mysql_Query("UPDATE `users` SET geld=geld+".$Geld." WHERE gebruikersnaam='".htmlspecialchars($_GET['dealer'])."'") OR DIE(Mysql_Error());
				}
			}
			Else
			{
				if($User['betaald'] == 1)
				{
					Echo Top("Je hebt deze halve dag al dutchleaders gekocht");
				
						Echo "Je hebt deze halve dag al dutchleaders van ".htmlspecialchars(ucfirst($_GET['dealer']))." gekocht.<br /><br />
						
						Wil jij ook Super veel dutchleaders verdienen? <a href='aanmelden.php'>Meld je dan aan!</a>";
					
					Echo Bottom();
				}
				else
				{
					Echo Top("Je hebt vandaag dutchleaders gekocht");
				
						Echo "Je hebt vandaag al dutchleaders van ".htmlspecialchars(ucfirst($_GET['dealer']))." gekocht.<br /><br />
						
						Wil jij ook Super veel dutchleaders verdienen? <a href='aanmelden.php'>Meld je dan aan!</a>";
					
					Echo Bottom();
				}


			}
		
		}
		Else
		{
			Echo Top("De gekozen dealer bestaat niet (meer)");

				Echo "De gekozen dealer bestaat niet (meer)!<br /><br />
				
				Wil jij ook Super veel dutchleaders verdienen? <a href='aanmelden.php'>Meld je dan aan!</a>";
			
			Echo Bottom();
		}

		Design_Onder();
Ob_End_Flush();
?>


Alvast heel erg bedankt:p
misschien met $_SERVER['HTTP_REFERER']; o.i.d?
ja hoe moet ik dat precies invoegen, ik ben zelf niet heel erg goed op het gebied van die dingen ;)
Vergeet het maar,
The address of the page (if any) which referred the user agent to the current page. This is set by the user agent. Not all user agents will set this, and some provide the ability to modify HTTP_REFERER as a feature. In short, it cannot really be trusted.
Blijkt dus geen goeie optie te zijn. Betere optie is dan misschien om gewoon de banner naar een andere pagina te laten verwijzen, die een sessie maakt. Vervolgens op je uiteindelijke pagina kijken of de sessie wel bestaat. Eigenlijk een soort 'inloggen' dus
hmmm das mischien wel een goed idee idd, maar dan moet ik dus maken dat die voor een bepaald ip een wachtwoord maakt gewoon random en wanneer dat ip op de bepaalde page komt checkt die of het de juiste ip is met het wachtwoor den dat die daanra het ip enw achtwoord weer verwijder duit de db?
Lijkt me niet echt nodig. Een sessie is voor iedere bezoeker anders, dus je kunt gewoon op de 'tussenpagina' de sessie bannerClicked o.i.d maken, en dan op je 'eindpagina' controleren of de bannerClicked sessie bestaat.
Wil je mishcien helpen ik heb het net d.m.v. een tutorial geprobeerd alleen het lukte niet.

Hopelijk wil je me helpen, de rest van me site is namelijk af, dit is alleen het laastte probleem;)
iemand?

Reageren