0

我使用 codeigniter 上传库将图像上传到服务器。它适用于所有其他图像类型,但我无法将 png 图像上传到在线服务器。它在我的本地服务器上也适用于包括 png 在内的所有图像类型。问题仅存在于 png 图像的服务器中

下面是我的控制器功能

function insertpartner(){

    $data['success'] = "";
    $data['error'] = "";
    $this->load->library('form_validation', 'session');
    $this->form_validation->set_error_delimiters('<div class="errorMsg">', '</div>');
    $this->form_validation->set_rules('txtTitle', ' title', 'required');

    if ($this->form_validation->run() == FALSE) {
        redirect('sitemanager/partners/addpartners');
    } else {
        if (isset($_FILES['userfile']['tmp_name']) && $_FILES['userfile']['tmp_name'] != "") {

            $config['upload_path'] = './uploads/partnerlogo/';
            $config['allowed_types'] = 'gif|jpg|png|bmp|jpeg';
            //$config['max_size'] = '20000';
            //$config['max_width'] = '800';
            //$config['max_height'] = '700';

            $this->load->library('upload', $config);   //--------------- Loading image uploading library------------------

            $configThumb = array();
            $configThumb['image_library'] = 'gd2';
            $configThumb['source_image'] = '';
            $configThumb['maintain_ratio'] = TRUE;
            $configThumb['width'] = 140;
            $configThumb['height'] = 70;

            $this->load->library('image_lib');        //--------------- Loading image_library for resizing the image-----

            if (!$this->upload->do_upload('userfile')) {
                $data['error'] = "<div class='error'>" . $this->upload->display_errors() . "</div>";
                $data['success'] = "";
                $data['category'] = $this->m_adminlogin->showcategories();
                redirect('sitemanager/partners/addpartners',$data);
            } else {
                $data = $this->upload->data();
                $imgPath = $data['file_name'];
                $config['remove_space'] = TRUE;
                $configThumb['source_image'] = $data['full_path'];
                $configThumb['new_image'] = "./uploads/partnerlogo/thumbs/" . $data['file_name'];
                $this->image_lib->initialize($configThumb);
                if (!$this->image_lib->resize()) {
                    $data['error'] = "<div class='error'>Thumbnail creation failed.</div>";
                    $data['success'] = "";
                    redirect('sitemanager/partners/addpartners',$data);
                }
            }
        } 
        //$url=$this->input->post('txturl');
        //$url="http://".$url;
        $partnerdetails = array(
            'categoryId' => $this->input->post('selCategory'),
           /* 'intfeatured' => $featured,*/
            'name' => $this->input->post('txtTitle'),
            'logo' => $imgPath,
            'url'  =>$this->input->post('txturl')
        );


        if ($this->m_partners->insertpartners($partnerdetails))
            $this->session->set_flashdata('success', "<div class='success'>Successfully added  Details.</div>");
        else
            $this->session->set_flashdata('failure', "<div class='error'>Try after sometimes.</div>");
        redirect("sitemanager/partners/viewpartners", $data);
    }
   }
4

0 回答 0