我想在我的查询的“Having”子句中使用变量bradio,但我不知道如何获取jquery变量的内容并将其传递到我的sql查询中。这是我的php文件的一个片段。你能告诉我怎么办?
由于
$conn = mysql_connect("localhost","form-test","pass");
$db = mysql_select_db("form-test",$conn);
?>
<script type="text/javascript">
jQuery.noConflict();
jQuery(function()
{
jQuery('#event_form_field-<?php echo $event_id; ?>').click(function()
{
var bradio= jQuery("input[type=radio]:checked").val()
alert(bradio); });});
</script>
<?php
$query2 = "SELECT COUNT(wp_events_answer.answer) as rep, wp_events_answer.attendee_id as idq, wp_events_question.quota as quota2, wp_events_attendee.event_id as ev, wp_events_answer.answer as answ, wp_events_question.id as qst3
FROM wp_events_answer, wp_events_attendee, wp_events_question
WHERE wp_events_answer.question_id = wp_events_question.id AND wp_events_answer.attendee_id = wp_events_attendee.id
HAVING answer =
GROUP BY answ;";
$result2 = mysql_query($query2) or die(mysql_error());
while($row2 = mysql_fetch_row($result2)) {
}
?>
答案 0 :(得分:5)
您不能使用上述方法在一个页面中混合使用PHP和javascript代码。问题是因为PHP在服务器上执行,远在客户端上运行任何javascript之前。因此,两人不能互相交谈。
这里的解决方案是向服务器上的PHP脚本发出AJAX请求,并将无线电控制的值传递给它。然后,这将返回所需的数据,然后您可以使用javascript在您的页面上显示此内容。
例如:
$.post(
'myScript.php',
'bradio=' + jQuery("input[type=radio]:checked").val(),
function(data) {
// process your result here
}
);
答案 1 :(得分:2)
将查询写入另一个php文件并使用GET或POST或者ajax调用传递变量
答案 2 :(得分:2)
不,你不能以这种方式将js变量传递给php。 php代码在页面发送到浏览器之前执行,而js代码在执行之后执行:您需要在请求中传递bradio
值的ajax调用(获取或发布)
答案 3 :(得分:1)
您需要发送POST请求并重新加载页面,或者您需要通过AJAX将变量传递到当前页面并动态更改输出。通过jquery,通过http://api.jquery.com/jQuery.ajax/
发送AJAX请求非常简单答案 4 :(得分:0)
您需要通过javascript($.get
或$.post
)发出请求,并将此单选按钮的值作为参数传递。然后,在PHP端,您将能够从$_GET
或$_POST
数组中获取它。