:::

4-4-1 建立「我的報名紀錄」物件方法

您沒有觀看影片的權限

您沒有觀看影片的權限

請先登入,登入後,確認您的權限後,即可觀看影片。

  1. 之前我們加入了這樣的流程
    switch ($op) {
        default:
            Tad_signup_data::my($uid);
            $op = 'tad_signup_data_my';
            break;
    }

     

  2. 所以,要至 class\Tad_signup_data.php 新增 my() 方法
    // 查詢某人的報名紀錄
    public static function my($uid)
    {
        global $xoopsTpl, $xoopsUser;
    
        $my_signup = self::get_all(null, $uid);
        $xoopsTpl->assign('my_signup', $my_signup);
        BootstrapTable::render();
    }

    由於有用到 BootstrapTable,所以前面加入

    use XoopsModules\Tadtools\BootstrapTable;

     

  3. 我們統一呼叫 get_all() 來取得資料,不過現在條件不同,所以新增一個參數,以便可以針對 uid 來取資料 影片中資料庫大小寫不正確,一律改為小寫 prefix("tad_signup_data")
    //取得所有資料陣列
    public static function get_all($action_id = '', $uid = '', $auto_key = false)
    {
        global $xoopsDB, $xoopsUser;
        $myts = \MyTextSanitizer::getInstance();
    
        if ($action_id) {
            $sql = "select * from `" . $xoopsDB->prefix("tad_signup_data") . "` where `action_id`='$action_id' order by `signup_date`";
        } else {
            if (!$_SESSION['tad_signup_adm'] or !$uid) {
                $uid = $xoopsUser ? $xoopsUser->uid() : 0;
            }
            $sql = "select * from `" . $xoopsDB->prefix("tad_signup_data") . "` where `uid`='$uid' order by `signup_date`";
        }
    
        $result = $xoopsDB->query($sql) or Utility::web_error($sql, __FILE__, __LINE__);
        $data_arr = [];
        $TadDataCenter = new TadDataCenter('tad_signup');
        while ($data = $xoopsDB->fetchArray($result)) {
            $TadDataCenter->set_col('id', $data['id']);
            $data['tdc'] = $TadDataCenter->getData();
    
            if ($_SESSION['api_mode'] or $auto_key) {
                $data_arr[] = $data;
            } else {
                $data_arr[$data['id']] = $data;
            }
        }
        return $data_arr;
    }

     

  4. 因為有修改 get_all(),所以必須跨檔搜尋一下,看哪裡有用到 get_all() 的也要修改一下參數,如:class\Tad_signup_actions.php 中的 show()就要改一下:
    $signup = Tad_signup_data::get_all($id, null, true);

     

link to https://github.com/tadlearn/tad_signup/commit/dd9fee2e892b3bafcdeb0e6ba9dfca51b2ade463 \


:::

搜尋

QR Code 區塊

https%3A%2F%2Fwww.tad0616.net%2Fmodules%2Ftad_book3%2Fpage.php%3Ftbsn%3D48%26tbdsn%3D1686

書籍目錄

展開 | 闔起

線上使用者

48人線上 (13人在瀏覽線上書籍)

會員: 0

訪客: 48

更多…