Esempio n. 1
0
 public function index()
 {
     $size = $this->input->get('size');
     $arr = explode('/picdata/', REQUEST_URI);
     if (empty($arr[1])) {
         header("location:" . piclink('pic', ''));
         exit;
     }
     $arr[1] = 'attachment/' . $arr[1];
     $arrs = explode('?', $arr[1]);
     $files = FCPATH . $arrs[0];
     if (!file_exists($files)) {
         header("location:" . piclink('pic', ''));
         exit;
     }
     if (!empty($size)) {
         $wh = explode('*', $size);
         $w = intval($wh[0]);
         $h = intval($wh[1]);
         if ($w > 800 || $h > 800) {
             $w = 0;
             $h = 0;
         }
     } else {
         $w = 0;
         $h = 0;
     }
     //没有缩放或者超过800则直接转向指定图片
     if ($w == 0 && $h == 0) {
         header("location:http://" . Web_Url . Web_Path . $arrs[0]);
         exit;
     }
     //判断缓存是否存在
     $file_ext = strtolower(trim(substr(strrchr($arrs[0], '.'), 1)));
     $cachedir = 'cache/suo_pic/' . str_replace("attachment/", "", $arrs[0]) . '_' . $w . '_' . $h . '.' . $file_ext;
     $cachedir = str_replace("//", "/", $cachedir);
     if (file_exists(FCPATH . $cachedir)) {
         //会员头像1小时更新一次
         if (strpos($arrs[0], '/logo/') === FALSE || time() - filemtime(FCPATH . $cachedir) < 3600) {
             header("location:http://" . Web_Url . Web_Path . $cachedir);
             exit;
         }
     }
     //创建缓存文件夹
     $temp = pathinfo(FCPATH . $cachedir);
     mkdirss($temp["dirname"]);
     $params['file'] = $files;
     $params['cache'] = FCPATH . $cachedir;
     //加载库类
     $this->load->library('slpic', $params);
     //生成图片
     $this->slpic->resize($w, $h);
 }
Esempio n. 2
0
    public function picsave()
    {
        $filename = $this->upload('bgpic');
        $bgpic = getzd('user', 'bgpic', $_SESSION['cscms__id']);
        //删除原来的图片
        $this->load->library('csup');
        $this->csup->del($bgpic, 'bgpic');
        //删除附件
        $edit['bgpic'] = date('Ym') . '/' . date('d') . '/' . $filename;
        $this->CsdjDB->get_update('user', $_SESSION['cscms__id'], $edit);
        $pic = piclink('bgpic', $edit['bgpic']) . '?size=720*186';
        echo '<script type="text/javascript">
				  parent.do_alert("' . L('web_04') . '");
				  parent.$(".file_working").hide();
				  parent.$(".banner_clip").show();
				  parent.$(".banner_clip").css("background","url(' . $pic . ')");
				  </script>';
    }
