Ajax要求jsonデータ

10929 ワード

ドメイン要求jsonデータ
クライアントのjsコード:

<script>

    $.ajax({

        url: 'http://127.0.0.2/index.php',

        type: 'GET',

        dataType: 'json',

        data: {ac: 'xcajax',at: 'goodslist'},

        success: function(json){

            $.each(json,function(i){

                   console.log(json[i].title);

            })

        }

    });

    

    

</script>
View Code
サービス端末PHPコード:

function in_goodslist() {

        $callback = $this->fun->accept('callback', 'G');

        $db_table = db_prefix . 'advert';

        $db_where = ' WHERE isclass=1 AND atid=6';

        $bann_array = array();

        $sql = "SELECT * FROM $db_table $db_where ORDER BY pid,adid DESC LIMIT 0,10";

        $rs = $this->db->query($sql);

        while ($rsList = $this->db->fetch_assoc($rs)) {



            if ($rsList['islink'] == 2 && $rsList['gotoid'] > 0) {

                $docread = $this->get_documentview($rsList['gotoid']);

                if ($docread['did'] > 0) $rsList['url'] = $this->get_link('doc', $docread, $lngpack);

            }



            if ($rsList['istime'] == 1) {

                if ($rsList['starttime'] < time() && $rsList['endtime'] > time()) {

                    $bann_array[] = $rsList;

                }

            } else {

                $bann_array[] = $rsList;

            }

        }

        $json = json_encode($bann_array);

        //$json = $bann_array;

        echo $callback."($json)";

    }
View Code
ドメインをまたいでjsonデータを要求します.
クライアントのjsコード:

<script>

    $.ajax({

        type: 'GET',

        async: false,

        url: 'http://zbcn.cn/index.php',

        dataType: 'jsonp',

        data: {ac: 'xcajax',at: 'goodslist'},

        jsonp: 'callback',

        success: function(json){

            $.each(json,function(i){

                   console.log(json[i].title);

            })

        }

    });

    

    

</script>
View Code
サービス端末のphpコード:

function in_goodslist() {

        $callback = $this->fun->accept('callback', 'G');//GET   

        $db_table = db_prefix . 'advert';

        $db_where = ' WHERE isclass=1 AND atid=6';

        $bann_array = array();

        $sql = "SELECT * FROM $db_table $db_where ORDER BY pid,adid DESC LIMIT 0,10";

        $rs = $this->db->query($sql);

        while ($rsList = $this->db->fetch_assoc($rs)) {



            if ($rsList['islink'] == 2 && $rsList['gotoid'] > 0) {

                $docread = $this->get_documentview($rsList['gotoid']);

                if ($docread['did'] > 0) $rsList['url'] = $this->get_link('doc', $docread, $lngpack);

            }



            if ($rsList['istime'] == 1) {

                if ($rsList['starttime'] < time() && $rsList['endtime'] > time()) {

                    $bann_array[] = $rsList;

                }

            } else {

                $bann_array[] = $rsList;

            }

        }

        $json = json_encode($bann_array);

        echo $callback."($json)";

    }
View Code