Merci de ta réponse si rapide xTG.
Je vais essayer de te répondre assez clairement =)
Ce code dis que si il n'existe pas le login dans le tableau, le membre peux voter justement !
Si le le data[0] == 0 : C'est à dire si le membre n'existe pas (dans la table "vote" !!!), on prend le vote en compte.
Sinon, donc si data[0] == 1, c'est le week qui est pris en compte.
$sql = 'SELECT login, week FROM vote WHERE login="'.$login.'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);
if($data[0] == 0 OR $data[1] != $week){
$sql = 'INSERT INTO vote VALUES("","'.$login.'","'.$tuto.'","'.$today.'","'.$week.'")';
mysql_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error());
}
J'ai pas encore songé au vote de l'année prochaine mais si je réussi à trouver la solution à ce problème celui de l'année prochaine coulera de source, juste un petit truc à rajouter.
Pour ce qui s'agit de l'espace membre, je crois que tu n'as pas lu mon sujet en entier

Je cite :
J'explique un peu mon code, dans le formulaire on remarque que je demande d'entrer un "log", c'est pour simuler la session login. Il est évident que pour la version finale de mon site j'utiliserais directement la session dans le code php.
Le code que je vous propose ici est un code temporaire pour mon espace local, ce que j'ai bien préciser. Mais il fonctionne de la même manière. J'ai juste proposé un champ login pour "simuler" un login existant.
Mais mon site possède bien un espace membre. ^^
Pour finir dans week, non. Je préfère justement mettre un nombre plutôt qu'une date.
Week est un INT.
Date est une DATE.
Je completerais mon algo avec la variable date
Edit important :
De plus, j'ai préciser que mon algo n'arrive pas à empêcher un membre ayant déjà voter cette semaine de re-voter.
Mon problème n'est pas tant de faire voter un nouveau membre puisque ça marche bien, mais d'empêcher de faire voter un membre l'ayant déjà fait.
Le problème vient certainement de si "if", mais je ne sais pas pourquoi.

Merci de ta réponse si rapide xTG.
Je vais essayer de te répondre assez clairement =)
Ce code dis que si il n'existe pas le login dans le tableau, le membre peux voter justement !
Si le le data[0] == 0 : C'est à dire si le membre n'existe pas (dans la table "vote" !!!), on prend le vote en compte.
Sinon, donc si data[0] == 1, c'est le week qui est pris en compte.
[php]$sql = 'SELECT login, week FROM vote WHERE login="'.$login.'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);
if($data[0] == 0 OR $data[1] != $week){
$sql = 'INSERT INTO vote VALUES("","'.$login.'","'.$tuto.'","'.$today.'","'.$week.'")';
mysql_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error());
}[/php]
J'ai pas encore songé au vote de l'année prochaine mais si je réussi à trouver la solution à ce problème celui de l'année prochaine coulera de source, juste un petit truc à rajouter.
Pour ce qui s'agit de l'espace membre, je crois que tu n'as pas lu mon sujet en entier ;)
Je cite :
[quote]J'explique un peu mon code, dans le formulaire on remarque que je demande d'entrer un "log", c'est pour simuler la session login. Il est évident que pour la version finale de mon site j'utiliserais directement la session dans le code php.[/quote]
Le code que je vous propose ici est un code temporaire pour mon espace local, ce que j'ai bien préciser. Mais il fonctionne de la même manière. J'ai juste proposé un champ login pour "simuler" un login existant.
Mais mon site possède bien un espace membre. ^^
Pour finir dans week, non. Je préfère justement mettre un nombre plutôt qu'une date.
Week est un INT.
Date est une DATE.
Je completerais mon algo avec la variable date ;)
Edit important :
De plus, j'ai préciser que mon algo n'arrive pas à empêcher un membre ayant déjà voter cette semaine de re-voter.
Mon problème n'est pas tant de faire voter un nouveau membre puisque ça marche bien, mais d'empêcher de faire voter un membre l'ayant déjà fait.
Le problème vient certainement de si "if", mais je ne sais pas pourquoi. :)