我有一个需要上传照片的应用程序,已在 codeigniter 中完成,可在 localhost 上正常工作,但无法在线工作。
查看页面代码:
<div>
<form id="uploadimage" method="POST" name="uploadimage" action="<?php echo base_url(); ?>onebachhpan/savephoto" enctype="multipart/form-data">
<input type="file" name="userfile" id="userfile" accept="image/*" /><br/><br/>
<input type="submit" class="button_example" id="upload_button" name="upload_button" value="Upload"/>
</form>
<br/>
<form id="removeimage" method="POST" name="removeimage" action="<?php echo base_url(); ?>onebachhpan/removephoto" enctype="multipart/form-data">
<input type="submit" style="position: absolute; left: 100px; top: 64px; " class="button_example" id="delete_button" name="delete_button" value="Delete"/>
</form>
</div>
以下是图像上传的控制器代码:这在 localhost 上运行良好:
控制器代码:
function savephoto()
{
$this->load->library('session');
$this->load->library('image_lib');
$config['image_library'] = 'gd2';
$config['upload_path'] = './profilepic/'; //location to store image
$config['allowed_types'] = 'gif|jpg|png';
$this->load->library('upload', $config);
if ( ! $this->upload->do_upload('userfile'))
{
$error = array('error' => $this->upload->display_errors());
redirect(base_url().'uploaderror');
}
else
{
$photo = $this->upload->data();
$data['photo'] = $photo;
$id = $this->session->userdata('MemberId');
$filename = $photo['file_name'];
$extension = $photo['file_ext'];
$this->load->model('profile_model');
$this->profile_model->photo($extension,$id);
// echo "<pre>";print_r($photo);
$newpath = './profilepic/'.$id.$extension;
$config['source_image'] = './profilepic/'.$filename;
$config['overwrite']=true;
$config['new_image'] = $newpath;
$config['width'] = '170';
$config['height'] = '240';
$config['maintain_ratio'] = true;
//$this->load->library('image_lib', $config);
$this->image_lib->initialize($config);
$this->image_lib->resize();
unlink('./profilepic/'.$filename);
//$this->load->view('onebachhpan_index');
redirect(base_url().'profile');
}
}