例
这是index.php文件
从该文件中,我将值$abc
传递给ALL Work Spaces
,当从Size
中选择任何选择并且我想在$abc
选择中更改结果时,该值会将表的所有值存储到ajax
<?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文件代码
在此文件中,他们通过加注检查了中的所有值,但显示出致命错误,请帮助我如何传递该表值?
<?php
$ab=$_REQUEST['w'];
$result=mysql_fetch_array($ab);
echo $result[0];
?>
如果您还有其他窍门,请帮助我,因为它不返回值,返回致命错误
最佳答案
我建议您在one.php文件中获取值,对结果数组进行序列化并对其进行urlencode以在ajax url调用中进行解析,最后对在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在PHP 5.5.0中已弃用,在PHP 7.0.0中已删除。相反,MySQLi或PDO_MySQL扩展名应为
用过的。
关于javascript - 如何将特定的表值传递给我们从数据库表获得的ajax?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38321308/