DWZ+ThinkPHP开发时遇到的问题分析
author:一佰互联 2019-04-26   click:152

本文实例分析了DWZ+ThinkPHP开发时遇到的问题。分享给大家供大家参考,具体如下:

目前我用的 thinkphp 版本是  3.1.3

J-UI  dwz 版本好像是 1.4

当我在项目开发的过程中 遇到了这么的一个问题,当我我在后台执行ajax操作的时候,success,error不能成功的返回提示的信息,而是返回object object这样的一条错误提示。

研究了很久发现是版本的问题,新改版的ThinkPHP对DWZ中的Ajax技术中的一点不符合版本的问题

所以我就 更改  Action.class.php 中 ajaxReturn函数 为

protected function ajaxReturn($data,$type="") {    if(func_num_args()>2) {// 兼容3.0之前用法      $args      =  func_get_args();      array_shift($args);      $info      =  array();      $info["data"]  =  $data;      $info["info"]  =  array_shift($args);      $info["status"] =  array_shift($args);      $data      =  $info;      $type      =  $args?array_shift($args):"";    }    //    //较原版增加部分--    $data["statusCode"] = 1; //    $data["navTabId"] = $_REQUEST["navTabId"];//    $data["rel"] = $_REQUEST["rel"]; //    $data["callbackType"] = $_REQUEST["callbackType"]; //    $data["forwardUrl"] = $_REQUEST["forwardUrl"]; //    $data["confirmMsg"] = $_REQUEST["confirmMsg"];//    $data["message"] = $data["info"]; //840206883@qq.com    //较原版增加部分--    //    if(empty($type)) $type =  C("DEFAULT_AJAX_RETURN");    switch (strtoupper($type)){      case "JSON" :        // 返回JSON数据格式到客户端 包含状态信息        header("Content-Type:application/json; charset=utf-8");        exit(json_encode($data));      case "XML" :        // 返回xml格式数据        header("Content-Type:text/xml; charset=utf-8");        exit(xml_encode($data));      case "JSONP":        // 返回JSON数据格式到客户端 包含状态信息        header("Content-Type:application/json; charset=utf-8");        $handler =  isset($_GET[C("VAR_JSONP_HANDLER")]) ? $_GET[C("VAR_JSONP_HANDLER")] : C("DEFAULT_JSONP_HANDLER");        exit($handler."(".json_encode($data).");");      case "EVAL" :        // 返回可执行的js脚本        header("Content-Type:text/html; charset=utf-8");        exit($data);      default   :        // 用于扩展其他返回格式数据        tag("ajax_return",$data);    }}

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》、《smarty模板入门基础教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。