Esempio n. 3
0
 public function cscms_skins($field, $str, $label, $row, $sorti = 1, $autoarr = array())
 {
     preg_match_all('/\\[' . $field . ':\\s*([0-9a-zA-Z\\_\\-]+)([\\s]*[link|ulink|dir|level|zd|len|style]*)[=]??([\\d0-9a-zA-Z\\,\\{\\}\\/\\-\\\\:\\s]*)\\]/', $str, $field_arr);
     if (!empty($field_arr)) {
         //判断是否嵌套二级
         preg_match('/{cscmstype:([\\S]+)\\s+(.*?)}([\\s\\S]+?){\\/cscmstype:\\1}/', $label, $type_arr);
         if (!empty($type_arr)) {
             $label = $this->cscms_sql_to($type_arr[1], $type_arr[2], $type_arr[0], $type_arr[3], $label, $row['id']);
         }
         unset($type_arr);
         for ($i = 0; $i < count($field_arr[0]); $i++) {
             $type = $field_arr[1][$i];
             if (array_key_exists($type, $row) && trim($field_arr[2][$i]) != 'zd') {
                 if ($type == 'addtime') {
                     $label = str_replace('[' . $field . ':' . $type . ']', date('Y-m-d H:i:s', $row[$type]), $label);
                 } else {
                     $label = str_replace('[' . $field . ':' . $type . ']', $row[$type], $label);
                 }
                 //判断自定义标签
                 if (!empty($field_arr[2][$i]) && !empty($field_arr[3][$i])) {
                     //格式化时间
                     if (trim($field_arr[2][$i]) == 'style' && trim($field_arr[3][$i]) == 'time') {
                         $label = str_replace($field_arr[0][$i], datetime($row[$type]), $label);
                         //获取IP地区
                     } elseif (trim($field_arr[2][$i]) == 'style' && trim($field_arr[3][$i]) == 'city') {
                         $ci =& get_instance();
                         $ci->load->library('ip');
                         $label = str_replace($field_arr[0][$i], $ci->ip->address($row[$type]), $label);
                         //自定义时间
                     } elseif (trim($field_arr[2][$i]) == 'style') {
                         $label = str_replace($field_arr[0][$i], date(str_replace('f', 'i', $field_arr[3][$i]), $row[$type]), $label);
                         //图片地址
                     } elseif (trim($field_arr[2][$i]) == 'dir') {
                         $lall = explode(",", $field_arr[3][$i]);
                         $lass = count($lall) > 1 ? $lall[1] : '';
                         $pic = piclink($lall[0], $row[$type], $lass);
                         $label = str_replace($field_arr[0][$i], $pic, $label);
                     }
                     //字符截取
                     if (trim($field_arr[2][$i]) == 'len') {
                         $label = str_replace($field_arr[0][$i], sub_str(str_checkhtml($row[$type]), $field_arr[3][$i]), $label);
                     }
                 }
             } else {
                 //外部字段
                 switch ($type) {
                     //序
                     case 'i':
                         $label = str_replace($field_arr[0][$i], $sorti, $label);
                         break;
                         //序
                     //序
                     case 'addres':
                         if (trim($field_arr[2][$i]) == 'zd' && !empty($field_arr[3][$i]) && array_key_exists($field_arr[3][$i], $row)) {
                             $zd = $field_arr[3][$i];
                             $ci =& get_instance();
                             $ci->load->library('ip');
                             $label = str_replace($field_arr[0][$i], $ci->ip->address($row[$zd]), $label);
                         }
                         break;
                         //数据统计
                     //数据统计
                     case 'count':
                         if (trim($field_arr[2][$i]) == 'zdy' && !empty($field_arr[3][$i])) {
                             $count = 0;
                             $arr = explode(',', $field_arr[3][$i]);
                             $table = $arr[0];
                             $czd = empty($arr[1]) ? 'id' : $arr[1];
                             $szd = empty($arr[2]) ? 'id' : $arr[2];
                             if (array_key_exists($szd, $row)) {
                                 $ci =& get_instance();
                                 if (!isset($ci->db)) {
                                     $ci->load->database();
                                 }
                                 $uid = !empty($row[$szd]) ? $row[$szd] : (!empty($row['uid']) ? $row['uid'] : 0);
                                 if (!empty($table) && $ci->db->table_exists(CS_SqlPrefix . $table) && $ci->db->field_exists($czd, CS_SqlPrefix . $table)) {
                                     if (!empty($arr[3]) && (!empty($arr[4]) || (int) $arr[4] == 0)) {
                                         if ($ci->db->field_exists($arr[3], CS_SqlPrefix . $table)) {
                                             $count = $ci->db->query("SELECT id FROM " . CS_SqlPrefix . $table . " where " . $czd . "='" . $uid . "' and " . $arr[3] . "='" . $arr[4] . "'")->num_rows();
                                         }
                                     } else {
                                         $count = $ci->db->query("SELECT id FROM " . CS_SqlPrefix . $table . " where " . $czd . "='" . $uid . "'")->num_rows();
                                     }
                                 }
                             }
                             $label = str_replace($field_arr[0][$i], $count, $label);
                         }
                         break;
                         //会员信息
                     //会员信息
                     case 'user':
                         if (($field == 'user' or array_key_exists('uid', $row) or array_key_exists('uidb', $row)) && trim($field_arr[2][$i]) == 'zd' && !empty($field_arr[3][$i])) {
                             $ci =& get_instance();
                             if (!isset($ci->db)) {
                                 $ci->load->database();
                             }
                             $ziduan = $field_arr[3][$i];
                             $zdneir = ($field == 'gbook' or $field == 'pl') ? '游客' : 'null';
                             if ($field == 'user') {
                                 $uid = $row['id'];
                             } else {
                                 $lall = explode(",", $ziduan);
                                 if (!empty($lall[1])) {
                                     $uid = !empty($lall[1]) ? $lall[1] : 0;
                                     $ziduan = $lall[1];
                                 } else {
                                     if (!empty($row['uid'])) {
                                         $uid = $row['uid'];
                                     } else {
                                         $uid = !empty($row['uidb']) ? $row['uidb'] : 0;
                                     }
                                 }
                             }
                             $czd = $ziduan == 'nichen' ? $ziduan . ',name' : $ziduan;
                             if ($ci->db->field_exists($ziduan, CS_SqlPrefix . 'user')) {
                                 $rowu = $ci->db->query("SELECT " . $czd . " FROM " . CS_SqlPrefix . "user where id='" . $uid . "'")->row();
                                 if ($rowu) {
                                     $zdneir = $field_arr[3][$i] == 'nichen' && empty($rowu->{$ziduan}) ? $rowu->name : $rowu->{$ziduan};
                                 }
                             }
                             if ($ziduan == 'logo') {
                                 if ($uid == 0) {
                                     $zdneir = '';
                                 }
                                 $zdneir = piclink('logo', $zdneir);
                             }
                             if ($ziduan == 'zid') {
                                 if ($zdneir == 0) {
                                     $zdneir = 1;
                                 }
                                 $zdneir = getzd('userzu', 'name', $zdneir);
                             }
                             if ($ziduan == 'qianm') {
                                 if (empty($zdneir)) {
                                     $zdneir = '暂时没有签名...';
                                 }
                             }
                             if ($ziduan == 'city') {
                                 if (empty($zdneir)) {
                                     $zdneir = '保密';
                                 }
                             }
                             $label = str_replace($field_arr[0][$i], $zdneir, $label);
                             //会员等级
                         } elseif (($field == 'user' or array_key_exists('uid', $row) or array_key_exists('uidb', $row)) && trim($field_arr[2][$i]) == 'level' && !empty($field_arr[3][$i])) {
                             $zdneir = '';
                             if ($field == 'user') {
                                 $uid = $row['id'];
                             } else {
                                 $uid = !empty($row['uid']) ? $row['uid'] : (!empty($row['uidb']) ? $row['uidb'] : 0);
                             }
                             $jinyan = getzd('user', 'jinyan', $uid);
                             if ($field_arr[3][$i] == '1') {
                                 //星星数
                                 $zdneir = getlevel($jinyan, 1);
                             }
                             if ($field_arr[3][$i] == '2') {
                                 //下个级别需要经验
                                 $zdneir = getlevel($jinyan, 2);
                             }
                             if ($field_arr[3][$i] == '3') {
                                 //下个级别剩余经验
                                 $zdneir = getlevel($jinyan, 3);
                             }
                             if ($field_arr[3][$i] == '4') {
                                 //剩余百分比
                                 $zdneir = getlevel($jinyan, 4);
                             }
                             if ($field_arr[3][$i] == '5') {
                                 //名称
                                 $zdneir = getlevel($jinyan, 5);
                             }
                             $label = str_replace($field_arr[0][$i], $zdneir, $label);
                         }
                         break;
                         //歌手信息
                     //歌手信息
                     case 'singer':
                         if (array_key_exists('singerid', $row) && trim($field_arr[2][$i]) == 'zd' && !empty($field_arr[3][$i])) {
                             $ci =& get_instance();
                             if (!isset($ci->db)) {
                                 $ci->load->database();
                             }
                             $zdneir = 'null';
                             if ($ci->db->table_exists(CS_SqlPrefix . 'singer')) {
                                 //歌手表存在
                                 $ziduan = $field_arr[3][$i];
                                 if ($ci->db->field_exists($ziduan, CS_SqlPrefix . 'singer')) {
                                     $rows = $ci->db->query("SELECT " . $ziduan . " FROM " . CS_SqlPrefix . "singer where id='" . $row['singerid'] . "'")->row();
                                     if ($rows) {
                                         $zdneir = $rows->{$ziduan};
                                     }
                                 }
                                 if ($ziduan == 'pic') {
                                     if ($row['singerid'] == 0) {
                                         $zdneir = '';
                                     }
                                     $zdneir = piclink('singer', $zdneir);
                                 }
                             }
                             $label = str_replace($field_arr[0][$i], $zdneir, $label);
                         }
                         break;
                         //版块链接
                     //版块链接
                     case 'murl':
                         if (array_key_exists('dir', $row)) {
                             $link = cscmslink($row['dir']);
                             $label = str_replace($field_arr[0][$i], $link, $label);
                         }
                         break;
                         //网站链接
                     //网站链接
                     case 'url':
                         //全局
                         if (array_key_exists('id', $row) && trim($field_arr[2][$i]) == 'link' && !empty($field_arr[3][$i])) {
                             $lall = explode(",", $field_arr[3][$i]);
                             $lass = count($lall) > 1 ? $lall[1] : '';
                             $link = linkurl($lall[0], $lass, $row['id']);
                             $label = str_replace($field_arr[0][$i], $link, $label);
                         }
                         //会员
                         if ((array_key_exists('uid', $row) || array_key_exists('uidb', $row) || $field == 'user') && trim($field_arr[2][$i]) == 'ulink' && !empty($field_arr[3][$i])) {
                             $ci =& get_instance();
                             if (!isset($ci->db)) {
                                 $ci->load->database();
                             }
                             $link = '';
                             if ($field == 'user') {
                                 if (array_key_exists('id', $row) && array_key_exists('name', $row)) {
                                     $lall = explode(",", $field_arr[3][$i]);
                                     $lass = count($lall) > 1 ? $lall[1] : '';
                                     $link = userlink($lall[0], $row['id'], $row['name'], $lass);
                                 }
                             } else {
                                 $uid = !empty($row['uid']) ? $row['uid'] : (!empty($row['uidb']) ? $row['uidb'] : 0);
                                 $rowu = $ci->db->query("SELECT id,name FROM " . CS_SqlPrefix . "user where id='" . $uid . "'")->row();
                                 if (!$rowu) {
                                     $link = 'http://' . Web_Url . Web_Path;
                                 } else {
                                     $lall = explode(",", $field_arr[3][$i]);
                                     $lass = count($lall) > 1 ? $lall[1] : '';
                                     $link = userlink($lall[0], $rowu->id, $rowu->name, $lass);
                                 }
                             }
                             $label = str_replace($field_arr[0][$i], $link, $label);
                         }
                         //会员中心...
                         if (trim($field_arr[2][$i]) == 'userlink' && !empty($field_arr[3][$i])) {
                             $link = spacelink($field_arr[3][$i]);
                             $label = str_replace($field_arr[0][$i], $link, $label);
                         }
                         //自定义URL,板块,字段,参数,参数...
                         if (trim($field_arr[2][$i]) == 'zdy' && !empty($field_arr[3][$i])) {
                             $lall = explode(",", $field_arr[3][$i]);
                             if (!array_key_exists($lall[1], $row) || $row[$lall[1]] == 0) {
                                 $link = 'http://' . Web_Url . Web_Path;
                             } else {
                                 $lass = count($lall) > 3 ? $lall[3] : '';
                                 $link = linkurl($lall[2], $lass, $row[$lall[1]], 1, $lall[0]);
                             }
                             $label = str_replace($field_arr[0][$i], $link, $label);
                         }
                         break;
                 }
             }
         }
     }
     unset($field_arr);
     return $label;
 }
