ECshop後台開發模組步驟

來源:互聯網
上載者:User

一、建資料庫
二、添加到後台導覽列並配置相關語言套件
三、許可權配置
四、添加增刪查改
五、增加其他功能(複製,搜尋(暫時調不出來頁面),排序,轉移,AJAX)

以添加支付資訊模組為例

第一步首先我們用phpmyadmin建一個支付表,表名:ecs_pay表欄位:pay_id,pay_name,pay_info,pay_bank,pay_credit,pay_state第二步添加到後台左側導覽列並配置許可權和相關語言套件
共修改四個檔案inc_priv.php、 

 inc_menu.php、priv_action.php、common.php

1.開啟languages\zh_cn\admin\common.php
找到 添加     
$_LANG['18_pay'] = '支付管理';

檔案末尾添加

$_LANG['02_pay_list'] = '支付人資訊';
$_LANG['03_pay_charge'] = '賬戶儲值';
$_LANG['04_pay_record'] = '流水記賬';

配其他相關的語言套件
$_LANG['pay_name'] = '支付人';
$_LANG['pay_info'] = '支付資訊';
$_LANG['pay_bank'] = '開戶銀行';
$_LANG['pay_credit'] = '開戶帳號';
$_LANG['pay_state'] = '狀態';

2.開啟admin\includes\inc_menu.php
末尾添加
$modules['18_pay']['02_pay_info']    ='pay.php?act=list';
$modules['18_pay']['03_pay_charge']  = 'pay.php?act=charge';
$modules['18_pay']['04_pay_record']       ='pay.php?act=record';

OK,功能表列顯示

第三步
配置許可權體系(priv_action.php ,inc_priv.php)
1.在表ecs_admin_action 裡面添加模組欄位pay 、pay_manage、pay_drop   
parent_id = 0的為頂級欄目,其他子欄目的操作,都繼承了parent_id和頂級欄目關聯起來.(注意action_id  和parent_id的關係 )
添加一個頂級欄目  pay  action_id為136  parent_id為0;
     其下子欄目  pay_manage             parent_id為136;
                 pay_drop                parent_id為136;

2.開啟languages\zh_cn\admin\priv_action.php
下添加
$_LANG['pay']       ='支付管理';
末尾添加
//支付管理
$_LANG['pay_manage'] = '支付添加/編輯';
$_LANG['pay_drop'] = '支付刪除';

3.開啟admin\includes\inc_priv.php
末尾添加
       //支付管理
       $purview['02_pay_info']        =array('pay_manage', 'pay_drop');
       $purview['03_pay_charge']      ='pay_manage';
       $purview['04_pay_record']               ='pay_manage';

第四步,添加基本的增刪改查功能
建四個檔案 pay.php、pay_list、pay_info、pay_search
.添加“增加”功能

//-- 添加支付人資訊

if ($_REQUEST['act'] == 'add')
{
   
   //admin_priv('pay_manage');

   
   $smarty->assign('ur_here',   $_LANG['pay_name_add']);
   //$smarty->assign('action_link', array('text'=> $_LANG['pay_name_add'], 'href' =>'pay.php?act=list'));
        $smarty->assign('form','insert');
    assign_query_info();
   $smarty->display('pay_info.htm');
}

//-- 添加支付人資訊

if ($_REQUEST['act'] == 'insert')
{
   
   //admin_priv('pay_manage');

   
    $is_only =$exc->is_only('pay_id', $_POST['pay_id'],0, " pay_id='$_POST[pay_id]'");

    if (!$is_only)
    {
       sys_msg($_LANG['goods_exist'],1);
    }

   
    if(empty($_POST['pay_id']))
    {
       $_POST['pay_id']= 0;
    }
    $sql = "INSERT INTO".$ecs->table('pay')."(pay_id, pay_name,pay_info,pay_bank, pay_credit) ".
          "VALUES('$_POST[pay_id]','$_POST[pay_name]', '$_POST[pay_info]','$_POST[pay_bank]', '$_POST[pay_credit]')";
   
   $db->query($sql);

       $link[0]['text'] = $_LANG['back_list'];
    $link[0]['href'] ='pay.php?act=list';

    $link[1]['text'] =$_LANG['pay_continue_add'];
    $link[1]['href'] ='pay.php?act=add';

   

   admin_log($_POST['pay_id'],'add','exchange_goods');

    clear_cache_files(); //清除相關的快取檔案

   sys_msg($_LANG['articleadd_succeed'],0, $link);
}

(首先是根據act傳來的參數add,把參數insert賦值到smarty模板,放在在添加頁面隱藏欄位中,更新也是如此)
1.根據傳遞過來的act的參數insert邏輯添加處理,(參數insert在添加頁面的)
2.admin_priv函數判斷是否具有許可權,
3.$exc->is_only()判斷自增號是否唯一(可去掉)
4.$db->query($sql)對資料庫進行操作,
5.admin_log()函數記錄操作資訊
6.clear_cache_files();清除緩衝
7.sys_msg()函數提示操作資訊

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.