2013年12月18日 星期三

ugm_contact_us 20131218

【關於 ugm_contact_us 聯絡我們 2.0】

 1.後台界面全面重寫,套入BootStrap界面
 2.增加「聯絡單位」
 3.改變mail通知方式(使用xoops內建的xoopsMailer物件)、
 4.加入xoops 「Token」安全機制及使用xoops內建圖型驗證、



【關於 ugm_contact_us 聯絡我們

這是一個小型的模組,主要用來與訪客聯絡事誼。
它是小弟我的第一個開發的模組,架構是用tad老師的「XOOPS 模組製造機」所產生。
它也可以用來當做小型的購物車,
範例網站:新享城鵝肉店

【更新資訊】

ugm_contact_us 2.0 版更新項目(2013-12-18 釋出)
  1. 增加「聯絡單位」,可以設定多個管理員,每一個聯絡單位,可以設定多個收信信箱
  2. 寄信工具使用使用xoops內建的xoopsMailer物件,只要xoops可以寄信,本模組亦可。
  3. 全面導入BoootStrap

【下載檔案】

ugm_contact_us 2.0模組 2.0 正式版(2013-12-18)(需搭配 Tad Tools 1.18 以上版本)

【環境需求】

  1. XOOPS 2.0.x~2.5.x 都可安裝
  2. PHP 5 以上
  3. 需要 Tad Tools 工具包

【安裝方法】

  1. 將新模組解壓,把ugm_contact_us 目錄上傳到modules下。
  2. 需搭配 Tad Tools工具包詳細安裝方法請按此連結
  3. 進入後台「模組→系統」進行模組安裝。

【更新方法】

  1. 更新時,請先登入,並進到「模組管理」畫面,以便上傳完後,可以立即進行更新動作。
  2. 將新模組解壓,把ugm_contact_us 目錄上傳到modules下,直接覆蓋即可(把舊的ugm_contact_us 整個刪除,上傳新的,這樣更好)。
  3. 若沒有 Tad Tools工具包 或版本太舊,則需下載安裝 Tad Tools工具包詳細安裝方法請按此連結
  4. 進入後台「模組→系統」進行模組更新。

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年9月25日 星期三

燈箱

# ---- 在 加上
rel='lyteframe[booth]' title='{$number}' rev='width: 600px; height: 600px; scrolling: yes;'

# ---- 在 head 加上
 //--------------------- 引入jquery -------------------------------------
  if(!file_exists(XOOPS_ROOT_PATH."/modules/tadtools/jquery.php")){
    redirect_header("index.php",3, _TAD_NEED_TADTOOLS);
  }
  include_once XOOPS_ROOT_PATH."/modules/tadtools/jquery.php";
  $jquery_path = get_jquery(); //一般只要此行即可
  # --------  燈箱----------------------------------------
  $lytebox="
  
  ";
# --------------------------------------------------------


# ---- 在switch 加上  --------------------------------------------


  //瀏覽單筆資料->燈箱 圖片
  case "ugm_market_booth_view":
    echo show_lytebox_html(show_one_ugm_market_booth($sn),""); #秀單筆的程式碼
    exit;
    
# ---------------------------------------------------------------

# ---- 在block_function ----------------------------------------

################################################################################
#   燈箱打包碼(內容,標題)
#
#
#
################################################################################
if(!function_exists("show_lytebox_html")){
function show_lytebox_html($content,$title){
  global $xoopsModule;
  # ---- 取得模組目錄名稱 ---------------
  $MDIR=$xoopsModule->getVar('dirname');
  # -------------------------------------
  $main="
       
       
         

         
         {$title}
         
         
         

{$title}

{$content} "; return $main; } }

取得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();