gpt4 book ai didi

php - CodeIgniter - 如何显示来自 do_upload 的错误消息

转载 作者:可可西里 更新时间:2023-11-01 00:02:46 25 4
gpt4 key购买 nike

我想在重定向链接上显示内容插入的成功消息。这是我的 Controller 代码:-

public function do_upload($field) {
$config['upload_path'] = './uploads/';
$config['allowed_types'] = 'gif|jpg|png';
$config['max_size'] = '100000';
$config['max_width'] = '3000';
$config['max_height'] = '3000';

$this->load->library('upload', $config);

if (!$this->upload->do_upload($field)) {
$error = array('error' => $this->upload->display_errors());

return $error;
} else {

$updata =$this->upload->data();
$data = $updata['raw_name'].$updata['file_ext'];
return $data;
}


}


public function index() {

$this->load->model('blog');

if(isset($_POST['post']) && (!empty($_POST['post']) || strlen($_FILES['inputUpProfile']['name']) > 0) ){
if(strlen($_FILES['inputUpProfile']['name']) > 0)
{
$pic = $this->do_upload('inputUpProfile');
print_r($pic);
if ($this->input->post('post') == ''){$type="image";} else {$type="image-with-text";}
}

else {$pic = ""; $type = "text"; }

$result = $this->blog->addPost($_SESSION['user_id'], $type , $this->input->post('post'),$pic);
}
$this->template->build('home_view',$this->data);
}

当上传的图片大于 3000 时,会显示这条消息

Array ( [error] =>

The filetype you are attempting to upload is not allowed.
)

如何在我的 View 中读取此错误??

============================================= =

更新:-

错误信息是这样的:-

Array ( [error] =>

The filetype you are attempting to upload is not allowed.
)
A PHP Error was encountered

Severity: Notice

Message: Array to string conversion

Filename: mysql/mysql_driver.php

Line Number: 552
A PHP Error was encountered

Severity: Warning

Message: Cannot modify header information - headers already sent by (output started at E:\AppServ\www\cc\ccc\application\controllers\home.php:83)

Filename: core/Common.php

Line Number: 442
A Database Error Occurred

Error Number: 1054

Unknown column 'Array' in 'field list'

INSERT INTO `events` (`ev_user_id`, `ev_type`, `ev_text`, `ev_pic`, `ev_date`) VALUES (445, 'image', '', Array, '2013-10-03 23:51:47')

Filename: E:\AppServ\www\cc\ccc\system\database\DB_driver.php

Line Number: 330

最佳答案

如果你遇到这样的错误

Array ( [error] =>
The filetype you are attempting to upload is not allowed.
)

在 Controller 中你可以这样做

if (!$this->upload->do_upload($field)) {
$error = array('error' => $this->upload->display_errors());
$this->session->set_flashdata('error',$error['error']);
redirect('your_function_which_loads_the_view','refresh');
}

然后在 View 页面中做类似的事情

if($this->session->flashdata('error')){echo $this->session->flashdata('error');}

如果您遇到任何问题,请告诉我。

关于php - CodeIgniter - 如何显示来自 do_upload 的错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19168581/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com