用户
 找回密码
 入住 CI 中国社区
搜索
查看: 1845|回复: 8
收起左侧

[HELP] ci图片处理(急)

[复制链接]
发表于 2016-5-20 09:23:36 | 显示全部楼层 |阅读模式
本帖最后由 依然 于 2016-5-20 09:31 编辑

新人维护公司网站才接触CI不久,开发版本好像是2.x,对图片处理还不了解,手册试了下没能搞定,情况紧急不得已才伸手,求大神勿喷,问题如下:


上面图片点击图片后如下,想在下面张图片可以有放大查看的功能,如何实现?

方法代码如下:
function look_gallery($com_id,$album_id)
   {

      $data                          =  array();
      
//           
//     $com        =     $this->coms_model->select_id($com_id,'accounts');     
//   
//    if(!$com['is_pay'])
//    {
//         
//       redirect('coms/mentions?redirect='.urlencode(current_url()));
//            
//    }   
$data['com_id']                      =  $com_id;
      $data['album_id']                 =  $album_id;
      $data['account_infos']             =  $this->coms_model->select_id($com_id,'accounts');
   
      $rows                          =  6;
      $offset                          =  $this->uri->segment(5, 1);
      //分页star
$config['uri_segment']              =  '5';
      $config['base_url']                  =  site_url('coms/look_gallery').'/'. $com_id . '/' .$album_id;
      $config['total_rows']                =  $this->coms_model->select_limit(array('term'=>array('album_id'=>$album_id),'return_count'=>1), 'account_photo');
      $config['per_page']                  =  $rows;
      $config['full_tag_open']             =  '<li class="pagination">'; //把打开的标签放在所有结果的左侧
$config['full_tag_close']            =  '</li>'; //把打开的标签放在所有结果的
$config['num_tag_open']             =  '';
      $config['num_tag_close']             =  '';
      $config['prev_link']               =  '上一页';
      $config['next_link']               =  '下一页';
      $config['next_tag_open']            =  '<span class="next">';
      $config['next_tag_close']           =  '</span>';
      $config['prev_tag_open']            =  '<span class="prev">';
      $config['prev_tag_close']           =  '</span>';
      $config['cur_tag_open']             =  '<a class="current" href="javascript:void(0)">';
      $config['cur_tag_close']            =  '</a>';
      $config['num_links']               =  9; //放在你当前页码的前面和后面的“数字”链接的数量
$config['use_page_numbers']          =  TRUE;
      $this->pagination->initialize($config);
      //放到数组里面传给视图
$data['pagination']                     = $this->pagination->create_links();
      
      $gallery                        =  $this->coms_model->select_id($album_id,'account_album');
      $data['gallery_name']              =  $gallery['name'];
      
//        $hot_searchword                 =   $data['account_infos']['hot_search'];
//        $hot_searcharray                =    explode(',',$hot_searchword);
//        $data['hot_search1']            =   $hot_searcharray[0];
//        $data['hot_search2']            =   $hot_searcharray[1];
//        $data['hot_search3']            =   $hot_searcharray[2];
//        $data['hot_search4']            =   $hot_searcharray[3];
$data['info']                 =  $this->common_model->select_id($com_id,'accounts');
      
      $data['photos']                      =  $this->coms_model->select_limit(array('term'=>array('album_id'=>$album_id),'limit'=>$rows,'page' => ($offset-1)*$rows),'account_photo');
   
      $this->load->view($this->config->item('template_folder').'/default/look_gallery', $data);
   }
   
   
   
   function look_photo($com_id,$photo_id)
   {
      
      $data                          =  array();
      
            
//     $com        =     $this->coms_model->select_id($com_id,'accounts');     
//   
//    if(!$com['is_pay'])
//    {
//         
//       redirect('coms/mentions?redirect='.urlencode(current_url()));
//            
//    }   
$data['com_id']                      =  $com_id;
      
      $data['account_infos']             =  $this->coms_model->select_id($com_id,'accounts');
      
      $data['photo']                   =  $this->coms_model->select_id($photo_id,'account_photo');
      
//        $hot_searchword                 =   $data['account_infos']['hot_search'];
//        $hot_searcharray                =    explode(',',$hot_searchword);
//        $data['hot_search1']            =   $hot_searcharray[0];
//        $data['hot_search2']            =   $hot_searcharray[1];
//        $data['hot_search3']            =   $hot_searcharray[2];
//        $data['hot_search4']            =   $hot_searcharray[3];
$data['info']                 =  $this->common_model->select_id($com_id,'accounts');
      
      
      
      $this->load->view($this->config->item('template_folder').'/default/look_photo', $data);
   }




 楼主| 发表于 2016-5-20 09:25:25 | 显示全部楼层
补第二张图。。。

发表于 2016-5-20 09:32:01 | 显示全部楼层
無論你是要點圖後放大,或是鼠標移過去後放大
建議使用 JQuery 的功能特效來完成

CI 的圖像處理類比較偏向建立略縮圖與浮水印等
 楼主| 发表于 2016-5-20 09:34:41 | 显示全部楼层
Closer 发表于 2016-5-20 09:32
無論你是要點圖後放大,或是鼠標移過去後放大
建議使用 JQuery 的功能特效來完成

这么麻烦?ci没有这类功能么?JQuery还没学过。。。才在补习ci呢
发表于 2016-5-20 09:59:17 | 显示全部楼层
依然 发表于 2016-5-20 09:34
这么麻烦?ci没有这类功能么?JQuery还没学过。。。才在补习ci呢

剛看了一下 CI 的圖像處理類,似乎也是可以做到放大

其中你提供的 look_gallery 只是你第一張圖的分頁類
其實無關你要問的

而你實際要問的 look_photo 卻又沒有提供你呼叫的內碼
$this->coms_model->select_id()
$this->common_model->select_id()

沒提供上述兩個 functioin 的話,實在不曉得你哪邊有問題
你應該有用 CI 手冊 - 圖像處理類 來試圖處理圖片使其放大吧 ?

 
 楼主| 发表于 2016-5-20 10:13:18 | 显示全部楼层
Closer 发表于 2016-5-20 09:59
剛看了一下 CI 的圖像處理類,似乎也是可以做到放大

其中你提供的 look_gallery 只是你第一張圖的分頁類 ...

好的,试着研究看看
能ci搞定还是ci吧。js的话好像要在页面图片显示里写。。。我连页面图片显示在哪里都没找到。。。代码实在太乱
发表于 2016-5-20 11:33:11 | 显示全部楼层
用js来实现把
 楼主| 发表于 2016-5-20 11:40:12 | 显示全部楼层

好像只有这个了。想问的是能不能在控制器里直接用js实现啊,主要是页面的代码太乱。。。
发表于 2016-5-20 11:43:27 | 显示全部楼层
依然 发表于 2016-5-20 11:40
好像只有这个了。想问的是能不能在控制器里直接用js实现啊,主要是页面的代码太乱。。。 ...

你看看 你要改那个页面的控制器是哪个然后看那个控制器load的是哪个view不就能找到了吗

本版积分规则