我想创建一个在mysql数据库中发送反馈(好/平均/差)的表单,而不加载我所在的页面。它的工作正常,但它不能识别我发送的价值(如果发送的是好的,平均的或差的)。
这是我的表格:
<form method="post" id="radio_fb" style="margin-top:-90px;">
<p>
<input type="radio" name="radios" id="poor" value="poor" /><label for="poor">Poor</label>
<input type="radio" name="radios" id="average" value="average" checked="checked" /><label for="average">Average</label>
<input type="radio" name="radios" id="good" value="good" /><label for="good">Good</label>
<input type="hidden" name="url" value="<?php echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];?> "/>
<input type="submit" name="submitter" value="Send" id="submit" />
</p>
</form>
这是我的jQuery:
jQuery(document).ready(function($) {
$("#radio_fb").submit(function() {
cname = this.radios.value;
curl = this.url.value;
submitter = this.submitter;
var data = {
name: cname,
url: curl
};
$.post("ajax.php", data, function() {
submitter.value="Sent";
submitter.disabled=true;
});
return false;
});
});
以下是将值存储在数据库中的函数:
<?php
include_once('config.php');
if ($_POST['radios'] == 'good') {
$url = $_POST['url'];
$bdd->exec('INSERT INTO feedback(id, url, avis) VALUES ("", "'. $url .'", "Good")');
} else if ($_POST['radios'] == 'average') {
$url = $_POST['url'];
$bdd->exec('INSERT INTO feedback(id, url, avis) VALUES ("", "'. $url .'", "Average")');
} else {
$url = $_POST['url'];
$bdd->exec('INSERT INTO feedback(id, url, avis) VALUES ("", "'. $url .'", "Poor")');
}
?>
知道怎么解决这个问题吗?我查看了所有答案,但没有任何工作:我的函数不断返回else语句(如果我删除它,则没有任何内容)。
答案 0 :(得分:1)
尝试这样的事情: var cname = $('input:radio [name = radios]:checked')。val();