AJAX返回数据错误?

时间:2014-12-31 08:48:06

标签: php ajax

拜托,你能帮我解决这个问题吗?:

我按产品或价格将产品分类为ASC或DESC。如果我将它们排序为ASC,则没有问题 - 我在foreach中循环产品并将生成的字符串添加到变量中。但是如果产品是DESC排序的,那就有问题 - 我通过foreach循环它们但是html没有添加到变量中(我试着print_r变量$ products,所以我知道,它不是空的......) - 我希望如果你看下面的代码,我的问题就会很清楚。你知道吗,哪里可能有问题?非常感谢你。

我也尝试不通过ajax调用此代码,但是转到ajax脚本的url并且行为是一样的......

编辑: 在将$products_html添加到$products_html之前,我试图回复$return['products_html']并在$products_html中正确生成了html ...我很困惑这是什么意思...

编辑2: 当我print_r $ return时,一切正常 - 产品html存储在$ return ['products_html']中。问题是,当我json_encode它。但我真的不知道,问题出在哪里......

这是代码:

$products_html = '';
$products = $this->products_model->get_products_specified($filter); // here i load products into variable
foreach($products as $product){ // here i loop them
            $products_html .= view_loader('products/product_small', array('product' => $product), true); // view load returns html for product
        }
$return['products_html'] = $products_html;
        $return['params_url'] = base_url().'individual/'.generate_url_from_parameters($filter);
        $return['status'] = 1;
        $return['filter'] = $filter;
        echo json_encode($return); // echo for ajax return

1 个答案:

答案 0 :(得分:0)

如果要排序的字段的数据类型不是像varchar这样的数值数据类型,那么这可能就是问题所在。