php - 使用codeigniter错误上传图片
问题描述
我正在尝试在代码点火器中制作图像上传表单,但出现以下错误。
严重性:通知
消息:未定义索引:image_file
文件名:控制器/men.php
行号:23
回溯:
文件:C:\xampp\htdocs\CodeIgniter-3.1.8\application\controllers\men.php 行:23 功能:_error_handler
文件:C:\xampp\htdocs\CodeIgniter-3.1.8\index.php 行:315 功能:require_once
这是我的视图、控制器和模型代码
1) 查看
<!DOCTYPE html>
<html>
<head>
<title>image</title>
<link rel="stylesheet" type="text/css" href="<?php echo base_url();?>/public/css/bootstrap.css">
</head>
<body>
<form method="post" action="<?php echo base_url()?>men/image_upload" id="upload_form" />
<input type="file" name="image_file">
<input type="submit" id="upload" name="upload" value="Upload" />
</form>
</body>
</html>
2) 控制器
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Men extends CI_Controller
{
public function index(){
$this->load->view("imageupload");
}
public function image_upload(){
$config['upload_path']='./uploads';
$config['allowed_types']='*';
$this->load->library('upload',$config);
$this->upload->do_upload('image_file');
$image_file = $this->upload->data();
$data=array('image_file'=> $image_file['image_file']);
$this->load->model("mymodel");
$this->mymodel->imagedone($data);
}
}
?>
3) 型号
<?php
class Mymodel extends CI_Model{
function imagedone($data){
$query = $this->db->insert("image_tbl",$data);
if($query)
{
echo "File is uploaded";
}
else{
echo "failure";
}
}
}
解决方案
这个错误可能是由于表单标签的属性缺失导致的,在表单标签中添加 -> enctype="multipart/form-data" 属性并尝试如下:
<form method="post" action="<?php echo base_url()?>men/image_upload" id="upload_form" enctype="multipart/form-data" />
<input type="file" name="image_file">
<input type="submit" id="upload" name="upload" value="Upload" />
</form>
推荐阅读
- ibm-mq - MQ Copybook 库
- reactjs - 需要在我的反应状态对象上添加数量
- reactjs - Algolia 自动完成并在输入键或提交时显示在结果页面中
- css - 为什么这些东西与隐藏的 CSS 溢出不同?
- json - scala ujson.read() 返回 ujson.Obj
- spring - Spring Boot Actuator Endpoints 安全性不适用于 Spring Boot 1.5.22
- c# - 如何让 Visual Studio Code 配置和查找 .NET
- php - 向现有 HTML 元素添加额外的空属性
- count - 谷歌表格:独特项目的计数,考虑两个标准
- python - 随机森林的准确性非常低