Système de vote php

Système de vote php - PHP - Programmation

Marsh Posté le 22-02-2014 à 20:54:09    

Bonjour, un amis m'a demandé de lui inclure un système de vote en php dans son site web.
 
Mais il y à un soucis, on clique sur "vote" on est bien rediriger vers le site, mais si on re-clique par la suite on est à nouveau rediriger alors que ça ne devrais pas ... ( à cause du timestamp )
de plus chaque clique ( tout les 2h ) devrais ajouter de la matter sauf que ça ne le fait pas.
 
Enfin bref, je pense que le code sera plus explicite !
 

Code :
  1. <?php
  2. if(!defined('INSIDE')){ die(header("location:http://google.fr" ));}
  3. class ShowVotePage
  4. {
  5.    
  6.     public function __construct ( $user, $lien )
  7.     {
  8.         global $db;
  9.         //Gains
  10.         $gain_dm    = 1000;
  11.        
  12.         $ID = $_SERVER["REMOTE_ADDR"];
  13.         $Timestamp = time();
  14.         $requete = $db->query ( "SELECT * FROM xg_vote WHERE ID='$ID'" , 'vote' );
  15.         $donnees = $db->fetch_array($requete);
  16.        
  17.         $temps = $donnees['timestamp'] + 7200;
  18.         $temps_diff = $temps - $Timestamp;
  19.         $temps_diff_affiché = gmdate ( " G:i:s", $temps_diff );
  20.         if (time() >= $temps){
  21.            
  22.             if(is_array($donnees)){
  23.                 $db->query ( "UPDATE xg_vote SET timestamp = '$Timestamp' WHERE ID='$ID'" , 'vote' );
  24.             }else{
  25.                 $db->query ( "INSERT INTO xg_vote VALUES ('$ID', '$Timestamp')" , 'vote' );
  26.             }
  27.             $db->query("UPDATE xg_users SET matter = matter + $gain_dm WHERE id" );
  28.            
  29.             exit ( header ( 'location: ' . $lien ) );
  30.        
  31.         } else {
  32.            
  33.             message("Tu dois encore attendre : $temps_diff_affiché.", "game.php?page=overview" );
  34.            
  35.         }
  36.        
  37.     }
  38.    
  39. }
  40. ?>


 
Merci de votre aide :)

Reply

Marsh Posté le 22-02-2014 à 20:54:09   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed