ThinkPHPでajaxを使用してjsonデータを受信する方法

3344 ワード

この例では、ThinkPHPでajaxを使用してjsonデータを受信する方法について説明する.皆さんの参考にしてください.具体的な分析は以下の通りです.
ここでThinkPHP+jqueryでajaxを実現し、拡張して、クエリーを書きました.フロントコードは以下の通りです.
まずjquery.jsを導入する必要があります.主なコードは次のとおりです.

   function ajax(id,pic){ 
  
    // ThinkPHP JavaScript ThinkPHP , 。
var URL='__URL__';
        $.ajax({
            url: URL+'/returnAjax/id/'+id,// URL
            type: 'GET',//
            dataType: 'text',// , PHP echo , text
            timeout: 1000,//
            error: function(){ // ,
                alert('Error loading XML document');
            },
            success: function(data){
                //alert(data);// ,
                writeHtml(data,pic);
            }
        });
}
function writeHtml(data,pic){
    var product = eval('(' + data + ')'); // json.js json  
    //alert($("#cate_pic").attr("src"));
    $("#cate_pic").attr("src","../images/"+pic);
    $("#product_pic").attr("src","../Attachments/product/"+product.attachpath+"/"+product.attachthumb);
    $("#product_subject").html(product.subject);
    $("#product_content").html(product.content);
}
Product.class.phpでecho出力を使用し、thinkphpでjson_Encode()メソッドは、オブジェクトを自動的にjsonフォーマットに変換します.

   public function returnAjax(){  
  
        $id = $_GET['id']; 
        $Product=D('Product')->where('id='.$id)->find(); 
        // json  
        echo json_encode($Product); 
//print_r(json_encode($Product)); 
}
返されるデータのフォーマットは次のとおりです.

      
  
{
    "id":"9",
    "userid":"1",
    "cid":"10",
    "cid":"10",
    "subject":"1111",
    "color":"",
    "spec":"",
    "size":"",
    "keywords":"",
    "content":"

1111

",
    "meno":"1111",
    "attachpath":"200903",
    "attachment":"49d1d86e68d31.png",
    "attachthumb":"49d1d86e68d31_thumb.png"
}
thinkPHPに関する詳細については、「ThinkPHP入門チュートリアル」、「thinkPHPテンプレート操作テクニック総括」、「ThinkPHP常用方法総括」、「smartyテンプレート入門基礎チュートリアル」、「PHPテンプレート技術総括」を参照してください.
PS:json操作について、ここではいくつかの実用的なjsonオンラインツールをお勧めします.
オンラインJSONコード検査、検査、美化、フォーマットツール:http://tools.jb51.net/code/json
JSONオンラインフォーマットツール:http://tools.jb51.net/code/jsonformat
オンラインXML/JSON相互変換ツール:http://tools.jb51.net/code/xmljson
jsonコードオンラインフォーマット/美化/圧縮/編集/変換ツール:http://tools.jb51.net/code/jsoncodeformat
オンラインjson圧縮/エスケープツール:
http://tools.jb51.net/code/json_yasuo_trans
C言語スタイル/HTML/CSS/jsonコードフォーマット美化ツール:http://tools.jb51.net/code/ccode_html_css_Json
本論文で述べたいのですが、ThinkPHPフレームに基づくPHPプログラムの設計に役立ちます.