- 從空白模組,複製開發案子,但模組執行安裝,一直沒有出「自動安裝的功能」
- 結果是「xoops_version.php」
//---模組自動功能---//
// $modversion['onInstall'] = "include/onInstall.php";
// $modversion['onUpdate'] = "include/onUpdate.php";
// $modversion['onUninstall'] = "include/onUninstall.php";
這裡的檔名,沒有對應到,include/ 底下的檔名
已修正 - 若有執行成功,則會出現
2018年3月11日 星期日
沒有執行自動安裝的功能
2018年2月28日 星期三
2018年2月9日 星期五
$xoopsModule模組物件
$xoopsModule模組物件
$xoopsModule->mid() 取得模組代號
$xoopsModule->dirname() 取得模組目錄名稱
$xoopsModule->name() 取得模組名稱
$xoopsModule->getInfo($name=null) 取得模組所有訊息,是個陣列
在這裡你一樣可以用$xoopsModule->getVar('mid')的方式取得存在的相關資料,mid可以換成你想要取得的資料,如
$xoopsModule->getVar('isactive') 判斷模組是否啟用
取得目前的所有模組
$module_handler = & xoops_gethandler('module');
$modules=$module_handler->getList();
根據目錄名稱顯示模組資訊
$module_handler = & xoops_gethandler('module');
$module=$module_handler->getByDirName($dirname);
//判斷是否為管理員
if ($xoopsUser) {
$isAdmin = $xoopsUser->isAdmin($module_id);
}
$xoopsModule->mid() 取得模組代號
$xoopsModule->dirname() 取得模組目錄名稱
$xoopsModule->name() 取得模組名稱
$xoopsModule->getInfo($name=null) 取得模組所有訊息,是個陣列
在這裡你一樣可以用$xoopsModule->getVar('mid')的方式取得存在的相關資料,mid可以換成你想要取得的資料,如
$xoopsModule->getVar('isactive') 判斷模組是否啟用
取得目前的所有模組
$module_handler = & xoops_gethandler('module');
$modules=$module_handler->getList();
根據目錄名稱顯示模組資訊
$module_handler = & xoops_gethandler('module');
$module=$module_handler->getByDirName($dirname);
//判斷是否為管理員
if ($xoopsUser) {
$isAdmin = $xoopsUser->isAdmin($module_id);
}
2014年1月14日 星期二
2013年12月18日 星期三
ugm_contact_us 20131218
【關於 ugm_contact_us 聯絡我們 2.0】
2.增加「聯絡單位」
3.改變mail通知方式(使用xoops內建的xoopsMailer物件)、
4.加入xoops 「Token」安全機制及使用xoops內建圖型驗證、
【關於 ugm_contact_us 聯絡我們】
這是一個小型的模組,主要用來與訪客聯絡事誼。
它是小弟我的第一個開發的模組,架構是用tad老師的「XOOPS 模組製造機」所產生。
它也可以用來當做小型的購物車,
範例網站:新享城鵝肉店
【更新資訊】
ugm_contact_us 2.0 版更新項目(2013-12-18 釋出)
- 增加「聯絡單位」,可以設定多個管理員,每一個聯絡單位,可以設定多個收信信箱
- 寄信工具使用使用xoops內建的xoopsMailer物件,只要xoops可以寄信,本模組亦可。
- 全面導入BoootStrap
【下載檔案】
【環境需求】
- XOOPS 2.0.x~2.5.x 都可安裝
- PHP 5 以上
- 需要 Tad Tools 工具包
【安裝方法】
- 將新模組解壓,把ugm_contact_us 目錄上傳到modules下。
- 需搭配 Tad Tools工具包,詳細安裝方法請按此連結。
- 進入後台「模組→系統」進行模組安裝。
【更新方法】
- 更新時,請先登入,並進到「模組管理」畫面,以便上傳完後,可以立即進行更新動作。
- 將新模組解壓,把ugm_contact_us 目錄上傳到modules下,直接覆蓋即可(把舊的ugm_contact_us 整個刪除,上傳新的,這樣更好)。
- 若沒有 Tad Tools工具包 或版本太舊,則需下載安裝 Tad Tools工具包,詳細安裝方法請按此連結。
- 進入後台「模組→系統」進行模組更新。
2013年11月15日 星期五
chainedSelects 連動選單
參考網站
參考網站
參考網站
連動選單
script
//---引入Js //-----------------------------------------------------------
OP
//連動選單
case "get_ugm_search_class_json":
$get_ugm_search_class_json[] = get_ugm_search_class_json($_GET['_value']);
echo json_encode($get_ugm_search_class_json);
exit;
# ------------------------------------------------------------------------
//選項
function get_ugm_search_class_json($kind_sn="0"){
global $xoopsDB;
$sql = "select * from ".$xoopsDB->prefix("ugm_search_class")." where `kind_sn`='{$kind_sn}' order by `sn`";
$result = $xoopsDB->query($sql) or redirect_header($_SERVER['PHP_SELF'],3, mysql_error());
//$opt[]="請選擇";
while(list($sn,$kind_sn,$title)=$xoopsDB->fetchRow($result)){
$opt[$sn]=$title;
}
return $opt;
}
html
$main=""._MA_UGMSEARCH_KIND_SN." " "._MA_UGMSEARCH_CLASS_SN."
2013年11月3日 星期日
PHP EXCEL 匯出
設定寬度
# 設定 A 欄 寬度(一次只能一個欄)
$objPHPExcel->getActiveSheet()->getColumnDimensionByColumn(0)->setWidth(20);
$objPHPExcel->getActiveSheet()->getColumnDimension("A")->setWidth(20);
2013年11月1日 星期五
MYSQL 排名
參考來源:http://www.1keydata.com/tw/sql/sql-rank.html
SELECT a1.Name, a1.Sales, COUNT(a2.Sales) Sales_Rank FROM Total_Sales a1, Total_Sales a2 WHERE a1.Sales < a2.Sales OR (a1.Sales=a2.Sales AND a1.Name = a2.Name) GROUP BY a1.Name, a1.Sales ORDER BY a1.Sales DESC, a1.Name DESC;
# -------------------------------------------
$sql="
select a.term_class_student_sn, a.avg1, count(b.avg1) rank
from
(select sn as term_class_student_sn ,avg1
from ".$xoopsDB->prefix("ugm_scroeqry_term_class_student")."
where term_class_sn='{$term_class_sn}' and enable='1') a,
(select sn as term_class_student_sn ,avg1
from ".$xoopsDB->prefix("ugm_scroeqry_term_class_student")."
where term_class_sn='{$term_class_sn}' and enable='1') b
where a.avg1 < b.avg1 or (a.avg1=b.avg1 and a.term_class_student_sn = b.term_class_student_sn)
group by a.term_class_student_sn, a.avg1
order by a.avg1 desc, a.term_class_student_sn desc;
";die($sql);
# ----http://www.1keydata.com/tw/sql/sql-rank.html
2013年10月30日 星期三
編輯器_插入圖片
1.在新增文章/編輯文章,選擇「影像」工具鈕
2.如圖
3.如圖
4.可拖曳上傳數個圖檔,請先將檔名更換為英文檔名
5.挑選圖片
6.如圖
7.編輯圖片:對圖片按右鍵
8.可調整寬度、高度、邊框,靠右 ....
2013年10月19日 星期六
更新資料結構 (模組更新)
市場攤販管理,更改資料表結構
function xoops_module_update_ugm_market(&$module, $old_version) {
GLOBAL $xoopsDB;
if(!chk_ugm1()) go_ugm1(); # ---- 更改結構為 `e_last` -> DECIMAL( 10, 2 )
if(!chk_ugm2()) go_ugm2(); # ---- 更改結構為 `e_now` -> DECIMAL( 10, 2 )
return true;
}
# -------------------- ugm --------------------------------------------------*/
# ---- 更改結構 ugm_market_utility_main `e_last` 120->130----
function chk_ugm1(){
global $xoopsDB;
$sql="select `e_last` from ".$xoopsDB->prefix("ugm_market_utility_main")."";
$result = $xoopsDB->query($sql) or redirect_header($_SERVER['PHP_SELF'],3, mysql_error());
if(mysql_field_type($result,0)=='int')return false ;
return true;
}
function go_ugm1(){
global $xoopsDB;
$sql="ALTER TABLE ".$xoopsDB->prefix("ugm_market_utility_main")." CHANGE `e_last` `e_last` DECIMAL( 10, 2 ) UNSIGNED NOT NULL COMMENT '上期用電度數'";
$xoopsDB->queryF($sql) or redirect_header($_SERVER['PHP_SELF'],3, mysql_error());
return true;
}
# -----------------------------------------
# ---- 更改結構 ugm_market_utility_main `e_now` 120->130-----
function chk_ugm2(){
global $xoopsDB;
$sql="select `e_now` from ".$xoopsDB->prefix("ugm_market_utility_main")."";
$result = $xoopsDB->query($sql) or redirect_header($_SERVER['PHP_SELF'],3, mysql_error());
if(mysql_field_type($result,0)=='int')return false ;
return true;
}
function go_ugm2(){
global $xoopsDB;
$sql="ALTER TABLE ".$xoopsDB->prefix("ugm_market_utility_main")." CHANGE `e_now` `e_now` DECIMAL( 10, 2 ) UNSIGNED NOT NULL COMMENT '本期用電度數'";
$xoopsDB->queryF($sql) or redirect_header($_SERVER['PHP_SELF'],3, mysql_error());
return true;
}
# -----------------------------------------
2013年10月17日 星期四
2013年9月25日 星期三
取得XOOPS內建表單語法
取得XOOPS內建表單語法
群組多選選單
群組多選選單
# ---- 引入XOOPS 內建表單物件 -------------------------------
include_once(XOOPS_ROOT_PATH."/class/xoopsformloader.php");
# ---- 預設值 -----------------------------------------------
$group=$xoopsModuleConfig['query_admin'];
# ---- XoopsFormSelectGroup('標題', 'name', 含訪客, '預設值', 高度 ,多選)
$form=new XoopsFormSelectGroup ("", "group", false, $group, 3, true);
# ---- 輸出HTML碼 ------------------------------------------
$main_form = $form->render();
# ----- 輸出驗證碼-----------------------------------------------------
$configs="";
$Captcha=new XoopsFormCaptcha ("請輸入驗證碼", 'xoopscaptcha', false, $configs);
# ---- 輸出HTML碼 ------------------------------------------
$form_Captcha = $Captcha->render();
2013年8月31日 星期六
bootstrap accordion-menu
bootstrap accordion-menu 架構
參考網站:http://kkbruce.tw/Bootstrap/JavaScript#collapse
<div class="accordion" id="menu_block_1">
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle collapsed" data-toggle="collapse" data-parent="#menu_block_1" href="#menu_sn_1">伸縮選單1</a>
</div>
<div id="menu_sn_1" class="accordion-body in collapse">
<div class="accordion-inner">
<ul>
<li>第一層21</li>
<li>第一層22</li>
<li>第一層2</li>
</ul>
</div>
</div>
</div>
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle" data-toggle="collapse" data-parent="#menu_block_1" href="#menu_sn_2">伸縮選單2</a>
</div>
<div id="menu_sn_2" class="accordion-body in collapse">
<div class="accordion-inner">
<ul>
<li>第一層21</li>
<li>第一層22</li>
<li>第一層2</li>
</ul>
</div>
</div>
</div>
</div>
2013年8月15日 星期四
AJAX JQUERY
範例網址:http://www.tad0616.net/modules/tad_book3/page.php?tbdsn=746
ajax_utility.php
js
html
ajax_utility.php
<?php include_once "header.php"; $market_sn=$_REQUEST['market_sn']; echo get_market_fill($market_sn); ?>這裡直返回「填發人員」
js
<script>
//開啟表單時
$(document).ready(function(){
//由市場決定填發人員
$.post('ajax_utility.php' , {market_sn:$('#market_sn').val()},
function(data){
$('#fill').val(data);
});
//市場改變,填發人員改變
$('#market_sn').change(function(){
$.post('ajax_utility.php' , {market_sn: $('#market_sn').val()},
function(data){
$('#fill').val(data); //排序
});
});
//自動抓取年度
$('#limit_year').val($('#year').val()); //年度
$('#year').change(function(){
$('#limit_year').val($('#year').val()); //年度
});
//自動抓取月份
$('#limit_month').val($('#month').val()); //月份
$('#month').change(function(){
$('#limit_month').val($('#month').val()); //月份
});
});
</script>
取得值:$('#market_sn').val()
寫入值:$('#fill').val(data);
jQuery的.val ()方法
- $('#menu1').val()可以取得id="menu1"的網頁元件的值。
- $('#menu1').val('xxx')可以設定id="menu1"的網頁元件的值。
html
<select name='market_sn' size=1 id='market_sn'>{$market_select_option}</select>
<input type='text' name='fill' size='5' value='' id='fill' >
2013年8月5日 星期一
2013年8月3日 星期六
模組開發物件
按鈕
2.
$add_button="<a href='{$_SERVER['PHP_SELF']}?op=ugm_market_hire_form' class='Button'><span>按鈕</span></a>";
固定表格<table border='0' cellspacing='3' cellpadding='3' id='ugm_tb' style='word-wrap:break-word; word-break:break-all;table-layout:fixed;'>表單
<td><input type='text' name='hier[{$sn}][userfees]' value='{$userfees}' id='userfees_{$sn}' class='validate[required,custom[integer]]' style='width:60px'></td>
<td><input type='text' name='hier[{$sn}][cleaningfees]' value='{$cleaningfees}' id='cleaningfees_{$sn}' class='validate[required,custom[integer]]' style='width:60px'></td>
<td><input type='text' name='hier[{$sn}][delayfees]' value='{$delayfees}' id='delayfees_{$sn}' class='validate[custom[integer]]' style='width:60px'></td>
<td><input type='text' name='hier[{$sn}][ps]' value='{$ps}' id='ps_{$sn}' style='width:140px'></td>
接收foreach ($_REQUEST['hier'] as $sn => $data){
foreach ($data as $k => $v){
//以下會產生這些變數: $userfees, $cleaningfees,$delayfees,$ps
$$k=$v;
}
echo $sn."<br>";
echo $userfees."<br>";
echo $cleaningfees."<br>";
echo $delayfees."<br>";
echo $ps."<br>";
die();
}
2.
$last_button="上一步";
2013年7月25日 星期四
「UGM_自訂頁面」模組更新(2.0)
-
這一版的更新主要是將模組改為XOOPS 2.5.5的模組架構
示範網站:http://www.taytzang.com.tw/web/
請先上傳覆蓋模組,並執行模組更新:
- 檔案下載位置:
-
育將電腦工作室:XOOPS 模組開發及修改
聯絡:tawan158@gmail.com ugm
2013年7月22日 星期一
「UGM_自訂頁面」模組更新(1.8)增加英文語系
- 這次更新主要是增加英文語系。
示範網站:http://www.taytzang.com.tw/web
請先上傳覆蓋模組,並執行模組更新:
2.檔案下載位置:
3.育將電腦工作室:XOOPS 模組開發及修改
聯絡:tawan158@gmail.com ugm
聯絡:tawan158@gmail.com ugm
2013年7月8日 星期一
「UGM_自訂頁面」模組更新(1.8)增加佈景引入「下拉選單」、「圖片輪撥」功能
這次更新主要是增加增加佈景引入「下拉選單」、「圖片輪撥」功能。
2.請在佈景檔,適當位置加入下方語法
<div >
<{includeq file="$xoops_rootpath/modules/ugm_page/templates/ugm_page_block_slider.html"}> <!-- 引入ugm_page 自訂頁面第一個圖片輪撥 -->
</div>
<div>
<{includeq file="$xoops_rootpath/modules/ugm_page/templates/ugm_page_block_menu.html"}><!-- 引入ugm_page 自訂頁面第一個下拉選單 -->
<div class="clear"></div>
</div>
3.請建立下拉選單及圖片輪撥的資料
4.檔案下載位置:
訂閱:
文章 (Atom)
















