Discuz怎么反回的简单介绍

分类:建站教程 Discuz教程 时间:2025-10-23 09:57 浏览:0 评论:0
0

当前目录列表:

  • 1、如何编写Discuz论坛返回JSON数据的接口
  • 2、dz删除tag如何返回404
  • 3、Discuz中的ajaxget函数怎么获取从插件返回的值
  • 4、Discuz 模板安装提示:"数据类型错误,请返回",怎么解决?
  • 如何编写Discuz论坛返回JSON数据的接口

    ?php header,'Content-type:text/json;charset=utf-8';

    define,'APPTYPEID', 5;

    define,'CURSCRIPT', 'userapp';

    require_once './source/class/class_core.php';

    $Discuz = Discuz_core::instance,;

    $Discuz - cachelist = $cachelist;

    $Discuz - init,;

    try {

    if ,$_GET["type"] == "wdnew" {

    $query = DB::query,"SELECT * FROM " . DB::table('forum_thread' . " WHERE fid=49 ORDER BY dateline ASC limit 10");

    $jsonstr = "{state:10000,data:[";

    while ,$soft = DB::fetch($query) {

    $newlist .= "{\"id\":" . $soft['tid'] . ",\"title\":\"" . $soft['subject'] . "\"},";

    }

    $jsonstr = $jsonstr . rtrim,$newlist, ',' . "]}";

    echo $jsonstr;

    } else if ,$_GET["type"] == "getForumClass" {

    $query = DB::query,"SELECT * FROM " . DB::table('forum_forum' . " WHERE status=1 ORDER BY fid ASC");

    $jsonstr = "{state:10000,data:[";

    while ,$soft = DB::fetch($query) {

    $newlist .= "{\"id\":" . $soft['fid'] . ",\"fup\":" . $soft['fup'] . ",\"name\":\"" . $soft['name'] . "\",\"px\":" . $soft['displayorder'] . "},";

    }

    $jsonstr = $jsonstr . rtrim,$newlist, ',' . "]}";

    echo $jsonstr;

    } else if ,$_GET["type"] == "getForumInfo" {

    $fid = $_GET["fid"];

    $dateline_min = $_GET["dateline_min"];

    $dateline_max = $_GET["dateline_max"];

    $datacount = DB::result_first,"SELECT COUNT(* FROM " . DB::table,'forum_thread' . " WHERE fid=".$fid." and closed=0 and dateline=".$dateline_min." and dateline=".$dateline_max);

    if,$datacount==0{

    $jsonstr = "{state:10001,data:[]}";

    }else{

    $query = DB::query,"SELECT * FROM " . DB::table('forum_thread' . " WHERE fid=".$fid." and closed=0 and dateline=".$dateline_min." and dateline=".$dateline_max);

    $jsonstr = "{state:10000,data:[";

    while ,$soft = DB::fetch($query) {

    $typename = DB::result_first,"SELECT name FROM " . DB::table('forum_threadclass' . " WHERE typeid=".$soft['typeid'] );

    $newlist .= "{\"id\":" . $soft['tid'] . ",\"title\":\"[".$typename."]" . $soft['subject'] . "\",\"price\":\"" . $soft['price'] . "\",\"views\":\"" . $soft['views'] . "\",\"dateline\":\"" . $soft['dateline'] . "\"},";

    }

    $jsonstr = $jsonstr . rtrim,$newlist, ',' . "]}";

    }

    echo $jsonstr;

    }else {

    echo "{state:0,data:[]}";

    }

    } catch,Exception $e {

    echo "{state:0,data:[]}";

    }

    ?

    discuz怎么反回的简单介绍 第1张

    dz删除tag如何返回404

    Discuz帖子被删除后,再打开会提示“帖子被删除或者在审核”,这样设置后会把这个页面直接跳转到404页面。

    步骤一:查找source\module\forum\forum_viewthread.php

    搜索这个代码

    showmessage,'thread_nonexistence';

    步骤二:如果你的主机是win系统,把上面的代码替换为

    header,'HTTP/1.1 404 Not Found';

    header,'status: 404 Not Found';

    include,'404.html';

    exit,;

    如果你的主机是linux系统,把上面的代码替换为

    header,'HTTP/1.1 404 Not Found';

    header,'status: 404 Not Found';

    exit,;

    这样就会跳转到你设置好的404页面了

    Discuz中的ajaxget函数怎么获取从插件返回的值

    插件的内容可以通过plugin.php这个文件返回,ajax要和后台的文件一起使用的,在新插件内核中,通过 plugin.php 方式访问的插件可直接通过 plugin.php?id=***:yyy 方式调用而无需再在后台定义为普通脚本模块,只要 source/plugin/***/yyy.inc.php 文件存在即可。如果 *** 和 yyy 同名,可直接通过 plugin.php?id=*** 方式访问。如果是utf8编可以直接输出中文,如果是gbk不是用json_encode编码一下。。另外,如果你想为自己的论坛短时间内发布大量优质内容,看上去人气旺,内容好,可以在应用中心搜索“dn123”获取采集插件。

    Discuz 模板安装提示:"数据类型错误,请返回",怎么解决?

    很多同学在安装Discuz插件、Discuz模板或disucz分类信息的时候会出现数据类型错误,请返回的问题,下面我们来分析下为什么Discuz! X会出现“数据类型错误,请返回”的错误。

    分析原理:我们今天用安装模板提示“数据类型错误,请返回”的错误来分析,打开导入风格模板的代码文件:/source/function/function_importdata.php,查看其中的函数 import_styles,,其中两处调用getimportdata的参数都是固定的getimportdata,'Discuz! Style',在/source/function/function_admincp.php中找到getimportdata函数发现他会将第一个参数也就是'Discuz! Style',与模板目录下xml文件中id为Title的item值进行比较,如果不同就会提示错误“数据类型错误,请返回”,知道原理了,下面就有解决方案了。

    1、打开模板目录下的 XML 文件,找到ID为Title的item项,将其固定为如下写法就OK了。

    item id="Title"![CDATA[Discuz! Style]]/item

    复制代码

    2、一些网站在搬家后出现“数据类型错误,请返回”,很可能是服务器上PHP.INI 的 zend.ze1_compatibility_mode问题,把值修改为 OFF。

    可上传一个test.php 里面写?php echo ini_get,‘zend.ze1_compatibility_mode’;?,输出0来判断配置是否正确。

    解决方法:查找 php.ini 里的如下项并将其设置为off,然后重启 Web 服务 ,IIS或Apache

    zend.ze1_compatibility_mode = Off

    复制代码

    3、目录权限存在问题,在应用中心安装插件或模板都需要对应目录有可写权限的,否则安装一样会出错无法识别数据错误。

    解决方法:检查data目录权限及template和source\plugin目录权限为777或可读可写。

    这样基本可以解决问题。

    参考文档

    1. 本站所有资源来源于用户上传或网络,仅作为参考研究使用,如有侵权请邮件联系站长!
    2. 本站积分货币获取途径以及用途的解读,想在本站混的好,请务必认真阅读!
    3. 本站强烈打击盗版/破解等有损他人权益和违法作为,请各位会员支持正版!
    4. 建站教程 > Discuz怎么反回的简单介绍

    用户评论