我想将javascript变量转换为php变量以在sql查询中使用它,但是它不起作用。
html代码:
<select id = "dep_ID" name = "dep_ID" onchange="myFunction()">
同一文件中的javascript代码:
<script>
function myFunction(){
var xo = document.getElementById("dep_ID").value;
document.getElementById("demo").innerHTML = "You selected: " + xo;
$.ajax({
url: 'insert.php',
data: {duration: xo},
type: 'POST',
success: function(data) {
alert(data);
document.getElementById("demo").innerHTML = "You selected: " + <?php echo @$duration;?>;
}
});
}
</script>
insert.php代码:
<?php
$duration = $_POST['xo'];
return $duration ;
?>
我希望得到dep_ID变量的输出,但是我什么也没得到。
答案 0 :(得分:1)
Javascript和PHP systax不同。在ajax调用的响应中,您将获得javascript对象。因此,您需要进行如下更改:
document.getElementById("demo").innerHTML = "You selected: " + data.duration;
答案 1 :(得分:0)
$ duration变量。
我认为您在生成html页面之前会发生什么,当我呈现页面并用户选择一个值时发生了什么,以及在执行ajax调用并执行了insert.php之后发生的事情,这让您感到困惑。
要清楚,这是
在浏览器发生任何事情之前得到执行,因此$ duration是未定义的。