Einzelnen Beitrag anzeigen
  #23  
Alt 19.08.2004, 20:38:13
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
Gegen das Reloaden schützt mein Script natürlich nicht. Aber da könntest du ja, mit MySQL arbeiten.

Beispiel:

Tabelle page:
id int(11) auto_increment
url varchar(255)

Tabelle visited:
id int(11) auto_increment
page_id int(11)
user_id int(11)

index.php:

PHP-Code:
<?php
    session_start
();
    
$_SESSION['time'] = time();
    echo 
'<a href="page2.php?page_id=' $page_id '"><img src="banner.jpg"></a>';
?>
Die Variable page_id enthält die id der Seite, die du aufrufen willst.

page2.php:
PHP-Code:
<?php
    session_start
();
    
$page_id $_GET['page_id'];
    if((
$_SESSION['time']-time())>=20) {
        
$sql "SELECT
                    COUNT(ID) AS anzahl
                FROM
                    visited
                WHERE
                    page_id = $page_id AND
                    user_id = $user_id"
;
        
$row mysql_fetch_array(mysql_query($sql), MYSQL_ASSOC);

        
//  User mit dieser Ip hat die Seite noch nicht aufgerufen
        
if($row['anzahl'] == 0) {
            
//  Punkte gutschreiben, weiterleiten
        
}
?>
user_id ist die id, die der User in der Datenbanktabelle user hat.

Vorrausetzung ist natürlich, dass der Bereich nur für eingeloggte Benutzer verfügbar ist und jeder Benutzer eine eindeutige id hat. Aber davon bin ich ausgegangen, da es ansonsten auch schwer wird, die Punkte gutzuschreiben.
Mit Zitat antworten