如何使用jquery post将php获取的数据转换为html

如何使用jquery post将php获取的数据转换为html,php,javascript,jquery,html,post,Php,Javascript,Jquery,Html,Post,您好,我在jquery中有一个函数,它使用$.Post在php文件上发送数据,在该文件中,我的查询工作正常,并将数据发送回 js 该功能工作正常,当我提醒返回的数据时,该功能也工作正常 这里是php <?php include_once("connection.php"); $cidade_data = $_POST['cidade_data']; if (isset($cidade_data)) { $sql = mysql_query("sel

您好,我在jquery中有一个函数,它使用$.Post在php文件上发送数据,在该文件中,我的查询工作正常,并将数据发送回

js

该功能工作正常,当我提醒返回的数据时,该功能也工作正常

这里是php

<?php
    include_once("connection.php");
    $cidade_data = $_POST['cidade_data'];

    if (isset($cidade_data)) {
        $sql = mysql_query("select * from agenda where cidade = '$cidade_data'", $con) or die(mysql_error());
        if (mysql_num_rows($sql) > 0) {
            while ($data = mysql_fetch_object($sql))
            {
                $date = $data->data;
                $cidade = htmlentities($data->cidade); 
                $estado = htmlentities($data->estado); 
                $local = htmlentities($data->local);            
                $endereco = htmlentities($data->endereco); 
                $site_local = htmlentities($data->site_local);
                $site_ingresso = htmlentities($data->site_ingresso); 
                $endereco = htmlentities($data->endereco); 
            }
        }
        else{
           echo "No Data";       
        }
    }

?>
我想知道如何在js中获取php返回的数据,以及如何将这些数据分配到标记中。还想知道php中有while循环在这里会不会也是用来填充所有行的循环

如果我在我的网页中使用直接php,那么我可以在while循环中这样使用

<div><?php echo $date; ?></div>
<div><?php echo $cidade; ?></div>
<div><?php echo $estado; ?></div>
<div><?php echo $local; ?></div>
.
.
.

.
.
.

我怎样才能进入$.Post case

您的循环有点不正确。您只需获取每一行的数据,然后在所有这些变量中覆盖前一行的数据。您应该构建一个结果数组,然后将其发送到客户端JS代码。e、 差不多

$data
while($row = mysql_fetch_assoc($result)) {
     $data[] = $row;
}

echo json_encode($data);
在客户端,您将收到一个可以迭代的对象数组:

$.post('includes/agenda_data.php',data,function(data){
    $.each(data, function(idx, row) {
        $('#date').innerHTML = row['date'];
        ...
    });
});
在JS循环中具体做什么取决于您


另外,请注意,您的PHP代码易受攻击。

$。post是一个AJAX调用,因此您需要在PHP中回显结果,以确保可以使用结果

试用

echo json_encode($your_data)
要使用客户端(浏览器)中的数据,可以使用


使用parseJSON可以更轻松地使用数据。

为什么不使用jQuery通过分配一个类来填充div的内容,如本例所示:

<div class="date"><?php echo $date; ?></ div>
<div class="cidade"><?php echo $cidade; ?></ div>
<div class="estado"><?php echo $estado; ?></ div>
<div class="local"><?php echo $local; ?></ div>

使用jQuery,
$.post
成功地检索返回的信息并像这样集成

$('.date').html(信息[0]['date'])

echo json_encode($your_data)
<div class="date"><?php echo $date; ?></ div>
<div class="cidade"><?php echo $cidade; ?></ div>
<div class="estado"><?php echo $estado; ?></ div>
<div class="local"><?php echo $local; ?></ div>