IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Système de vote ( compte ) & IP ?


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2011
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Maroc

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Avril 2011
    Messages : 16
    Par défaut Système de vote ( compte ) & IP ?
    Bonjour,

    Je suis dans une impasse, et je voudrais un peu de vos lumières pour mettre un script de vote par IP & compte aussi.
    Actuellement le code que je fourni permet un vote chaque 2 heures par compte, ce que je souhaite c'est un vote par compte & IP.
    Je m’explique, si un membre as plusieurs comptes, il peux voter avec tout ses comptes 1 fois toute les deux heures et reçoit des points. Cependant je souhaite que la page vérifie aussi si l'ip X ( d'un compte ) n'as pas déjà voter y a moins de 2 heures pour interdire le vote par plusieurs comptes sur la même IP.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
     
    <?php
    session_start();
       require_once('configuration/lesfigues.php');
       require_once('mod/mod_G.php');
       require_once('mod/function.php');
       require_once('mod/bbcode.php');
          require_once('include/doctype.php');
          echo '<body>';
          require_once('include/header.php');
          echo '<div id=bg>';
          require_once('include/menuLeft.php');
          require_once('include/menuRight.php');
          echo '<div id=Content>';
     
     
       define('SECU', true);
    ?>
     
    <center><img src="<?php echo $ban_vote ; ?>"></center>
     
       <img style="background-color:#2f2f2f" src="style/img/topContent.png">
          <div id="bgContent">
             <div id="textContent">   
     
       <?php
    if (empty($_SESSION['guid']))
                {
                       ?>
     
              <center><p class="red">- Vous n'êtes pas connecter, vous ne serrez pas créditer de vos PB <img class="devtoolIcon" src="style/img/devtool/money.png">.
    - Utiliser le pannel de connexion en HAUT ou a DROITE.</p>
               <a target="blank" href="<?php echo $lien_rpg ;?>"><b><font color="red">~? Voter tout de même ?~</font></b></a><br/>
               <center><a href="<?php echo $lien_rpg ;?>"><img class="aImg" src="style/img/pb.png"></a></center>
               </center>
    <?php
                }
                else
                {
               if (empty($_GET['action']))
                   {
                $account = $_SESSION['login'];
                   $result = mysql_query("SELECT * FROM accounts WHERE account = '$account'");
     
     
                $row = mysql_fetch_array($result) or die(mysql_error());
           ?>
           <center> Voter pour <b>FLAMICHE</b> a comme but de faire progresser le serveur et d'assurer sa continuité. Mais aussi vous gagnez <font color="red"><b><?php echo $nbr_vote ; ?> PB</font></b> par vote une fois toute les <font color="red"><b>2 heures</b></font>.</p>
     
     
     
                <a href="<?php echo $lien_votegagne ; ?>?action=vote"><b><font color="red">"</font> VOTEZ <font color="red">"</a></font> </b><br>          
                <center><a href="<?php echo $lien_votegagne ;?>?action=vote"><img class="aImg" src="style/img/pb.png"></a></center><br><br>
                <small>NOTE: Une fois sur la page RPG veuillez écrire les 3 chiffres & lettres demandé pour confirmer le VOTE et gagnez vos PB <img class="devtoolIcon" src="style/img/devtool/money.png">.</small><br>
             </center>
                 <?php
                }
                else
                {
                $account = $_SESSION['login'];
                 $db = mysql_connect( $db_IP, $db_USER, $db_PASS );
                 mysql_select_db( $db_OTHER, $db_LOG );
                    $result = mysql_query("SELECT * FROM accounts WHERE account = '$account'");
                 $row = mysql_fetch_array($result) or die(mysql_error());
                $date = time();
    $ecartminute = ($date - $row['heurevote'])/60;
     
    if ($ecartminute > 120)
    {
    $vote = $row['vote'] + 1 ;
    $point = $row['points'] +$nbr_vote ;
    $req = "UPDATE accounts set heurevote = '$date', vote = $vote , points = $point  where account = '$account' ";
    mysql_query($req);
    echo '<meta http-equiv="refresh" target="blank" content="0; URL='.$lien_rpg.'">' ;
    }
    else
    {
    $restant = round(120 - $ecartminute, 0);
    ?>
    <center><p>Vous devez attendre <font color="red"><b><?php echo $restant; ?></font> minutes</b> avant de pouvoir votez et gagner des PB !</p>
    <br/>
    </center>
    <?php
    }
     
          }
               }
     
               ?>
               </div>
          </div>
       <img style="background-color:#2f2f2f" src="style/img/bottomContent.png">
    <?php
          echo '</div>';
          require_once('include/footer.php');
          echo '</div>';
          echo '</body>';
       echo '</html>';
    ?>

  2. #2
    Membre chevronné
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2009
    Messages
    236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2009
    Messages : 236
    Par défaut
    Ou est ton problème précisément ?

    Pour ce qui est de l'algo, il te suffit de vérifier si l'IP votante à déjà voter il y à moins de 2 heures, si ce n'est pas le cas, tu enregistre le vote pour le compte sélectionné.

    EDIT :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php echo $_SERVER["REMOTE_ADDR"]; ?>

  3. #3
    Membre averti
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2011
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Maroc

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Avril 2011
    Messages : 16
    Par défaut
    Citation Envoyé par gwharl Voir le message
    Ou est ton problème précisément ?

    Pour ce qui est de l'algo, il te suffit de vérifier si l'IP votante à déjà voter il y à moins de 2 heures, si ce n'est pas le cas, tu enregistre le vote pour le compte sélectionné.
    Merci pour ta réponse. En faite le problème est que je ne sais pas comment procéder pour enregistré l'ip du voteur aussi pour lui donner à elle aussi une condition de 2 heures avant de pouvoir re-voter.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php echo $_SERVER["REMOTE_ADDR"]; ?>
    à quoi sert elle cette fonction et comment l'utiliser ? Merci d'avance

  4. #4
    Membre Expert
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 494
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 494
    Par défaut
    salut,
    tu peux te creer une table qui contiendrait l'id du sondage et l'ip de l'utilisateur
    pour tes verifications, un petit select ira vite.

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php echo $_SERVER["REMOTE_ADDR"]; ?>
    te permets de recuperer l'ip de l'utilisateur.
    des qu'il y a un vote, tu l'insert dans cette table et le tour est joue.
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  5. #5
    Membre averti
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2011
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Maroc

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Avril 2011
    Messages : 16
    Par défaut
    Pour être franc, je ne suis qu'un débutant encore.
    Je voudrais faire en sorte que la page donne un message d'erreur "Vous avez déjà fait un vote via cette adresse IP" avec un ecarteminute de 120.
    Si l'utilisateur as déjà voter grâce a son autre compte, il reçoit ce message; tout cela pour éviter le multi-vote par IP, sachant que je donne accès au vote une fois chaque 120 minute, donc je voudrais modifier le code pour faire en sorte qu'il récupéré aussi l'ip sur une table si elle as déjà voter y a moins de 120 minutes.

Discussions similaires

  1. Conception d'un système de vote sans compte utilisateur
    Par miya dans le forum Général Conception Web
    Réponses: 4
    Dernier message: 01/07/2011, 12h24
  2. Système de votes
    Par Auden dans le forum Langage SQL
    Réponses: 2
    Dernier message: 23/05/2007, 13h27
  3. [AJAX] système de vote ajax
    Par sisco97 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 07/05/2007, 03h52
  4. [Système] Questions système de votes
    Par masseur dans le forum Langage
    Réponses: 2
    Dernier message: 03/10/2006, 15h47
  5. [MySQL] Système de votes (pour les membres) : cmt le créer ?
    Par yazerty dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 20/02/2006, 12h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo