返回旧版| 微信建站| 建站之家论坛| 我要建站 | 建站学习 | 加入收藏
PHPCMS当前位置:首页 > cms教程 > 综合cms > PHPCMS > 正文

phpcms简单的api接口开发

发布时间:2017-08-28 22:44:24   来源:   点击:
最近自己开发了一套crm系统,想着如果将来能卖出去,能不能再界面动态调用自己网站的推荐信息,算是一种广告吧!于是尝试着用phpcms开发一个简单的api接口


phpcms v9的api接口都存放到api文件夹下的,访问路径为http://www.XXX.com/api.php?op=count&.....,其他的op=count为你的具体的api文件,所以我根据这个规律开始开发!

(1)第一步:在网站的api文件夹下创建文件demo.php,代码:
  1. defined('IN_PHPCMS') or exit('No permission resources.');  
  2.  
  3. if($_GET['catid'] && $_GET['num']) { 
  4.     $catid = intval($_GET['catid']); //用来接收请求的栏目id
  5.     $num = intval($_GET['num']); //用来接收获取数量
  6. }    
  7.  
  8. $modelid =1; //设置你要调用栏目的模型id
  9. $db = pc_base::load_model('content_model');//引入content模型 
  10. $db->set_model($modelid); //设置模型id,如果是其他非文章模型可以不需要设置这个
  11.  
  12. $arr = $db->select(array('catid' => $catid),'*',$num); /调用所请求栏目id下的文章
  13. $r = json_encode($arr);  //转换为json类型
  14.  
  15. //jsonp请求的固定写法,可以解决跨域问题,引入callback回调函数 
  16. echo $_GET['jsoncallback'] . "(".$r.")";
  17. ?> 
(2)在请求端页面采用ajax发送请求

  1. <script> 
  2.        $(function(){ 
  3.            $.ajax({ 
  4.                url:'http://www.XXX.com/api.php?op=demo&catid=28&num=10'
  5.                dataType:'jsonp', //jsonp类型
  6.                jsonp:"jsoncallback", //回调
  7.                type:'get'
  8.                success:function(data){ 
  9.                    var data=eval(data); //转化为json对象
  10.                    $.each(data, function(index, p){ 
  11.                        html  = "
  12. "
  13.                        html += "+ p.url +"' target='_blank'>"+ p.title +"";  
  14.                        html += "
  15. "
  16.                        $("#test").append(html); //追加到id=test的div里边
  17.                    }) 
  18.                  }, 
  19.                error : function() {   
  20.                    console.log('fail');   
  21.                 }   
  22.            }); 
  23.        }); 
  24.     </script> 
ok大功告成!这样就可有跨域调用自己的网站里边的东西了!
效果浏览如图:



相关栏目
热门文章
最新图文
评论排行
版权所有:郑州腾石网络科技有限公司 备案信息:豫ICP备18019117号
站长QQ:2863868475 业务合作咨询:15137100750(同微信)
本站所有投放的广告是有其他网站提供,不代表本站立场,同时网站首页广告位对外出租详情咨询本站站长!同时欢迎广大站长加入个人建站团队
  • 建站客服
  • CMS仿站
  • CMS学习
  • 技术交流群:336572814