zoukankan      html  css  js  c++  java
  • phpcms后台批量上传添加图片文章方法详解(一)

     注:以下所有代码中,红色部分为增加部分。

    一、在后台增加批量添加按钮

           打开“phpcmsmodulescontent emplatescontent_list.tpl.php”文件

           搜索“$category['catname']));?>

    ”在这句话的后天的添加:

           a  echo="" href=":;" m="content&c=content&a=addall&menuid=&catid=&pc_hash=','')>

           完成后效果如下图:

    在PHPCMS后台增加批量添加按钮图示

    二、创建批量添加模板页

           打开“phpcmsmodulescontent emplatescontent_add.tpl.php”文件,将其全部另存为 “content_addall.tpl.php”文件,并将“content_addall.tpl.php”文件中的全部代码替换为如下代码:

    !--?php
    defined('IN_ADMIN') or exit('No permission resources.');$addbg=1;
    include $this->admin_tpl('header','admin');?>
    < type="text/">

    language="" type="text/" src="content_addtop.js">
    language="" type="text/" src="colorpicker.js">
    language="" type="text/" src="hotkeys.js">
    language="" type="text/" src="cookie.js">
    < type="text/">var catid=


    标题*
    缩略图
          src="swfupload/swf2ckeditor.js" type="text/">
          
                        < type="text/">function crop_cut_sdddd(id){
        if (id=='') { alert('请先上传缩略图');return false;}
        d.uploadfile();return false;}, function(){window.top.art.dialog({id:'crop'}).close()});
    };
     
       
       
       
    标题*
    缩略图
          src="swfupload/swf2ckeditor.js" type="text/">
          
                        < type="text/">function crop_cut_sdddd(id){
        if (id=='') { alert('请先上传缩略图');return false;}
        d.uploadfile();return false;}, function(){window.top.art.dialog({id:'crop'}).close()});
    };
     
       
       
       
    标题*
    缩略图
          src="swfupload/swf2ckeditor.js" type="text/">
          
                        < type="text/">function crop_cut_sdddd(id){
        if (id=='') { alert('请先上传缩略图');return false;}
        d.uploadfile();return false;}, function(){window.top.art.dialog({id:'crop'}).close()});
    };
     
       
       
       
    标题*
    缩略图
          src="swfupload/swf2ckeditor.js" type="text/">
          
                        < type="text/">function crop_cut_sdddd(id){
        if (id=='') { alert('请先上传缩略图');return false;}
        d.uploadfile();return false;}, function(){window.top.art.dialog({id:'crop'}).close()});
    };
     
       
       
       
    标题*
    缩略图
          src="swfupload/swf2ckeditor.js" type="text/">
          
                        < type="text/">function crop_cut_sdddd(id){
        if (id=='') { alert('请先上传缩略图');return false;}
        d.uploadfile();return false;}, function(){window.top.art.dialog({id:'crop'}).close()});
    };
     
        
            input name="info[catid]" type="hidden" value="" />

        
    input class="cu" name="dosubmit" style="145px;" type="submit" value="" />
     
        
    input class="cu" name="close" style="70px;" type="button" value="" />
     
         


    < type="text/">

           其中红色代码中的部分为批量添加的个数,具体根据实际情况而定,这里添加的是一次性添加5个图片,完成后效果如下图:

    创建批量添加模板文件

    三、添加接受批量添加数据函数addall()

           打开“phpcmsmodulescontentcontent.php”文件,搜索“public function add() ”函数,在该函数的后面添加以下代码:

    public function addall() {
            if(isset($_POST['dosubmit']) || isset($_POST['dosubmit_continue'])) {
                define('INDEX_HTML',true);
                
                
                $catid = $_POST['info']['catid'] = intval($_POST['info']['catid']);
                
                if(trim($_POST['info']['01'])=='') showmessage(L('_is_empty'));
                if(trim($_POST['info']['02'])=='') showmessage(L('_is_empty'));
                if(trim($_POST['info']['03'])=='') showmessage(L('_is_empty'));
                if(trim($_POST['info']['04'])=='') showmessage(L('_is_empty'));
                if(trim($_POST['info']['05'])=='') showmessage(L('_is_empty'));
                
                $01 = $_POST['info']['01'];
                $02 = $_POST['info']['02'];
                $03 = $_POST['info']['03'];
                $04 = $_POST['info']['04'];
                $05 = $_POST['info']['05'];
                $suolve01 = $_POST['info']['suolve01'];
                $suolve02 = $_POST['info']['suolve02'];
                $suolve03 = $_POST['info']['suolve03'];
                $suolve04 = $_POST['info']['suolve04'];
                $suolve05 = $_POST['info']['suolve05'];
                
                
                //print_r($_POST['info']);
                $category = $this->categorys[$catid];
                if($category['type']==0) {
                    $modelid = $this->categorys[$catid]['modelid'];
                    $this->db->set_model($modelid);
                    //如果该栏目设置了工作流,那么必须走工作流设定
                    $setting = string2array($category['setting']);
                    $workflowid = $setting['workflowid'];
                    if($workflowid && $_POST['status']!=99) {
                        //如果用户是超级管理员,那么则根据自己的设置来发布
                        $_POST['info']['status'] = $_SESSION['roleid']==1 ? intval($_POST['status']) : 1;
                    } else {
                        $_POST['info']['status'] = 99;
                    }
                    
                    
                    
                    $this->db->addall_content($_POST['info']);
                    
                    
                    
                    
                    
                    if(isset($_POST['dosubmit'])) {
                        showmessage(L('add_success').L('2s_close'),'blank','','','function set_time() {$("#secondid").html(1);}setTimeout("set_time()", 500);setTimeout("window.close()", 1200);');
                    } else {
                        showmessage(L('add_success'),HTTP_REFERER);
                    }
                } else {
                    //单网页
                    $this->page_db = pc_::load_model('page_model');
                    $style_font_weight = $_POST['style_font_weight'] ? 'font-weight:'.strip_tags($_POST['style_font_weight']) : '';
                    $_POST['info']['style'] = strip_tags($_POST['style_color']).';'.$style_font_weight;
                    
                    if($_POST['edit']) {
                        $this->page_db->update($_POST['info'],array('catid'=>$catid));
                    } else {
                        $catid = $this->page_db->insert($_POST['info'],1);
                    }
                    $this->page_db->create_html($catid,$_POST['info']);
                    $forward = HTTP_REFERER;
                }
                showmessage(L('add_success'),$forward);
            } else {
                $show_header = $show_dialog = $show_validator = '';
                //设置cookie 在附件添加处调用
                param::set_cookie('module', 'content');
    
                if(isset($_GET['catid']) && $_GET['catid']) {
                    $catid = $_GET['catid'] = intval($_GET['catid']);
                    
                    param::set_cookie('catid', $catid);
                    $category = $this->categorys[$catid];
                    if($category['type']==0) {
                        $modelid = $category['modelid'];
                        //取模型ID,依模型ID来生成对应的表单
                        require CACHE_MODEL_PATH.'content_form.class.php';
                        $content_form = new content_form($modelid,$catid,$this->categorys);
                        $forminfos = $content_form->get();
                         $formValidator = $content_form->formValidator;
                        $setting = string2array($category['setting']);
                        $workflowid = $setting['workflowid'];
                        $workflows = getcache('workflow_'.$this->siteid,'commons');
                        $workflows = $workflows[$workflowid];
                        $workflows_setting = string2array($workflows['setting']);
                        $nocheck_users = $workflows_setting['nocheck_users'];
                        $admin_username = param::get_cookie('admin_username');
                        if(!empty($nocheck_users) && in_array($admin_username, $nocheck_users)) {
                            $priv_status = true;
                        } else {
                            $priv_status = false;
                        }
                        include $this->admin_tpl('content_addall');
                    } else {
                        //单网页
                        $this->page_db = pc_::load_model('page_model');
                        
                        $r = $this->page_db->get_one(array('catid'=>$catid));
                        
                        if($r) {
                            extract($r);
                            $style_arr = explode(';',$style);
                            $style_color = $style_arr[0];
                            $style_font_weight = $style_arr[1] ? substr($style_arr[1],12) : '';
                        }
                        include $this->admin_tpl('content_page');
                    }
                } else {
                    include $this->admin_tpl('content_addall');
                }
                header("Cache-control: private");
            }
        }

            完成后效果如下图:

    添加接受批量添加数据函数

    增加批量添加插入数据库函数

    五、在图片模型中添加批量添加字段

           进入网站后台---内容---模型管理--图片模型--字段管理,添加相应的批量添加字段,这里的字段值一定要和“content_addall.tpl.php”和“content.php”中的值一样,否则会出现错误,完成后效果如图所示:

    在图片模型中添加批量添加字段

    六、将单条添加中的批量上传字段进行隐藏处理

            为了能够达到更好的用户体验,需要将单条添加的时候,批量上传中用到的字段隐藏掉,打开“phpcmsmodulescontent emplatescontent_add.tpl.php”文件,搜索“*”,在句话的上面增加判断,效果图下图:

    将单条添加中的批量上传字段进行隐藏处理

  • 相关阅读:
    Arduino-LCD1602液晶显示器
    photoshop--选区变形
    利用github给国外文件下载加速
    开发老人笔记:Git 常用命令清单
    区块链轻节点:“身”轻,责任重
    需求条目化:一个让用户故事有效落地的套路
    十八般武艺玩转GaussDB(DWS)性能调优:Plan hint运用
    跨越全场景统一架构三大挑战,MindSpore亮出“四招”
    看图学NumPy:掌握n维数组基础知识点,看这一篇就够了
    进来抄作业:分布式系统中保证高可用性的常用经验
  • 原文地址:https://www.cnblogs.com/zjy954/p/5526332.html
Copyright © 2011-2022 走看看