в настоящее время я работаю с фреймворком codeigniter, но не понимаю, как изменить размер изображения. Я следил за документацией, но все еще не понимаю. Это мой код
public function create(){
//Check login
if (!$this->session->userdata('logged_in')){
redirect('users/login');
}
$data['title'] = 'Create Post';
$data['categories'] = $this->BlogModel->get_categories();
$this->form_validation->set_rules('title','title','required');
$this->form_validation->set_rules('content','content','required');
if ($this->form_validation->run() === FALSE){
$this->load->view('frontend/header');
$this->load->view('frontend/navbar');
$this->load->view('frontend/blog/create',$data);
$this->load->view('frontend/footer');
} else{
//Upload Image
$config['upload_path'] = './assets/images/posts/blog';
$config['allowed_types'] = 'gif|jpg|png';
$config['max_size'] = '2048';
$config['max_width'] = '0';
$config['max_height'] = '0';
$this->load->library('upload', $config);
if (!$this->upload->do_upload()){
$errors = array('error' => $this->upload->display_errors());
$post_image = 'noimage.jpg';
}else{
$data = array('upload_data' => $this->upload->data());
$post_image = $_FILES['userfile']['name'];
}
$this->BlogModel->create_post($post_image);
//set message
$this->session->set_flashdata('post_created','Your post has been created');
redirect('blog');
}
}
Посоветуйте, пожалуйста, как изменить размер изображения.
Спасибо!
привет @LawrenceCherone Я пробовал документацию, изображения могут быть загружены в мою папку, но для изменения размера изображений все еще не работает ссылка на сайт
^ нигде в этом коде (который вы должны были включить здесь вместо того, что у вас есть выше) вы загружаете класс библиотеки изображений (вы просто инициализируете его - не то же самое) ... как это не дает вам ошибок? ты развиваешься без ошибок? вы загрузили его автоматически или где-то еще?






Если вы хотите делать разные вещи, например напрямую изменять размер исходного изображения, вместо создания большого пальца, установите для create_thumb значение false и не используйте new_image. Единственное различие между create_thumb и new_image состоит в том, что new_image позволяет вам указать свой собственный путь и имя. В то время как с create_thumb вы можете только заменить thumb_marker. Это все в документы ...
//Upload Image
$config['upload_path'] = './assets/images/posts/blog';
$config['allowed_types'] = 'gif|jpg|png';
$config['max_size'] = '2048';
$config['max_width'] = '0';
$config['max_height'] = '0';
$this->load->library('upload', $config);
if (!$this->upload->do_upload()) {
//$errors = array('error' => $this->upload->display_errors());
exit($this->upload->display_errors());
$post_image = 'noimage.jpg';
} else {
$up_data = $this->upload->data();
$post_image = $up_data['name'];
$config = array(); // clear prev config
$config['image_library'] = 'gd2';
$config['source_image'] = $up_data['full_path'];
$config['create_thumb'] = TRUE;
$config['thumb_marker'] = '_thumbnail';
$config['maintain_ratio'] = TRUE;
$config['width'] = 75;
$config['height'] = 50;
$this->load->library('image_lib', $config);
if (!$this->image_lib->resize()) {
exit($this->image_lib->display_errors());
}
$thumb_path = $up_data['file_path'] . $up_data['raw_name'] . $config['thumb_marker'] . $up_data['file_ext'];
}
Выходы вы можете удалить позже, но оставьте их для отладки, пока вы не выясните, как правильно сообщать о своих ошибках (я предлагаю сессионные переменные). Эти функции также следует перенести в модель.