Vote.php et MySQL .... ça fait rien !

Bonjour !

j’ai trouvé sur ces forums ceci : http://www.clubic.com/forum/php-systeme-de-vote-t367374.html

et j’ai donc décidé de l’utiliser mais malheuresement je n’y arrive pas :frowning:

voici mon code :



$host = "sql.free.fr"; //votre serveur SQL
$user = "****"; //votre nom d'utilisateur
$pass = "****"; //votre password
$bdd = "*****"; // votre base de donnée


@mysql_connect($host, $user, $pass);
@mysql_select_db("$bdd") or die("Impossible de se connecter");
$note = $_GET["note"];
$ip = $_SERVER["REMOTE_ADDR"];
$video = $_GET['page'];
$sql = "SELECT * FROM gni_vote WHERE ip = '$ip'";
$req = mysql_query($sql);
$nb = mysql_num_rows($req);
if ($nb != 0) {
echo "Vous avez déja voter";
}
else {
$sql = "INSERT * FROM gni_vote (video,ip,note) VALUES ('$video','$ip','$note')";
mysql_query($sql);
}
echo "Vidéo votée !";
mysql_close();

?>

et voici ma table http://img411.imageshack.us/img411/1880/sqlzm1.jpg

Donc en gros ça ne fait rien au niveau de MySQL… mais ça affiche bien

Voila ou j’en suis… je ne sais pourquoi rien n’est enregistré dans ma table :s

Aidez moi !

remplace ‹ insert * from › par ‹ insert into ›

Ca me semble un peu bancal la première méthode pour le test de vote (Et si plusieurs personnes on la même adresse IP visible?)… La requête me semble coûteuse, un ‹ limit 1 › est suffisant

Moi ce qui me semble bancal, c’est le vous avez déjà voter :wink:

Sinon SELECT * FROM gni_vote WHERE ip = ‹ " . mysql_real_escape_string($ip) . " › me semble mieux.

Sauf que : IP est de type TEXT, place ça en type VARCHAR(32), ou INT (mais là faut jouer avec http://www.php.net/manual/en/function.ip2long.php)), et colles y un INDEX.