Esempio n. 4
0
 public function downpic()
 {
     $page = intval($this->input->get('page'));
     $pagejs = intval($this->input->get('pagejs'));
     $sql_string = "SELECT id,pic FROM " . CS_SqlPrefix . "vod where hid=0 and yid=0 and Lower(Left(pic,7))='http://' order by addtime desc";
     $query = $this->db->query($sql_string);
     $total = $query->num_rows();
     if ($page > $pagejs || $total == 0) {
         admin_msg('恭喜您,所有远程图片全部同步完成~!', site_url('vod/admin/vod'), 'ok');
         //操作完成
     }
     if ($page == 0) {
         $page = 1;
     }
     $per_page = 20;
     $totalPages = ceil($total / $per_page);
     // 总页数
     if ($total < $per_page) {
         $per_page = $total;
     }
     if ($pagejs == 0) {
         $pagejs = $totalPages;
     }
     $sql_string .= ' limit 20';
     $query = $this->db->query($sql_string);
     //保存目录
     if (UP_Mode == 1 && UP_Pan != '') {
         $pathpic = UP_Pan . '/attachment/vod/' . date('Ym') . '/' . date('d') . '/';
         $pathpic = str_replace("//", "/", $pathpic);
     } else {
         $pathpic = FCPATH . 'attachment/vod/' . date('Ym') . '/' . date('d') . '/';
     }
     if (!is_dir($pathpic)) {
         mkdirss($pathpic);
     }
     $this->load->library('watermark');
     $this->load->library('csup');
     echo '<LINK href="' . Web_Path . 'packs/admin/css/style.css" type="text/css" rel="stylesheet"><br>';
     echo "<div style='font-size:14px;'>&nbsp;&nbsp;&nbsp;<b>正在开始同步第<font style='color:red; font-size:12px; font-style:italic'>" . $page . "</font>页,共<font style='color:red; font-size:12px; font-style:italic'>" . $pagejs . "</font>页,剩<font style='color:red; font-size:12px; font-style:italic'>" . $totalPages . "</font>页</b><br><br>";
     foreach ($query->result() as $row) {
         $up = 'no';
         if (!empty($row->pic)) {
             $picdata = htmlall($row->pic);
             $file_ext = strtolower(trim(substr(strrchr($row->pic, '.'), 1)));
             if ($file_ext != 'jpg' && $file_ext != 'png' && $file_ext != 'gif') {
                 $file_ext = 'jpg';
             }
             //新文件名
             $file_name = date("YmdHis") . rand(10000, 99999) . '.' . $file_ext;
             $file_path = $pathpic . $file_name;
             if (!empty($picdata)) {
                 //保存图片
                 if (write_file($file_path, $picdata)) {
                     $up = 'ok';
                     //判断水印
                     if (CS_WaterMark == 1) {
                         $this->watermark->imagewatermark($file_path);
                     }
                     //判断上传方式
                     $res = $this->csup->up($file_path, $file_name);
                     if (!$res) {
                         $up = 'no';
                     }
                 }
             }
         }
         //成功
         if ($up == 'ok') {
             //修改数据库
             $this->db->query("update " . CS_SqlPrefix . "vod set pic='/" . date('Ym') . "/" . date('d') . "/" . $file_name . "' where id=" . $row->id . "");
             echo "&nbsp;&nbsp;&nbsp;&nbsp;同步<font color=red>" . $row->pic . "</font>&nbsp;图片成功!&nbsp;&nbsp;新图片名:<a href=\"" . piclink('vod', '/' . date('Ym') . '/' . date('d') . '/' . $file_name) . "\" target=_blank>" . $file_name . "</a></br>";
         } else {
             //修改数据库
             $this->db->query("update " . CS_SqlPrefix . "vod set pic='' where id=" . $row->id . "");
             echo "&nbsp;&nbsp;&nbsp;&nbsp;<font color=red>" . $row->pic . "</font>远程图片不存在!</br>";
         }
         ob_flush();
         flush();
     }
     echo "&nbsp;&nbsp;&nbsp;&nbsp;第" . $page . "页图片同步完毕,暂停3秒后继续同步......<script language='javascript'>setTimeout('ReadGo();'," . 3000 . ");function ReadGo(){location.href='" . site_url('vod/admin/opt/downpic') . "?page=" . ($page + 1) . "&pagejs=" . $pagejs . "';}</script></div>";
 }
