Получение значения радиокнопки и отправка через ajax на php

У меня есть опрос на моем сайте, на котором отображаются переключатели рядом с каждым ответом. Когда пользователь выбирает опцию и отправляет, im запускает скрипт aa php через ajax, чтобы вставить значение или выбранный переключатель в таблицу.

Мой Ajax работает, но в настоящее время вставляет строку из 0 строк в каждую строку, поэтому она не выбирает значение из переключателя. Любая помощь будет оценена по достоинству.

HTML:

<form id="poll_form" method="post" accept-charset="utf-8"> <input type="radio" name="poll_option" value="1" id="poll_option" /><label for='1'>&nbsp;Arts</label><br /> <input type="radio" name="poll_option" value="2" id="poll_option" /><label for='2'>&nbsp;Film</label><br /> <input type="radio" name="poll_option" value="3" id="poll_option" /><label for='3'>&nbsp;Games</label><br /> <input type="radio" name="poll_option" value="4" id="poll_option" /><label for='4'>&nbsp;Music</label><br /> <input type="radio" name="poll_option" value="5" id="poll_option" /><label for='5'>&nbsp;Sports</label><br /> <input type="radio" name="poll_option" value="6" id="poll_option" /><label for='6'>&nbsp;Television</label><br /> <input type="submit" value="Vote &rarr;" id="submit_vote" class="poll_btn"/> </form> 

AJAX:

  $("#submit_vote").click(function(e) { var option=$('input[type="radio"]:checked').val(); $optionID = "="+optionID; $.ajax({ type: "POST", url: "ajax_submit_vote.php", data: {"optionID" : $optionID} }); }); 

PHP: (сокращенная версия)

  if($_SERVER['REQUEST_METHOD'] == "POST"){ //Get value from posted form $option = $_POST['poll_option']; //Insert into db $insert_vote = "INSERT into poll (userip,categoryid) VALUES ('$ip','$option')"; 

Заранее спасибо!

 $("#submit_vote").click(function(e){ $.ajax( { type: "POST", url: "ajax_submit_vote.php", data: $('#poll_form').serialize(), success: function( response ) {} }); }); 

Затем вы должны иметь переменную POST «poll_option», доступную в вашем PHP-скрипте.

 var option = $('input[type="radio"]:checked').val(); $.ajax({ type: "POST", url: "ajax_submit_vote.php", data: { poll_option : option } }); 

В PHP вы читаете $_POST['poll_option'] поэтому вы должны использовать poll_option как ключ в вашем объекте данных. Кроме того, значение хранится в option не $optionID как вы пытались использовать.

$ Является допустимым символом в именах переменных в Javascript, он не делает ничего особенного сам, но некоторые кодеры префикс что-либо, что является объектом jQuery с $ чтобы они могли заглянуть в код и легко увидеть, какие переменные уже имеют обертку jQuery.

Например:

 var $option = $('input[type="radio"]:checked'); // $option is the jQuery wrapped HTML element var myValue = $option.val(); // we know $option already has the jQuery wrapper so no need to use the $(..) syntax. 
  $optionID = "="+optionID; 

Я не совсем понимаю, что вы пытаетесь сделать здесь oO, в javascript вы не определяете свои переменные, используя $ .

 data: { optionID : option} 

используя его, как это должно работать. Вы бы получили это как в PHP:

 $option_value=$_POST['optionID'];