Vote php/mysql

Bonjour,

Je suis en train de faire un système de vote simple en php avec vérification d'ip, mais j'ai un problème dans mon code il ne fonctionne pas terrible.. Pourriez vous m'aider à voir ce qui ne va pas?

code du formulaire :
<?php	
while ($val = mysql_fetch_array($retour_messages)){
	$b_titre=$val["titreToy"];
	$b_image=$val["imageToy"];
	$b_note=$val["noteToy"];
	$b_link=$val["linkToy"];
	
  echo '<div id="blocToy">';
  echo '<div id="photo"><img src="../img/'.$b_image.'"/></div>';
  echo '<div id="download"><a href="'.$b_link.'" target="_blank"><img src="../img/download.png"/></a></div>';
  echo '<div id="titre"><p>'.$b_titre.'</p></div>';
  echo '<div id="note">'.$b_note.'</div>';
  echo '<div id="jaime"><form name="formulaire" action="vote.php" method="post">
  <input type="submit" value="ok" name="ok"/>
  </form>
  </div>
  </div>';
}
?>



Code page de traitement :

<?php
$host = "xxx";
$user = "xxx";
$pass = "xxx";
$bdd = "xxx";

@mysql_connect($host,$user,$pass)
	or die("Impossible de se connecter");
@mysql_select_db($bdd)
	or die("Impossible de se connecter");
?>

<?php
if(isset($_POST['action']))
{
$ip = $_SERVER['REMOTE_ADDR']; 
$ipeexists = "SELECT ip FROM mypapertoy WHERE ip='$ip'";
$req = mysql_query($ipeexists);
if (mysql_num_rows($req) > 0) {
echo "<body bgcolor=F7F5F5><br><br><br><br><br><b><p align=center><span style=font-size:10pt;><font color=red face=verdana>Votre avis a deja ete donne, merci.</p></font></b>";
exit;
}

 mysql_query("INSERT INTO mypapertoy values('$ip')");
    $sql = "UPDATE mypapertoy SET noteToy=noteToy+1";
    $req = mysql_query($sql) or die(mysql_error());
	


    echo "Votre vote a ete pris en compte";
}
else
    echo"Erreur dans l'envoi du formulaire";
?>

Et donc quand j'envoie le formulaire, il m'affiche toujours "Erreur dans l'envoi du formulaire".
Y aurait il une erreur quelque part que je ne vois pas, ou un solution plus simple ?

2 réponses

  1. Bonsoir,
    Comportement normal étant donné que ta variable $_POST['action'] n'est pas initialisé dans ton formulaire. Utilise à la place la variable $_POST['ok']
    @+
    1. Ok merci, j'avais pas fait attention à ca, je viens de le modifier, par contre j'ai toujours le message d'erreur lors de l'envoi..