Esempio n. 5
0
 public function index($fid = 'id', $id = 0)
 {
     $id = intval($fid) > 0 ? intval($fid) : intval($id);
     //ID
     //判断ID
     if ($id == 0) {
         msg_url('出错了,ID不能为空!', Web_Path);
     }
     //获取数据
     $row = $this->CsdjDB->get_row_arr('pic_type', '*', $id);
     if (!$row || $row['yid'] > 0 || $row['hid'] > 0) {
         msg_url('出错了,该数据不存在或者没有审核!', Web_Path);
     }
     //判断运行模式,生成则跳转至静态页面
     $html = config('Html_Uri');
     if (config('Web_Mode') == 3 && $html['show']['check'] == 1) {
         //获取静态路径
         $Htmllink = LinkUrl('show', $fid, $id, 0, 'pic');
         header("Location: " . $Htmllink);
         exit;
     }
     //摧毁部分需要超级链接字段数组
     $rows = $row;
     //先保存数组保留下面使用
     unset($row['tags']);
     //获取当前分类下二级分类ID
     $arr['cid'] = getChild($row['cid']);
     $arr['uid'] = $row['uid'];
     $arr['tags'] = $rows['tags'];
     $arr['sid'] = $row['id'];
     //默认模板
     $skins = empty($row['skins']) ? 'show.html' : $row['skins'];
     //装载模板并输出
     $Mark_Text = $this->CsdjTpl->plub_show('pic', $row, $arr, TRUE, $skins, $row['name'], $row['name']);
     //评论
     $Mark_Text = str_replace("[pic:pl]", get_pl('pic', $id), $Mark_Text);
     //分类地址、名称
     $Mark_Text = str_replace("[pic:link]", LinkUrl('show', 'id', $row['id'], 1, 'pic'), $Mark_Text);
     $Mark_Text = str_replace("[pic:classlink]", LinkUrl('lists', 'id', $row['cid'], 1, 'pic'), $Mark_Text);
     $Mark_Text = str_replace("[pic:classname]", $this->CsdjDB->getzd('pic_list', 'name', $row['cid']), $Mark_Text);
     //获取上下张
     preg_match_all('/[pic:slink]/', $Mark_Text, $arr);
     if (!empty($arr[0]) && !empty($arr[0][0])) {
         $rowd = $this->db->query("Select id,cid,pic,name from " . CS_SqlPrefix . "pic_type where yid=0 and hid=0 and id<" . $id . " order by id desc limit 1")->row();
         if ($rowd) {
             $Mark_Text = str_replace("[pic:slink]", LinkUrl('show', 'id', $rowd->id, 1, 'pic'), $Mark_Text);
             $Mark_Text = str_replace("[pic:sname]", $rowd->name, $Mark_Text);
             $Mark_Text = str_replace("[pic:sid]", $rowd->id, $Mark_Text);
             $Mark_Text = str_replace("[pic:spic]", piclink('pic', $rowd->pic), $Mark_Text);
         } else {
             $Mark_Text = str_replace("[pic:slink]", "#", $Mark_Text);
             $Mark_Text = str_replace("[pic:sname]", "没有了", $Mark_Text);
             $Mark_Text = str_replace("[pic:sid]", 0, $Mark_Text);
             $Mark_Text = str_replace("[pic:spic]", piclink('pic', ''), $Mark_Text);
         }
     }
     unset($arr);
     preg_match_all('/[pic:xlink]/', $Mark_Text, $arr);
     if (!empty($arr[0]) && !empty($arr[0][0])) {
         $rowd = $this->db->query("Select id,cid,pic,name from " . CS_SqlPrefix . "pic_type where yid=0 and hid=0 and id>" . $id . " order by id asc limit 1")->row();
         if ($rowd) {
             $Mark_Text = str_replace("[pic:xlink]", LinkUrl('show', 'id', $rowd->id, 1, 'pic'), $Mark_Text);
             $Mark_Text = str_replace("[pic:xname]", $rowd->name, $Mark_Text);
             $Mark_Text = str_replace("[pic:xid]", $rowd->id, $Mark_Text);
             $Mark_Text = str_replace("[pic:xpic]", piclink('pic', $rowd->pic), $Mark_Text);
         } else {
             $Mark_Text = str_replace("[pic:xlink]", "#", $Mark_Text);
             $Mark_Text = str_replace("[pic:xname]", "没有了", $Mark_Text);
             $Mark_Text = str_replace("[pic:xid]", 0, $Mark_Text);
             $Mark_Text = str_replace("[pic:xpic]", piclink('pic', ''), $Mark_Text);
         }
     }
     unset($arr);
     //标签加超级连接
     $Mark_Text = str_replace("[pic:tags]", SearchLink($rows['tags']), $Mark_Text);
     //获取当前相册总数
     $pcount = $this->db->query("Select id from " . CS_SqlPrefix . "pic where sid=" . $id . " and hid=0 and yid=0")->num_rows();
     $Mark_Text = str_replace("[pic:count]", $pcount, $Mark_Text);
     //第一张图片
     $rowp = $this->db->query("Select pic,content from " . CS_SqlPrefix . "pic where sid=" . $id . " and hid=0 and yid=0 order by id desc limit 1")->row();
     $pics = $rowp ? $rowp->pic : '';
     $content = $rowp ? $rowp->content : '';
     $Mark_Text = str_replace("[pic:url]", piclink('pic', $pics), $Mark_Text);
     $Mark_Text = str_replace("[pic:content]", $content, $Mark_Text);
     //增加人气
     $Mark_Text = hits_js($Mark_Text, hitslink('hits/ids/' . $id, 'pic'));
     echo $Mark_Text;
     $this->cache->end();
     //由于前面不是直接输出,所以这里需要加入写缓存
 }
