通过jQuery检索PHP变量

时间:2013-02-28 22:15:15

标签: php jquery ajax

我知道这些问题已经以各种形式提出,但我一直无法找到与我想要完成的事情相符的回答。总业余,所以任何额外的指针都值得赞赏。

任务:
使用page1上的表单将数据发布到PHP文件,然后在MySQL表中搜索与$_POST[]对应的行。然后,PHP文件将结果作为JSON_encode($variable)回显。从那里,PHP文件将用户重定向回page1,其中(理论上)有一个JQuery脚本,该脚本从PHP文件调用$variable并使用数据创建html。

守则:
PHP

<?php
ob_start();
session_start();
session_save_path('path');
mysql_connect("", "", "")or die(); mysql_select_db("db")or die();
$pname = $_POST['country'];
$result = mysql_query("SELECT * FROM project WHERE name = '$pname'");      
$array = mysql_fetch_row($result);  
echo json_encode($array);
header("page1.html");
?>

的HTML / jQuery的/ AJAX

<script type="text/javascript">// <![CDATA[
$(document).ready( function() {
    $.ajax({
        type: 'POST',
        url: 'page.php',
        data: '',
        dataType: 'json',
        cache: false,
        success: function(result) {
            $('#content1').html(data);
        },
    });
});
// ]]></script>
<div id="content1"></div>

php脚本工作并回应JSON编码变量,但#content1上没有任何内容...... 我感觉我的代码错了,或者在发布到PHP文件然后重定向时数据丢失。

2 个答案:

答案 0 :(得分:1)

您尝试将变量data附加到内容,但变量名为result。试试这个:

<script type="text/javascript">// <![CDATA[
$(document).ready( function() {
$.ajax({
type: 'POST',
url: 'page.php',
data: '',
dataType: 'json',
cache: false,
success: function(result) {
$('#content1').html(result);//<- this used to be $('#content1').html(data);
},
});
});
// ]]></script>
<div id="content1"></div>

此外,正如许多人所指出的那样,你现在只是在输出json - 没有任何地方可以生成表格。

答案 1 :(得分:0)

将$('#content1')。html(数据)更改为$('#content1')。html(result);

相关问题