国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > CMS > 織夢DEDE > 正文

dede問答平臺開發筆記

2024-07-12 08:47:07
字體:
來源:轉載
供稿:網友
dedecms有個問答平臺的模塊,安裝該模塊之后會在根目錄下面生成一個ask的目錄,相關的代碼和模板都在里面了,當然安裝過程中還在數據庫中添加了和問答相關的數據。

其實模塊是和系統其它部分比較獨立的程序集合,我發現這個問答模塊的代碼結構和dede其它地方的代碼結構差別比較大,可能是程序員不同吧,問答模塊基本上是基于mvc設計模式的,至少代碼看上去和很多mvc框架相似,而且在問答模塊里面,采用的模板也不再是dede文章模板的標簽調用形式,問答模塊里面可以很隨意的嵌套php語句。盡管有些地方也能看到dede標簽,但是我初步感覺,這個模板已經不再是dede的模板了,從后臺和前臺分離的角度來說,這不是好事,但是就個人來說我喜歡能使用php代碼的模板。

好了今天我想給問答平臺添加一個在首頁顯示所有問題的功能(默認是沒有的),很容易找到了ask/control/index.php文件,下面我將關鍵代碼貼出來:

       //待解決的問題
        $notoks = $this->question->get_all('status=0','ORDER BY disorder DESC, dateline DESC',$row);
    
        //新解決的問題
        $solutions = $this->question->get_all('status=1','ORDER BY solvetime DESC',$row);
  
     //高分懸賞問題
        $rewards = $this->question->get_all('status=0','ORDER BY reward DESC',$row);

看到了吧,這里就是查詢不同條件下問題的列表,get_all()函數里面的參數是設置查找問題的條件status=1表示已解決問題,status=0表示未解決問題,如果我不要任何條件將這里設置成空 是不是就可以得到所有問題了呢,于是我將代碼改成:

       //待解決的問題
        $notoks = $this->question->get_all('status=0','ORDER BY disorder DESC, dateline DESC',$row);
       
        //所有問題
        $allqus = $this->question->get_all('','ORDER BY disorder DESC, dateline DESC',$row);
 
              
        //新解決的問題
        $solutions = $this->question->get_all('status=1','ORDER BY solvetime DESC',$row);
  
  //高分懸賞問題
        $rewards = $this->question->get_all('status=0','ORDER BY reward DESC',$row);

實驗證明我錯了,問答模塊的代碼沒我想的那么智能化,找了很久終于發現原因所在。原來在模型mquestion里面,get_all()不管條件有沒有指,都給sql語句加了個where,

$query = "SELECT $field FROM `dede_ask` WHERE $wheresql $orderby limit 0,$row";

這里的$wheresql我設置成了空,結果導致sql語句不全了,所以出錯。改成

            if($wheresql=='')
              $query = "SELECT $field FROM `dede_ask`  $orderby limit 0,$row";
            else
             $query = "SELECT $field FROM`dede_ask` WHERE $wheresql $orderby limit 0,$row";
現在就可以了,后臺代碼已經改完,現在改前臺。

增加
              <?php

             if($allqus!= ""){
              foreach($allqus as $key => $v){
             ?>
            這里是html代碼,參照待解決問題

            <?php  }} ?>

就講到這里吧
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 石狮市| 延边| 延安市| 邮箱| 新泰市| 阆中市| 台江县| 家居| 江城| 蕉岭县| 吉林省| 榆林市| 芒康县| 稷山县| 连江县| 米林县| 巴林左旗| 桦南县| 玛沁县| 蕲春县| 中宁县| 榆中县| 芒康县| 安岳县| 平顺县| 曲水县| 河西区| 滁州市| 通河县| 老河口市| 平安县| 开封市| 丽水市| 都江堰市| 东方市| 拜城县| 湄潭县| 黄龙县| 工布江达县| 福建省| 保靖县|