Esempio n. 6
0
 public function show_save()
 {
     if ($this->huri['show']['check'] == 0) {
         admin_msg('相册内容页未开启生成~!', 'javascript:history.back();', 'no');
     }
     $day = intval($this->input->get_post('day', true));
     //最近几天
     $ids = $this->input->get_post('ids', true);
     //需要生成的数据ID
     $cid = $this->input->get_post('cid', true);
     //需要生成的分类ID
     $newid = intval($this->input->get_post('newid'));
     //最新个数
     $ksid = intval($this->input->get_post('ksid'));
     //开始ID
     $jsid = intval($this->input->get_post('jsid'));
     //结束ID
     $kstime = $this->input->get_post('kstime', true);
     //开始日期
     $jstime = $this->input->get_post('jstime', true);
     //结束日期
     $pagesize = intval($this->input->get('pagesize'));
     //每页多少条
     $pagejs = intval($this->input->get('pagejs'));
     //总页数
     $datacount = intval($this->input->get('datacount'));
     //数据总数
     $page = intval($this->input->get('page'));
     //当前页
     if ($page == 0) {
         $page = 1;
     }
     $str = '';
     //将数组转换成字符
     if (is_array($cid)) {
         $cid = implode(',', $cid);
     }
     if (is_array($ids)) {
         $ids = implode(',', $ids);
     }
     if ($day > 0) {
         $times = time() - 86400 * $day;
         $str .= ' and addtime>' . $times . '';
     }
     if (!empty($cid)) {
         $str .= ' and cid in (' . $cid . ')';
     }
     if (!empty($ids)) {
         $str .= ' and id in (' . $ids . ')';
     }
     if ($ksid > 0 && $jsid > 0) {
         $str .= ' and id>' . ($ksid - 1) . ' and id<' . ($jsid + 1) . '';
     }
     if (!empty($kstime) && !empty($jstime)) {
         $ktime = strtotime($kstime) - 86400;
         $jtime = strtotime($jstime) + 86400;
         $str .= ' and addtime>' . $ktime . ' and addtime<' . $jtime . '';
     }
     $limit = '';
     if ($newid > 0) {
         $limit = ' order by id desc limit ' . $newid;
     }
     if ($datacount == 0) {
         $sqlstr = "select id from " . CS_SqlPrefix . "pic_type where yid=0 and hid=0 " . $str . $limit;
         $datacount = $this->db->query($sqlstr)->num_rows();
         //总数量
         $pagejs = ceil($datacount / Html_PageNum);
     }
     if ($datacount == 0) {
         $pagejs = 1;
     }
     $pagesize = Html_PageNum;
     if ($datacount < $pagesize) {
         $pagesize = $datacount;
     }
     //全部生成完毕
     if ($page > $pagejs) {
         admin_msg('所有内容页全部生成完毕~!', site_url('pic/admin/html/show'));
     }
     //公众URI
     $uri = '?day=' . $day . '&cid=' . $cid . '&ids=' . $ids . '&newid=' . $newid . '&ksid=' . $ksid . '&jsid=' . $jsid . '&kstime=' . $kstime . '&jstime=' . $jstime . '&pagesize=' . $pagesize . '&pagejs=' . $pagejs . '&datacount=' . $datacount;
     //重新定义模板路径
     $this->load->get_templates('pic', 2);
     echo '<LINK href="' . base_url() . 'packs/admin/css/style.css" type="text/css" rel="stylesheet"><br>';
     echo '&nbsp;&nbsp;<b>正在开始生成相册内容,分<font color=red>' . $pagejs . '</font>次生成,当前第<font color=red>' . $page . '</font>次</b><br/>';
     $sql_string = "select * from " . CS_SqlPrefix . "pic_type where yid=0 and hid=0 " . $str . " order by id desc";
     $sql_string .= ' limit ' . $pagesize * ($page - 1) . ',' . $pagesize;
     $query = $this->db->query($sql_string);
     //获取内容页是否需要生成
     $html = config('Html_Uri', 'pic');
     foreach ($query->result_array() as $row) {
         ob_end_flush();
         //关闭缓存
         $id = $row['id'];
         //获取静态路径
         $Htmllinks = LinkUrl('show', 'id', $row['id'], 0, 'pic');
         //转换成生成路径
         $Htmllink = adminhtml($Htmllinks, 'pic');
         //摧毁部分需要超级链接字段数组
         $rows = $row;
         //先保存数组保留下面使用
         unset($row['tags']);
         unset($row['hits']);
         unset($row['yhits']);
         unset($row['zhits']);
         unset($row['rhits']);
         unset($row['dhits']);
         unset($row['chits']);
         unset($row['content']);
         //默认模板
         $skins = empty($row['skins']) ? 'show.html' : $row['skins'];
         $arr['cid'] = getChild($row['cid']);
         $arr['uid'] = $row['uid'];
         $arr['tags'] = $rows['tags'];
         $arr['sid'] = $row['id'];
         //装载模板并输出
         $Mark_Text = $this->CsdjTpl->plub_show('pic', $row, $arr, TRUE, $skins, $row['name'], $row['name']);
         //评论
         $Mark_Text = str_replace("[pic:pl]", get_pl('pic', $id), $Mark_Text);
         //分类地址、名称
         $Mark_Text = str_replace("[pic:link]", LinkUrl('show', 'id', $row['id'], 1, 'pic'), $Mark_Text);
         $Mark_Text = str_replace("[pic:classlink]", LinkUrl('lists', 'id', $row['cid'], 1, 'pic'), $Mark_Text);
         $Mark_Text = str_replace("[pic:classname]", $this->CsdjDB->getzd('pic_list', 'name', $row['cid']), $Mark_Text);
         //获取上下篇
         preg_match_all('/[pic:slink]/', $Mark_Text, $arr);
         if (!empty($arr[0]) && !empty($arr[0][0])) {
             $rowd = $this->db->query("Select id,cid,pic,name from " . CS_SqlPrefix . "pic_type where yid=0 and hid=0 and id<" . $id . " order by id desc limit 1")->row();
             if ($rowd) {
                 $Mark_Text = str_replace("[pic:slink]", LinkUrl('show', 'id', $rowd->id, 1, 'pic'), $Mark_Text);
                 $Mark_Text = str_replace("[pic:sname]", $rowd->name, $Mark_Text);
                 $Mark_Text = str_replace("[pic:sid]", $rowd->id, $Mark_Text);
                 $Mark_Text = str_replace("[pic:spic]", piclink('pic', $rowd->pic), $Mark_Text);
             } else {
                 $Mark_Text = str_replace("[pic:slink]", "#", $Mark_Text);
                 $Mark_Text = str_replace("[pic:sname]", "没有了", $Mark_Text);
                 $Mark_Text = str_replace("[pic:sid]", 0, $Mark_Text);
                 $Mark_Text = str_replace("[pic:spic]", piclink('pic', ''), $Mark_Text);
             }
         }
         unset($arr);
         preg_match_all('/[pic:xlink]/', $Mark_Text, $arr);
         if (!empty($arr[0]) && !empty($arr[0][0])) {
             $rowd = $this->db->query("Select id,cid,pic,name from " . CS_SqlPrefix . "pic_type where yid=0 and hid=0 and id>" . $id . " order by id asc limit 1")->row();
             if ($rowd) {
                 $Mark_Text = str_replace("[pic:xlink]", LinkUrl('show', 'id', $rowd->id, 1, 'pic'), $Mark_Text);
                 $Mark_Text = str_replace("[pic:xname]", $rowd->name, $Mark_Text);
                 $Mark_Text = str_replace("[pic:xid]", $rowd->id, $Mark_Text);
                 $Mark_Text = str_replace("[pic:xpic]", piclink('pic', $rowd->pic), $Mark_Text);
             } else {
                 $Mark_Text = str_replace("[pic:xlink]", "#", $Mark_Text);
                 $Mark_Text = str_replace("[pic:xname]", "没有了", $Mark_Text);
                 $Mark_Text = str_replace("[pic:xid]", 0, $Mark_Text);
                 $Mark_Text = str_replace("[pic:xpic]", piclink('pic', ''), $Mark_Text);
             }
         }
         unset($arr);
         //标签加超级连接
         $Mark_Text = str_replace("[pic:tags]", SearchLink($rows['tags']), $Mark_Text);
         //动态人气
         $Mark_Text = str_replace("[pic:hits]", "<script src='" . hitslink('hits/dt/hits/' . $id, 'pic') . "'></script>", $Mark_Text);
         $Mark_Text = str_replace("[pic:yhits]", "<script src='" . hitslink('hits/dt/yhits/' . $id, 'pic') . "'></script>", $Mark_Text);
         $Mark_Text = str_replace("[pic:zhits]", "<script src='" . hitslink('hits/dt/zhits/' . $id, 'pic') . "'></script>", $Mark_Text);
         $Mark_Text = str_replace("[pic:rhits]", "<script src='" . hitslink('hits/dt/rhits/' . $id, 'pic') . "'></script>", $Mark_Text);
         $Mark_Text = str_replace("[pic:dhits]", "<script src='" . hitslink('hits/dt/dhits/' . $id, 'pic') . "'></script>", $Mark_Text);
         $Mark_Text = str_replace("[pic:chits]", "<script src='" . hitslink('hits/dt/chits/' . $id, 'pic') . "'></script>", $Mark_Text);
         //获取当前相册总数
         $pcount = $this->db->query("Select id from " . CS_SqlPrefix . "pic where sid=" . $id . " and hid=0 and yid=0")->num_rows();
         $Mark_Text = str_replace("[pic:count]", $pcount, $Mark_Text);
         //第一张图片
         $rowp = $this->db->query("Select pic,content from " . CS_SqlPrefix . "pic where sid=" . $id . " and hid=0 and yid=0 order by id desc limit 1")->row();
         $pics = $rowp ? $rowp->pic : '';
         $content = $rowp ? $rowp->content : '';
         $Mark_Text = str_replace("[pic:url]", piclink('pic', $pics), $Mark_Text);
         $Mark_Text = str_replace("[pic:content]", $content, $Mark_Text);
         //增加人气
         $Mark_Text = hits_js($Mark_Text, hitslink('hits/ids/' . $id, 'pic'));
         //生成
         write_file(FCPATH . $Htmllink, $Mark_Text);
         echo "&nbsp;<font style=font-size:10pt;>生成相册:<font color=red>" . $row['name'] . "</font>成功:<a href=" . $Htmllinks . " target=_blank>" . $Htmllinks . "</a></font><br/>";
         ob_flush();
         flush();
     }
     if (!empty($ids)) {
         $url = 'javascript:history.back();';
         $str = "&nbsp;&nbsp;<b>全部生成完毕&nbsp;>>>>&nbsp;&nbsp;<a href='" . $url . "'>如果您的 浏览器没有跳转,请点击继续...</a></b>";
     } else {
         $url = site_url('pic/admin/html/show_save') . $uri . '&page=' . ($page + 1);
         $str = "&nbsp;&nbsp;<b>暂停" . Html_StopTime . "秒后继续&nbsp;>>>>&nbsp;&nbsp;<a href='" . $url . "'>如果您的 浏览器没有跳转,请点击继续...</a></b>";
     }
     echo "</br>" . $str . "<script>setTimeout('updatenext();'," . Html_StopTime . "000);function updatenext(){location.href='" . $url . "';}</script>";
 }
