destoon添加打印标识功能和去除已打印功能

 DestoonCMS   高蒙   阅读(2424)   评论(0)   2016-02-01 10:34:37    destoon destoon二次开发 destoon打印功能 destoon去除已打印功能 


这里的打印功能是之前已经写好的,我这里修改destoon的打印功能,是在之前打印的基础之上继续添加打印过的数据,给予标识并且在打印的页面中添加去除已打印数据的功能。实现的思路,首先将已打印的数据写入到数据库中,在前台显示的地方重新重组数组。然后接着处理,去除已打印功能。这里打印的数据使用session保存的。所以,我们将session里面条件重新的组装一下,就可以了。

第一步:新建数据表destoon_print。

CREATE TABLE `destoon_print` (
  `id` int(10) NOT NULL AUTO_INCREMENT,
  `username` varchar(255) DEFAULT NULL,
  `printid` text COMMENT '打印的产品id',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8;

这里的储存打印产品的id使用的是text字段,不是很完美。数据不大时候可以使用,考虑到大数据最好不要。

 

第二步:处理写入打印数据入库。

3.jpg

<script type="text/javascript">
$(function(){
$('.bb .operate').click(function(){
$.ajax({
    cache: true,
    type: "POST",
    url:'/daili/print.php',
    data:{act:'printid'},
    async: false,
    dataType:'json',
    success: function(data) {
if(data = 1){
    window.print();
}else{
    alert('请重新打印本页内容');
}
    }
});
    });
});
</script>
/* 用户打印产品的信息 20160129  begin ajax */
if($_POST['act'] == 'printid'){
if(isset($_SESSION['printstr'])){
// 查询是否用户名存在 打印过数据
$sql = " select printid from destoon_print where username= '".$_username."' limit 0,1";
$list_print = $db->get_one($sql);
$str = $_SESSION['printstr'];
if(!empty($list_print['printid'])){
// 更新用户打印的数据 先判断是否已经打印过
$print_str  = explode(',',$str);
$print_list = explode(',',$list_print['printid']);
$strs = "";

// 判断传过来的产品id 是否已经存在
foreach($print_str as $v){
if(!in_array($v,$print_list)){
$strs .= ",".$v."";
}
}
$str = $str.$strs;
$sqls = " update destoon_print set printid ='".$str."' where username = '".$_username."'";
$status = $db->query($sqls);
}else{
$sqls = "insert into  destoon_print(username,printid) values('".$_username."','".$str."')";
$status = $db->query($sqls);
}
        if($status){
            echo json_encode(1);
        }else{
            echo json_encode(0);
        }
}
exit;
}
/* end */

 

第三步:处理显示已打印的数据。

1.jpg

// 重新的组装 判断此代理产品信息是否已经被打印过 begin 20160129

$sql = " select printid from destoon_print where username ='".$_username."'";
$printid = $db->get_one($sql);
$print_list = explode(',',$printid['printid']);
foreach($tags as $k=>$v){
if(in_array($v['itemid'],$print_list)){
    $tags[$k]['ifprint'] = 1;
}else{
    $tags[$k]['ifprint'] = 0;
}
}

第四步:去除已打印的数据。

2.jpg

/* 去除用户已打印产品的信息 20160129  begin */

if($_GET['act'] == 'printout'){
    if(isset($_SESSION['printstr'])){
        // 查询是否用户名存在 打印过数据
        $sql = " select printid from destoon_print where username= '".$_username."' limit 0,1";
        $list_print1  = $db->get_one($sql);
        $print_str1   = explode(',',$list_print1['printid']);        // 用户已打印的代理信息
        $print_list1  = explode(',',$_SESSION['printstr']);          // 当前未打印的代理信息
        foreach($print_list1 as $v){
            if(!in_array($v,$print_str1)){
                $str_list .= $v.",";
            }
        }
    }
    if(!empty($str_list))
        $printolist = substr($str_list,0,-1);
}
/* end */

 




相关文章



我要评论


站长昵称:(*)

输入内容:


评论列表


高蒙

男,程序猿一枚

 

人生要是没有理想, 那跟一条咸鱼有什么分别。


关于我

  http://www.shuchengxian.com

高蒙个人博客是以PHP技术为主的程序员个人博客。博客主要发布php开发中遇到的问题以及解决办法,同时个人博客也分享网站模板素材,jquery插件等方面素材。


站点声明:相关侵权、举报、投诉及建议等,请发E-mail:936594075#qq.com(#替换成@)。

Copyright © 2018, www.shuchengxian.com, All rights reserved. 个人博客皖公网安备 34152302000022号 皖ICP备15015490号

关键词:个人博客,PHP博客,PHP博客程序,高蒙博客,高蒙个人博客,php程序员博客,程序员个人博客