souci pour recuperer une variable dans un script de vote

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : souci pour recuperer une variable dans un script de vote

Re: souci pour recuperer une variable dans un script de vote

par cdog » 17 oct. 2011, 05:56

hello!
désolé pour le long temps de reponse.

Quand je fais otn test il me met une erreur d'objet requis sur la ligne de l' " alert"

merci

Re: souci pour recuperer une variable dans un script de vote

par AB » 12 oct. 2011, 00:49

Il te suffit de mettre un id dans ton input puis de récupérer sa valeur :
<?php
$vote_id = 12;
?>
<html>
<head>
<script type="text/javascript">

function getVote(int)
{
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("poll").innerHTML=xmlhttp.responseText;
    }
  }
  
  alert(document.getElementById("vote_id").value);

xmlhttp.open("GET","./includes/news/vote/vote2.php?vote="+int,true);
xmlhttp.send();
}
</script>
</head>
<body>

<div id="poll">
<h3>Aimez vous cet article ?</h3>
<form>
<input type="hidden" name="vote_id" id = "vote_id"  value="<?php echo $vote_id ; ?>" />
Yes:
<input type="radio" name="vote" value="0" onclick="getVote(this.value)" />
<br />No:
<input type="radio" name="vote" value="1" onclick="getVote(this.value)" />
</form>
</div>

</body>
</html>
A tester dans une page séparée. Et donc tu pourras compléter la chaine de ta requête :
xmlhttp.open("GET","./includes/news/vote/vote2.php?vote="+int+"&vote_id="+document.getElementById('vote_id').value, true);

souci pour recuperer une variable dans un script de vote

par cdog » 12 oct. 2011, 00:09

bonsoir,
j'ai trouvé un script de vote assez court que j'essaie d'implanter dans mes pages.
dans cette page de news, j'appelle via mysql un ensembles de données dont l'id de la news.
mon souci est que je n'arrive pas à renvoyer cet id lors de la validation du vote pour enregistrer le vote dans la bdd.
mon select dont id from ma table

<div id=social">
<? 
$vote_id = $reponse['id'];
include("./includes/news/vote/vote.php"); ?>
</div>
fichier vote.php
<html>
<head>
<script type="text/javascript">
function getVote(int)
{
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("poll").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","./includes/news/vote/vote2.php?vote="+int,true);
xmlhttp.send();
}
</script>
</head>
<body>

<div id="poll">
<h3>Aimez vous cet article ?</h3>
<form>
<input type="hidden" name="vote_id" value="<? echo $vote_id ; ?>" />
Yes:
<input type="radio" name="vote" value="0" onclick="getVote(this.value)" />
<br />No:
<input type="radio" name="vote" value="1" onclick="getVote(this.value)" />
</form>
</div>

</body>
</html> 
fichier pour la requête:
<?php
$vote = $_REQUEST['vote'];

//get content of textfile
$filename = "poll_result.txt";
$content = file($filename);

//put content in array
$array = explode("||", $content[0]);
$yes = $array[0];
$no = $array[1];

// connect to db


include("../xxxxxxx"); 
mysql_connect($host, $user, $pass); 
mysql_select_db("$bdd") 
or die("Ouverture base impossible");


if ($vote == 0)
  {
  $yes = $yes + 1;
  mysql_query("UPDATE news SET votey=votey+1 WHERE id = '$vote_id' "); 
  }
if ($vote == 1)
  {
  $no = $no + 1;
    mysql_query("UPDATE news SET voten=voten+1 WHERE id = '$vote_id' "); 

  }

<h2>Result:</h2>
<p>
Merci d'avoir voté : 

</p>
<table>
<tr>
</tr> <tr>
<td>Yes:</td>
<td>
<img src="./includes/news/vote/poll.gif"
width='<?php echo(100*round($yes/($no+$yes),2)); ?>'
height='20'>
<?php echo(100*round($yes/($no+$yes),2)); ?>%
</td>
</tr>
<tr>
<td>No:</td>
<td>
<img src="./includes/news/vote/poll.gif"
width='<?php echo(100*round($no/($no+$yes),2)); ?>'
height='20'>
<?php echo(100*round($no/($no+$yes),2)); ?>%
</td>
</tr>
</table>
j'ai essayé en post et get mais je n'arrive jamais à récupérer ma variable $vote_id.

pourriez vous m'aider?

Merci à toutes et tous