我看到了CI文档来创建图像上传器。
这是我的Controller
:
<?php
class Upload extends CI_Controller {
function __construct()
{
parent::__construct();
$this->load->helper(array('form', 'url'));
}
function index()
{
$this->load->view('upload_form', array('error' => ' ' ));
}
function do_upload()
{
$this->load->helper(array('form', 'url'));
$this->load->helper('url');
$config['upload_path'] = './uploads/';
$config['allowed_types'] = 'gif|jpg|png';
$config['max_size'] = '0';
$config['max_width'] = '0';
$config['max_height'] = '0';
$this->load->library('upload', $config);
if ( ! $this->upload->do_upload())
{
echo $this->upload->display_error();
return FALSE;
}
else
{
$data = $this->upload->data();
return TRUE;
}
}
}
这是我的View
<html>
<head>
<title>Upload Form</title>
</head>
<body>
<form action="upload/do_upload" method="post" accept-charset="utf-8" enctype="multipart/form-data">
<input type="file" name="userfile" size="20" />
<br /><br />
<input type="submit" value="upload" />
</form>
</body>
</html>
但是当我上传图片时它没有上传它,$this->upload->display_error()
什么都没显示(我的ci根文件夹中的上传文件夹也有777 permision,我正在使用wamp)
答案 0 :(得分:1)
两个指针:
<input type="file" name="userfile" size="20" />
检查您使用的文件是否超过并且文件是否正在上传。
echo $this->upload->display_errors();
请display_errors
与s
一起使用。
<强>建议:强>
在表单的action属性中使用绝对URL,如:
action="<?php echo base_url() ?>upload/do_upload"
在您的函数do_upload()
中,执行print_r($_FILEs)
,确认文件已正确上传且没有错误。
答案 1 :(得分:0)
我将名为function do_upload()
的函数更改为function somethingelse()
并解决了我的问题(因为我正在调用内置函数)