【发布时间】:2016-12-27 07:37:52
【问题描述】:
我正在尝试使用 codeigniter 的上传库在我的网站中添加文件上传功能。
这是我的视图文件(display.php):
<html>
<body>
<form method="post" action="" enctype="multipart/form-data">
<input type="file" name="filename" />
<input type="submit" name="submit" id="submit" value="submit"/>
</form>
</body>
</html>
这是控制器:
public function testupload()
{
if ( ! empty($_FILES))
{
echo 'start upload';
$config['upload_path'] = './assets/img/tempfile/';
$this->load->library('upload');
$this->upload->initialize($config);
if ( ! $this->upload->do_upload('filename'))
{
echo 'error!';
}
else
{
echo 'success!';
}
echo 'end upload';
}
$this->load->view('display', $this->data);
}
但代码似乎在$this->upload->initialize($config); 文件未上传后停止,根本没有任何消息。只出现'start upload' 消息; echo 'success' 、 echo 'error' 和 echo 'end upload' 不会出现。
这是为什么呢?谁能帮帮我??
【问题讨论】:
-
使用
$this->upload->display_errors()调试错误 -
启用调试模式。
ini_set('display_errors', '1'); error_reporting(E_ALL);并把这个也打印出来$this->upload->display_errors(); -
不。没有任何工作。如果放在
$this->upload->do_upload('filename');之后,即使是简单的echo 'blabla';也不起作用。我尝试了@Naga 的建议,但仍然没有。 -
你的操作是空的,试试
action="<?php echo base_url('controller/function');?>"不要去自动加载url助手 -
我想如果action属性是空字符串,它会指向同一个函数吗?无论如何,我尝试将上传部分放到另一个函数中,但仍然相同。只出现了
start upload消息,之后就没有了。
标签: php codeigniter file-upload