如何将特定的表值传递给我们从数据库表中获取的ajax?

时间:2016-07-12 06:18:41

标签: javascript php jquery mysql ajax

实施例 这是index.php文件 从@ $abc中选择任何选项并且我想在ALL Work Spaces选择

中选择结果时,将此文件格式化为Size,其将表的所有值存储到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文件代码 在这个文件中,他们通过胖子检查来自$abc的所有值,但它显示致命错误,请帮助我如何传递该表值?

<?php
$ab=$_REQUEST['w'];
$result=mysql_fetch_array($ab);
echo $result[0];
?>

如果你有任何其他技巧请帮助我becoz它不返回值它返回致命错误

2 个答案:

答案 0 :(得分: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 string:

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);
?>

顺便提一下,注意:

  在PHP 5.5.0中不推荐使用

mysql_fetch_array ,它已在PHP 7.0.0中删除。相反,MySQLi或PDO_MySQL扩展应该是   使用

答案 1 :(得分:0)

我建议你使用$ .ajax:

function showSoft(str) {
$.ajax({
     method: "GET",
     data: xxx,
     url: xxx,

     success: function (data) {
     console.log(data);
          },
    error: function(data) {
        //xxxxxxx
           }
    });
}

这里只是传递你想要的数据