Esempio n. 7
0
 public function cais()
 {
     header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
     header("Cache-Control: no-cache, must-revalidate");
     header("Pragma: no-cache");
     if (empty($_SERVER['HTTP_REFERER'])) {
         exit('QQ:848769359');
     }
     $id = intval($this->input->get_post('id', TRUE));
     $callback = $this->input->get('callback', true);
     $lists = array();
     $row2 = $this->db->query("select cid from " . CS_SqlPrefix . "dance where id='" . $id . "'")->row();
     $result2 = $this->db->query("select id,singerid,name,tid,fid,purl,sc,lrc from " . CS_SqlPrefix . "dance where cid=" . $row2->cid . " and yid=0 and hid=0 order by rand() desc LIMIT 10");
     $j = 0;
     foreach ($result2->result() as $row) {
         $lrc = str_checkhtml($row->lrc);
         if (empty($lrc)) {
             $lrc = '0';
         }
         $tpic = piclink('dancetopic', '');
         $topic = '-';
         $topiclink = '###';
         if ($row->tid > 0) {
             $rowt = $this->db->query("select id,pic,name from " . CS_SqlPrefix . "dance_topic where id=" . $row->tid . "")->row();
             if ($rowt) {
                 $topiclink = LinkUrl('topic/show', 'id', $row->tid, 1, 'dance');
                 $tpic = piclink('dancetopic', $rowt->pic);
                 $topic = $rowt->name;
             }
         }
         $purl = $row->purl;
         if ($row->fid > 0) {
             $rowf = $this->db->query("Select purl from " . CS_SqlPrefix . "dance_server where id=" . $row->fid . "")->row();
             if ($rowf) {
                 $purl = $rowf->purl . $row->purl;
             }
         }
         $singer = getzd('singer', 'name', $row->singerid);
         $lists[$j]['name'] = get_bm($row->name, 'gbk', 'utf-8');
         $lists[$j]['singer'] = empty($singer) ? '' : get_bm($singer, 'gbk', 'utf-8');
         $lists[$j]['singerlink'] = LinkUrl('show', 'id', $row->singerid, 1, 'singer');
         $lists[$j]['downlink'] = LinkUrl('down', 'id', $row->id, 1, 'dance');
         $lists[$j]['tpic'] = $tpic;
         $lists[$j]['topic'] = get_bm($topic, 'gbk', 'utf-8');
         $lists[$j]['topiclink'] = $topiclink;
         $lists[$j]['url'] = get_bm($purl, 'gbk', 'utf-8');
         $lists[$j]['id'] = $row->id;
         $lists[$j]['time'] = $this->get_time($row->sc);
         $lists[$j]['lrc'] = get_bm($lrc, 'gbk', 'utf-8');
         $j++;
     }
     echo $callback . "(" . json_encode($lists) . ")";
 }