这是index.php文件--这个文件我传递值$abc,当选择从ALL Work Spaces中选择时,将表的所有值存储到ajax,并且我希望在Size选择中找到结果。
<?php
mysql_connect("localhost","username","password");
mysql_select_db("databasename");
$abc=mysql_query("select * from table_name");
?>
<select onchange="showSoft(this.value)" >
<option value="" selected="selected">All Work Spaces </option>
<option value="industrial">Workshop/Industrial </option>
</select>
<select name="tosize" id="tosize">
<option selected>Size</option>
<option value="100" id="softsq1">100sq ft </option>
<option value="200" id="soft2">200sq ft </option>
<option value="300" id="soft1">300sq ft </option>
</select>
<script>
function showSoft(str) {
var xhttp;
xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (xhttp.readyState == 4 && xhttp.status == 200) {
document.getElementById("softsq1").innerHTML = xhttp.responseText;
}
};
xhttp.open('GET', 'two.php?q='+str+'&w=<?php echo $abc; ?>', true);
xhttp.send();
}
</script>现在看看这个文件中的two.php文件代码,他们通过加脂检查来自$abc的所有值,但是它显示了致命的错误,请帮助我如何传递那个表值?
<?php
$ab=$_REQUEST['w'];
$result=mysql_fetch_array($ab);
echo $result[0];
?>如果您还有其他的窍门,请帮助我,因为它不返回值,它返回致命错误。
发布于 2016-07-12 07:06:59
我建议您获取one.php文件中的值,序列化结果数组并在ajax调用中对其进行解析,最后对two.php文件中的字符串进行解码和取消序列化。
因此,首先获取结果数组:
<?php
mysql_connect("localhost","username","password");
mysql_select_db("databasename");
$abc=mysql_query("select * from table_name");
$results = mysql_fetch_array($abc, MYSQL_ASSOC);
?>在ajax请求中,将其解析为json字符串:
xhttp.open('GET', 'two.php?q='+str+'&w=<?php echo urlencode(serialize($results)); ?>', true);最后,在two.php文件中检查,将json字符串反序列化为数组:
<?php
$ab=$_REQUEST['w'];
$results = unserialize(urldecode($ab));
print_r($results);
?>顺便说一句,注意:
mysql_fetch_array在PHP5.5.0中被废弃,在PHP7.0.0中被删除。相反,应该使用MySQLi或PDO_MySQL扩展。
发布于 2016-07-12 08:34:33
我建议你使用$.ajax:
function showSoft(str) {
$.ajax({
method: "GET",
data: xxx,
url: xxx,
success: function (data) {
console.log(data);
},
error: function(data) {
//xxxxxxx
}
});
}这里只需传递你想要的数据
https://stackoverflow.com/questions/38321308
复制相似问题