:::
所有書籍
「[1102] PHP全端開發」目錄
MarkDown
8-5-1 加入內容到word檔
1. 開發環境與XOOPS模組結構
1-1 第一節 完成開發環境設定
1-1-1 開發環境需求
1-1-2 UniFormServer 常用功能重要目錄介紹
1-1-3 讓 UniForm Server 可以寄信
1-1-4 初步認識XOOPS
1-2 第二節 安裝開發工具
1-2-1 安裝 Visual Studio Code 文字編輯器
1-2-2 安裝 Visual Studio Code 的相關套件
1-2-3 新增程式碼片段
1-2-4 VSCode 常用快捷鍵
1-3 第三節 建立模組基本架構
1-3-1 下載 XOOPS250ModuleConversionFiles
1-3-2 xoops_version.php 基本設定
1-3-3 將專案發布至GitHub
1-4 第四節 完成圖示及資料表設計
1-4-1 用inkscape設計logo
1-4-2 常用資料庫的欄位類型
1-4-3 建立資料表
1-5 第五節 了解類別(class)架構及邏輯
1-5-1 修改預先載入設定 preloads\core.php
1-5-2 修改用來操控資料表的類別(class)
1-5-3 模組物件.php
1-5-4 PHP簡易的物件導向觀念
1-6 第五節 前台相關檔案
1-6-1 前後臺的基本樣板檔
1-6-2 前台頁面的基本架構
1-6-3 認識模組中的 header.php
1-6-4 認識 interface_menu.php
1-6-5 $xoopsUser 使用者物件
2. 製作前台活動管理功能
2-1 第一節 完成模組首頁預設動作
2-1-1 讓畫面顯示新增活動按鈕
2-1-2 安裝模組
2-2 第二節 各種內建的常用物件
2-2-1 關於 Xmf\Request 變數過濾物件
2-2-2 關於 $xoopsDB 資料庫物件
2-2-3 關於 $xoopsTpl 樣板物件
2-2-4 關於各種XOOPS會用到超級全域變數,如 $GLOBALS['xoops']
2-3 第三節 建立活動的表單
2-3-1 解析建立活動表單的方法
2-3-2 建立活動表單樣板檔
2-4 第四節 完成新增活動
2-4-1 表單初步權限判斷及設定預設值
2-4-2 寫入活動到資料庫中
2-4-3 關於 MyTextSanitizer 資料過濾物件
2-4-4 eguide表單語法
2-5 第五節 顯示單一活動內容
2-5-1 完成顯示活動
2-5-2 完成顯示單一活動的樣板
2-5-3 關於 css/module.css
2-6 第六節 修改活動功能
2-6-1 活動編輯表單加入隱藏編號
2-6-2 完成活動修改功能
3. 製作前台活動報名功能(上)
3-1 第一節 所有活動列表
3-1-1 取得所有活動資料
3-1-2 完成顯示活動列表畫面
3-2 第二節 加入刪除活動功能
3-2-1 加入刪除功能
3-2-2 刪除套用 SweetAlert
3-3 第三節 報名的架構
3-3-1 新增活動報名的資料表
3-3-2 新增 TadDataCenter 用的資料表
3-3-3 建立 Tad_signup_data 紀錄報名資料的類別檔
3-4 第四節 打造報名功能
3-4-1 新增報名表單流程
3-4-2 建立報名表的初步畫面
3-4-3 模組開發除錯方式
3-4-4 修改活動報名的 create()
3-4-5 在報名表加入活動相關資訊
3-5 第五節 完成儲存報名功能
3-5-1 TadDataCenter 常用方法
3-5-2 用 TadDataCenter 產生報名表的完整欄位
3-5-3 寫入報名資訊到資料庫
3-6 第六節 初步完成報名功能
3-6-1 取得報名資訊
3-6-2 顯示報名資訊
3-6-3 修改報名資料的流程
3-6-4 完成更新報名資料功能
3-6-5 完成取消報名功能
3-6-6 加入刪除確認功能
4. 製作前台活動報名功能(下)
4-1 第一節 顯示已報名清單
4-1-1 取得所有報名的完整資料
4-1-2 在顯示單一活動頁面顯示所有報名者
4-1-3 套用BootstrapTable強化表格
4-2 第二節 針對訪客來調整顯示內容
4-2-1 在活動列表顯示報名人數
4-2-2 訪客的能看到的東西
4-3 第三節 調整一般登入者能看到的畫面
4-3-1 登入的使用者能看到的東西
4-3-2 新增前台頁面:我的報名紀錄
4-4 第四節 自行建立物件方法及樣板
4-4-1 建立「我的報名紀錄」物件方法
4-4-2 建立「我的報名紀錄」樣板
4-4-3 讓報名者可以觀看自己的紀錄
4-5 第五節 完成各種活動管理功能
4-5-1 完成錄取功能
4-5-2 加入複製活動功能
4-6 第六節 更安全、更彈性的 get() 取得資料
4-6-1 加強資料保護
4-6-2 讓活動的 get() 可以根據情況過濾
5. 寄信、後台、權限、搜尋、偏好設定等機制用法
5-1 第一節 寄發各種通知信
5-1-1 在流程加入寄發報名通知信
5-1-2 寄信功能
5-2 第二節 針對不同狀況寄發通知信
5-2-1 產生通知信內容
5-2-2 製作HTML通知信內容
5-2-3 錄取狀態改變時的通知
5-3 第三節 新增後台界面
5-3-1 建立後台頁面 main.php
5-3-2 讓後台可以看到過期或關閉活動
5-3-3 修改樣板讓前後臺連結都適用
5-4 第四節 在後台進行權限設定
5-4-1 在後台建立權限設定頁
5-4-2 套用細部權限
5-4-3 修正可發布活動者可看到的東西
5-5 第五節 新增模組偏好設定
5-5-1 加入偏好設定
5-5-2 加入分頁工具
5-5-3 讓無法報名的活動也能顯示出來
5-6 第六節 加入搜尋功能
5-6-1 完成搜尋功能
5-6-2 套用所見即所得編輯器
6. 模組區塊及自動功能之應用
6-1 第一節 建立「可報名活動一覽」區塊
6-1-1 加入「可報名活動一覽」區塊的設定
6-1-2 建立區塊的php檔
6-1-3 建立區塊的樣板檔
6-2 第二節 加入區塊設定值
6-2-1 編輯區塊的設定函式
6-2-2 套用區塊設定值
6-2-3 勿用分頁功能來限制呈現數
6-3 第三節 可選擇活動的區塊設定
6-3-1 建立「活動報名焦點」區塊
6-3-2 建立「活動報名焦點」區塊的樣板
6-4 第四節 模組安裝時自動建立群組並完成權限設定
6-4-1 安裝模組時的自動功能
6-4-2 安裝模組時自動建立群組
6-4-3 安裝模組時自動完成群組權限設定
6-4-4 移除模組時的自動功能
6-5 第五節 模組更新時自動修改資料庫架構
6-5-1 更新模組時的自動功能
6-5-2 更新模組時的自動修改資料庫欄位
6-5-3 加入候補欄位後的基本異動
6-5-4 讓候補功能生效
6-6 第六節 用TadDataCenter 取代資料表異動
6-6-1 用 TadDataCenter 來註記候補
6-6-2 用 TadUpFiles 上傳附檔
6-6-3 顯示上傳檔案
7. HTML、CSV、Excel的匯出與匯入
7-1 第一節 HTML的匯出
7-1-1 匯出HTML及產生靜態頁面檔
7-2 匯出 CSV 檔
7-2-1 CSV 匯出及轉碼
7-2-2 產生 CSV 完整內容
7-3 第二節 CSV 的匯入
7-3-1 CSV 匯入界面
7-3-2 CSV 匯入後的資料預覽畫面
7-4 完成 CSV 匯入
7-4-1 批次匯入 CSV 報名資料
7-5 第三節 產生 Excel 檔
7-5-1 產生 Excel 檔
7-5-2 Excel 常用方法
7-5-3 產生 Excel 匯入檔
7-5-4 產生完整的 Excel 匯出檔
7-6 第四節 妝點 Excel 及匯入功能
7-6-1 設定 Excel 樣式
7-6-2 設定最適欄位寬度
7-6-3 匯入 Excel 界面
7-6-4 讀取匯入的 Excel 資料
7-6-5 產生 Excel 預覽界面並批次匯入資料
8. PDF、Word文件輸出
8-1 第一節 PDF簡易製作法
8-1-1 無痛產生PDF
8-1-2 TCPDF 基本設定
8-1-3 用 HTML 快速產生 PDF
8-2 第二節 精雕細琢產生 PDF
8-2-1 手動刻畫PDF檔內容的幾種方法
8-2-2 手刻簽到表
8-2-3 將報名欄位做成類別方法
8-3 第三節 動態產生PDF
8-3-1 用雙框挑選器來設定PDF簽到表
8-3-2 寫入 PDF 設定
8-3-3 產出套用設定的PDF檔
8-3-4 更換PDF字型為全字庫
8-4 第四節 產生 docx 檔(word)
8-4-1 產生docx或odt檔案的基本架構
8-4-2 產生各種格式的簽到表
8-5 第五節 產生 word 檔內容
8-5-1 加入內容到word檔
8-5-2 插入表格到word中
8-5-3 產生 OpenDocument(odt)檔案
8-5-4 優化操作流程
8-6 第六節 利用樣板產生 word 檔
8-6-1 製作套用樣板檔
8-6-2 將值套用到樣板檔
8-6-3 將值套用到樣板的表格中
9. API製作、操作優化並製成多國語系模組釋出
9-1 第一節 產生 API
9-1-1 建立專屬的 API 類別
9-1-2 建立 API 介接入口
9-1-3 用 API 取得所有活動
9-2 第二節 API認證及接收API
9-2-1 限制登入後才能取得資料
9-2-2 有權限的群組才能取得資料
9-2-3 接收 API 並產生頁面
9-3 第三節 做成多國語系模組
9-3-1 關於XOOPS的語系
9-3-2 建立後台語系 admin.php
9-3-2-1 admin\main.php 套用語系
9-3-2-2 admin\power.php 套用語系
9-3-3 建立設定檔語系 modinfo.php
9-3-3-1 admin\menu.php 套用語系
9-3-3-2 xoops_version.php 套用語系
9-3-4 建立區塊語系 blocks.php
9-3-4-1 blocks\action_list.php 套用語系
9-3-4-2 blocks\action_signup.php 套用語系
9-3-4-3 templates\blocks\action_list.tpl 套用語系
9-3-4-4 templates\blocks\action_signup.tpl 套用語系
9-4 第四節 建立前台語系
9-4-1 建立主要語系 main.php
9-4-2 修改所有前台PHP檔
9-4-2-1 class\Tad_signup_actions.php 套用語系
9-4-2-2 class\Tad_signup_api.php 套用語系
9-4-2-3 class\Tad_signup_data.php 套用語系
9-4-2-4 include\onInstall.php 套用語系
9-4-2-5 include\onUpdate.php 套用語系
9-4-2-6 csv.php 套用語系
9-4-2-7 excel.php 套用語系
9-4-2-8 html.php 套用語系
9-4-2-9 index.php 套用語系
9-4-2-10 interface_menu.php 套用語系
9-4-2-11 odt_signup.php 套用語系
9-4-2-12 pdf_signup.php 套用語系
9-4-2-13 pdf.php 套用語系
9-4-2-14 word_signup.php 套用語系
9-4-2-15 word.php 套用語系
9-5 第五節 製作樣及英文語系
9-5-1 修改所有前台的樣板檔
9-5-1-1 templates\op_tad_signup_actions_create.tpl 套用語系
9-5-1-2 templates\op_tad_signup_actions_index.tpl 套用語系
9-5-1-3 templates\op_tad_signup_actions_show.tpl 套用語系
9-5-1-4 templates\op_tad_signup_data_create.tpl 套用語系
9-5-1-5 templates\op_tad_signup_data_my.tpl 套用語系
9-5-1-6 templates\op_tad_signup_data_pdf_setup.tpl 套用語系
9-5-1-7 templates\op_tad_signup_data_preview_csv.tpl 套用語系
9-5-1-8 templates\op_tad_signup_data_preview_excel.tpl 套用語系
9-5-1-9 templates\op_tad_signup_data_show.tpl 套用語系
9-5-2 建立英文語系
9-6 第六節 打包模組、釋出模組
9-6-1 編寫說明檔
9-6-2 修改 xoops_version.php 的版號及發布日期
9-6-3 利用 WinMerge 來過濾 git 檔並比較和舊版差異
9-6-4 反安裝模組,並重裝模組
9-6-5 將模組發布至 https://campus-xoops.tn.edu.tw/
10. 課程補充
10-1 新增XOOPS會員
10-2 在 interface_menu.php 另外判斷群組權限的用法?
8-5-3 產生 OpenDocument(odt)檔案
\[1102\] PHP全端開發 ================ 1. 表格常用樣式設定 ```php // 表格樣式設定 $tableStyle = ['borderColor' => '000000', 'borderSize' => 6, 'cellMargin' => 80]; // 橫列樣式 $rowStyle = ['cantSplit' => true, 'tblHeader' => true]; // 儲存格標題文字樣式設定 $headStyle = ['bold' => true]; // 儲存格內文文字樣式設定 $cellStyle = ['valign' => 'center']; ``` 2. 建立表格 ```php $table = $section->addTable($tableStyle); ``` 3. 建立一個橫列(參數均可省略) ```php $table->addRow($height, $rowStyle); ``` 4. 建立儲存格 ```php $table->addCell($width, $cellStyle)->addText('內容', $fontStyle, $paraStyle); ``` 5. 合併儲存格(套用不同儲存格樣式即可達成) ```php $cellRowSpan = array('vMerge' => 'restart'); //垂直合併 $cellContinue = array('vMerge' => 'continue'); //略過 $cellColSpan = array('gridSpan' => 2); //水平合併 ``` 6. 完成 `word_signup.php` 如: ```php setDefaultFontName('標楷體'); //設定預設字型 $phpWord->setDefaultFontSize(12); //設定預設字型大小 // $header = $section->addHeader(); //頁首 // $footer = $section->addFooter(); //頁尾 // $footer->addPreserveText('{PAGE} / {NUMPAGES}', $fontStyle, $paraStyle); // 標題文字樣式設定 $Title1Style = ['color' => '000000', 'size' => 18, 'bold' => true]; $Title2Style = ['color' => '000000', 'size' => 16, 'bold' => true]; // 內文文字設定 $fontStyle = ['color' => '000000', 'size' => 14, 'bold' => false]; // 置中段落樣式設定 $paraStyle = ['align' => 'center', 'valign' => 'center']; // 靠左段落樣式設定 $left_paraStyle = ['align' => 'left', 'valign' => 'center']; // 靠右段落樣式設定 $right_paraStyle = ['align' => 'right', 'valign' => 'center']; // 表格樣式設定 $tableStyle = ['borderColor' => '000000', 'borderSize' => 6, 'cellMargin' => 80]; // 橫列樣式 $rowStyle = ['cantSplit' => true, 'tblHeader' => true]; // 儲存格標題文字樣式設定 $headStyle = ['bold' => true]; // 儲存格內文段落樣式設定 $cellStyle = ['valign' => 'center']; $phpWord->addTitleStyle(1, $Title1Style, $paraStyle); //設定標題1樣式 $phpWord->addTitleStyle(2, $Title2Style, $paraStyle); //設定標題1樣式 //產生內容 $section = $phpWord->addSection(); $sectionStyle = $section->getStyle(); $sectionStyle->setMarginTop(Converter::cmToTwip(2.5)); $sectionStyle->setMarginLeft(Converter::cmToTwip(2.2)); $sectionStyle->setMarginRight(Converter::cmToTwip(2.2)); $title = "{$action['title']}簽到表"; $section->addTitle($title, 1); //新增標題 $section->addTextBreak(1); $section->addText("活動日期:{$action['action_date']}", $fontStyle, $left_paraStyle); $section->addTextBreak(1); $TadDataCenter = new TadDataCenter('tad_signup'); $TadDataCenter->set_col('pdf_setup_id', $id); $pdf_setup_col = $TadDataCenter->getData('pdf_setup_col', 0); $col_arr = explode(',', $pdf_setup_col); $col_count = count($col_arr); if (empty($col_count)) { $col_count = 1; } $w = 10.6 / $col_count; $table = $section->addTable($tableStyle); $table->addRow(); $table->addCell(Converter::cmToTwip(1.5), $cellStyle)->addText('編號', $fontStyle, $paraStyle); foreach ($col_arr as $col_name) { $table->addCell(Converter::cmToTwip($w), $cellStyle)->addText($col_name, $fontStyle, $paraStyle); } $table->addCell(Converter::cmToTwip(4.5), $cellStyle)->addText('簽名', $fontStyle, $paraStyle); $signup = Tad_signup_data::get_all($action['id'], null, true, true); $i = 1; foreach ($signup as $signup_data) { $table->addRow(); $table->addCell(Converter::cmToTwip(1.5), $cellStyle)->addText($i, $fontStyle, $paraStyle); foreach ($col_arr as $col_name) { $table->addCell(Converter::cmToTwip($w), $cellStyle)->addText(implode('、', $signup_data['tdc'][$col_name]), $fontStyle, $paraStyle); } $table->addCell(Converter::cmToTwip(4.5), $cellStyle)->addText('', $fontStyle, $paraStyle); $i++; } $objWriter = IOFactory::createWriter($phpWord, 'Word2007'); header('Content-Type: application/vnd.ms-word'); header("Content-Disposition: attachment;filename={$title}.docx"); header('Cache-Control: max-age=0'); $objWriter->save('php://output'); ``` [![](https://www.tad0616.net/uploads/tad_book3/image/48/to_github.png)
link to https://github.com/tadlearn/tad\_signup/commit/5257b1d9e2870da77abefd7a9f35d9903be04624 \\
](https://github.com/tadlearn/tad_signup/commit/5257b1d9e2870da77abefd7a9f35d9903be04624)
:::
搜尋
search
進階搜尋
QR Code 區塊
快速登入
所有討論區
「PHP全端開發」線上課程討論區
XOOPS使用討論區
一般研習學員
社大學員專用
路過哈啦區
XOOPS佈景設計
XOOPS模組開發
Tad書籍區
即時留言簿
書籍目錄
展開
|
闔起
線上使用者
466
人線上 (
164
人在瀏覽
線上書籍
)
會員: 0
訪客: 466
更多…
:::
主選單
NTPC OpenID
活動報名
模組控制台
進階區塊管理
站長工具箱(急救版)
網站地圖
Tad Tools 工具包
站長工具箱
行事曆
討論留言
嵌入區塊模組
快速登入
網站計數器
好站連結
最新消息
檔案下載
線上書籍
電子相簿
影音播放
常見問題
萬用表單
友站消息
社大學員
新聞
下載
教材
影音
討論
其他選單
好站連結
行事曆
電子相簿
常見問題
萬用表單
即時留言簿
友站消息
社大學員
登入
登入
帳號
密碼
登入