ci图片处理(急)
本帖最后由 依然 于 2016-5-20 09:31 编辑新人维护公司网站才接触CI不久,开发版本好像是2.x,对图片处理还不了解,手册试了下没能搞定,情况紧急不得已才伸手,求大神勿喷,问题如下:
http://codeigniter.org.cn/forums/data/attachment/album/201605/20/091604xk445vryv4yi9rw5.png
上面图片点击图片后如下,想在下面张图片可以有放大查看的功能,如何实现?
http://codeigniter.org.cn/forums/data/attachment/album/201605/20/091601ewebo02nndxrzoy2.png
方法代码如下:
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;
// $data['hot_search2'] = $hot_searcharray;
// $data['hot_search3'] = $hot_searcharray;
// $data['hot_search4'] = $hot_searcharray;
$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;
// $data['hot_search2'] = $hot_searcharray;
// $data['hot_search3'] = $hot_searcharray;
// $data['hot_search4'] = $hot_searcharray;
$data['info'] =$this->common_model->select_id($com_id,'accounts');
$this->load->view($this->config->item('template_folder').'/default/look_photo', $data);
}
补第二张图。。。
http://codeigniter.org.cn/forums/home.php?mod=space&uid=46664&do=album&picid=936
無論你是要點圖後放大,或是鼠標移過去後放大
建議使用 JQuery 的功能特效來完成
CI 的圖像處理類比較偏向建立略縮圖與浮水印等 Closer 发表于 2016-5-20 09:32
無論你是要點圖後放大,或是鼠標移過去後放大
建議使用 JQuery 的功能特效來完成
这么麻烦?ci没有这类功能么?JQuery还没学过。。。才在补习ci呢:'( 依然 发表于 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 手冊 - 圖像處理類 來試圖處理圖片使其放大吧 ?
Closer 发表于 2016-5-20 09:59
剛看了一下 CI 的圖像處理類,似乎也是可以做到放大
其中你提供的 look_gallery 只是你第一張圖的分頁類 ...
好的,试着研究看看
能ci搞定还是ci吧。js的话好像要在页面图片显示里写。。。我连页面图片显示在哪里都没找到。。。代码实在太乱 用js来实现把 黑鲤_Qv8P7 发表于 2016-5-20 11:33
用js来实现把
好像只有这个了。想问的是能不能在控制器里直接用js实现啊,主要是页面的代码太乱。。。 依然 发表于 2016-5-20 11:40
好像只有这个了。想问的是能不能在控制器里直接用js实现啊,主要是页面的代码太乱。。。 ...
你看看 你要改那个页面的控制器是哪个然后看那个控制器load的是哪个view不就能找到了吗
页:
[1]