使用JSON和PHP的动态行不会输出数据

时间:2013-06-01 23:57:26

标签: php jquery mysql sql json

我在生成包含数据的动态表行时遇到问题。正在使用PHP脚本从数据库中获取数据,并且正在使用jQuery处理客户端。 此代码仅显示没有数据值的空表行。

有人可以检查它到底出了什么问题吗?

js脚本:

if(odabrano === "g"){

$.getJSON("nutritional_value.php?value=" + encodeURI(value), function (data) {
var ttr = $("<tr />");    
$.each(data, function(k, v){
    $("<td />").text(v * (parseFloat(uneseno, 10) / 100)).appendTo(ttr);
});
$("#tejbl").append(ttr);
});

}

PHP脚本:

<?php

include 'connect.php';

//$value = $_SERVER['QUERY_STRING'];
$value = $_GET['value'];


$query = mysql_query("SELECT NAME, FAT, FIBER, SUGARS FROM ccm WHERE NAME LIKE '$value%'");
while( $run = mysql_fetch_array($query)){
/*     $name = $run['NAME'];
    $fat = $run['FAT'];
    $fiber = $run['FIBER'];
    $sugars = $run['SUGARS'];  */

            $results = array();
            $results["name"]=$run['NAME'];
            $results["fat"]=$run['FAT'];
            $results["fiber"]=$run['FIBER'];
            $results["sugars"]=$run['SUGARS'];
            //Send it to the client in json format:
            echo(json_encode($results));

}


?>

2 个答案:

答案 0 :(得分:2)

我认为您没有传递javascript变量value

的值

如果将getJSON javascript行更改为此内容会发生什么:

$.getJSON("nutritional_value.php?value=banana",function(data){    

答案 1 :(得分:1)

你可以试试这个

$.getJSON("nutritional_value.php?value=" + encodeURI(value), function (data) {
    var ttr = $("<tr />");    
    $.each(data, function(k, v){
        $("<td />").text(v * (parseFloat(uneseno, 10) / 100)).appendTo(ttr);
    });
    $("#tejbl").append(ttr);
});

对PHP文件的建议。

<?php

include 'connect.php';

if(isset($_GET['value'])){

$value = $_GET['value'];


$query = mysql_query("SELECT NAME, FAT, FIBER, SUGARS FROM ccm WHERE NAME LIKE '$value%'");

$results = array();

    while($run = mysql_fetch_array($query)){

       $results["name"] = $run['NAME'];
       $results["fat"] = $run['FAT'];
       $results["fiber"] = $run['FIBER'];
       $results["sugars"] = $run['SUGARS'];

    }

    echo json_encode($results);

}

?>