dedecmsjson.php,dedecms织梦json数据调用标签及其例子

在织梦全局标签里面,有一个一般人都用不到的标签json标签,它跟其它标签一样,也是在织梦模板中调用数据的。在了解json标签前,先看看什么是json?json是一种数据格式,但它并不是一种语言,json独立于如c,php,javerscrip等语言的数据格式。

一般用在数据交互的功能里面,例如,动态从数据库取出数据,从运程取出过来数据,都可以用到json,json与其它格式的数据相比,体积小而轻,易于保存传输,跨平台,跨语言等优点,被各种程序语言使用。织梦里面不仅有json标签,还有很多的对于json数据的应用。

织梦json标签调用方法:

{dede:json url='http://yoursite/json.php' cache=300}

[field:id/]-[field:title/]

{/dede:json}

这个标签调用例子在织梦手册里已经给我们提供了,url是一个远程json接口地址,这个接口文件json.php代码 里面,最后的返回必须是把数据通过json_encode($feeds)系统函数,进行json编码后,通过echo或print()函数来打印出来,这二点是必须的,然后,在前台我们就可以通过$.ajax()或$.getjson()来获取数据。

织梦系统给我们提供了一个json类,在include/json.class.php文件里面,也就是是说,我们对在php文件里面,转换成json编码,就有了二种方法:

1.直接用php系统给我们提供的系统函数,json_encode(),我建立大家用这个,即简单又省事,既然,php系统给我们提供了,我们可以不用织梦系统提供的。

2.就是用织梦系统提供的,encode(),在使用前,首先引入json.class.php,即:

require_once(DEDEINC.'/json.class.php');

$json = new Services_JSON(SERVICES_JSON_SUPPRESS_ERRORS);

echo $json->encode($reval);

$reval这个变量是我们从数据库或其它地方得到的,一般是一个二维数组,例如下:

Array (

[0] => Array ( [id] => 95 [title] => 原图设计)

[1] => Array ( [id] => 113 [title] => ssssssssssss)

[2] => Array ( [id] => 111 [title] => hjhj )

[3] => Array ( [id] => 110 [title] => ssssssssssss)

)

经echo 以后,显示的内容如下所示。

[

{"id":"95","title":"\u539f\u521b"},

{"id":"113","title":"ssssssssssss"},

{"id":"111","title":"hjhj"},

{"id":"110","title":"ssssssssssss"}

]

这是经过encode()或用json_encode()后,显示的内容。即,用中括号括起来的,几个json数据,这个数据回给请求的$.ajax()或$.getjson(),并由其对这个数据进行处理,显示我们相要的结果。

实际上,织梦系统里面就有关于json的应用,进入到织梦系统会员首页(你的域名/member),找到如下图所示。

8a712d01336feb0fc6ccba955b50fd33.png

这三个选择卡,就是对json的经典应用,当然,这里不用标签{dede:json}{/dede:json},而是用的是$.ajax,来实现动态,从数据库中获取数据,并显示在这个位置。如果把这个小小的功能看明白话,需要,你会jquery。

这个功能用到的文件有:member/templets/index.htm ; member/templets/js/feed.js; member/feed.php。现在我们就对这个进行加功改造,实现用织梦标签调用。

打开文件feed.php,把CheckRank(0,0);注释掉,即前面加双杠 //CheckRank(0,0);因为这句是检测,会员权限,我们不用所以去掉。

现在我们就可以写json标签:

{dede:json url='http://127.0.0.1/member/feed.php' cache=0}

[field:id/]-[field:title/]

{/dede:json}

可以放到自己模板里,也可以,到织梦后缀,全局检测去测试一下吧。效果如下图所示。

79006a7e39cfda67c08e16d166cefb9a.png

本教程,只是对json标签,以及织梦系统里面的一个具体的实例进行简单,介绍,如果想真正了解,通过ajax调用json数据,那么,请先精通jquery和ajax,才能过织梦这个例子有一个深刻了解。

(责任编辑:最模板)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值