首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Codeigniter :如何使用codeigniter上传多张图片

CodeIgniter是一个轻量级的PHP开发框架,它提供了一套简单而优雅的工具和库,帮助开发者快速构建Web应用程序。下面是使用CodeIgniter上传多张图片的步骤:

  1. 首先,确保你已经安装了CodeIgniter框架,并创建了一个新的项目。
  2. 在你的项目中,创建一个新的控制器(Controller),比如名为"Upload"的控制器。
  3. 在"Upload"控制器中,创建一个名为"do_upload"的方法,用于处理上传图片的逻辑。
代码语言:php
复制
class Upload extends CI_Controller {
    public function do_upload() {
        // 配置上传设置
        $config['upload_path'] = './uploads/'; // 设置上传文件的保存路径
        $config['allowed_types'] = 'gif|jpg|png'; // 设置允许上传的文件类型
        $config['max_size'] = 1024; // 设置允许上传的最大文件大小(单位为KB)

        // 加载上传库
        $this->load->library('upload', $config);

        // 处理每个上传的文件
        foreach ($_FILES['userfile'] as $key => $value) {
            foreach ($value as $index => $val) {
                $_FILES['userfile' . $index][$key] = $val;
            }
        }
        unset($_FILES['userfile']);

        // 上传文件
        $upload_data = array();
        foreach ($_FILES as $file => $file_data) {
            if (!$this->upload->do_upload($file)) {
                $error = $this->upload->display_errors();
                // 处理上传错误
            } else {
                $upload_data[] = $this->upload->data();
                // 处理上传成功
            }
        }

        // 在这里可以对上传成功的文件进行进一步处理,比如保存到数据库或显示成功消息等

        // 返回上传结果
        $data['upload_data'] = $upload_data;
        $this->load->view('upload_success', $data);
    }
}
  1. 在你的视图(View)文件夹中创建一个名为"upload_form.php"的视图文件,用于显示上传表单。
代码语言:html
复制
<html>
<head>
    <title>Upload Form</title>
</head>
<body>
    <?php echo form_open_multipart('upload/do_upload'); ?>
    <input type="file" name="userfile[]" multiple="multiple" />
    <br /><br />
    <input type="submit" value="Upload" />
    </form>
</body>
</html>
  1. 创建一个名为"upload_success.php"的视图文件,用于显示上传成功的消息和上传的文件信息。
代码语言:html
复制
<html>
<head>
    <title>Upload Success</title>
</head>
<body>
    <h3>Upload Success</h3>
    <?php foreach ($upload_data as $file): ?>
        <p><?php echo $file['file_name']; ?></p>
    <?php endforeach; ?>
</body>
</html>
  1. 最后,在你的路由(Routes)文件中设置"upload"路由指向"Upload"控制器的"do_upload"方法。
代码语言:php
复制
$route['upload'] = 'upload/do_upload';

现在,当你访问你的应用程序中的"upload"页面时,你将看到一个上传表单。你可以选择多个图片文件并点击"Upload"按钮进行上传。上传成功后,你将被重定向到"upload_success"页面,显示上传成功的消息和上传的文件信息。

这是一个简单的使用CodeIgniter上传多张图片的示例。如果你想了解更多关于CodeIgniter的信息,可以访问腾讯云的CodeIgniter产品介绍页面:CodeIgniter产品介绍

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Codeigniter文件上传类型不匹配错误

Codeigniter的文件上传类方便了我们使用PHP来处理文件上传的操作,使用起来非常简单,如下: $config['upload_path'] = '....array('upload_data' => $this->upload->data()); $this->load->view('upload_success', $data); } 如果只是处理图片类型的文件...Codeigniter的文件上传类型判断在 is_allowed_filetype 这个函数中处理,造成这个错误的主要原因是因为判断逻辑中有一个 mime 类型判断的步骤。 什么是 Mime 呢?...不怀好意的用户可能会把一个可执行文件后缀改成图片类型,上传成功后,如果能够获得文件的地址,并且文件在可执行目录,就能够执行动态脚本,还是很危险的。著名的DedeCMS就很多这种漏洞。...Codeigniter是2.x版本的,至于现在3.x版本中是否还存在这个问题并没有测试,有遇到的朋友可以分享一下。

2.3K10

Codeigniter框架中使用NuSOAP

2、NuSOAP的使用使用NuSOAP,我觉得需要要对于SOAP有些基础得了解,附录中的参考资料我们可以了解到一些知识,从下面的图片,也可以了解到SOAP在Web服务堆栈中的地位。 ?...使用SOAP时,有客户端和服务器两种情况。具体的使用比较简单,以至于NuSOAP官方都没有什么文档来说明,也许作者觉得不需要说明吧。下面就结合CodeIgniter框架,来说明NuSOAP的使用。...PS:需要说明的一点,NuSOAP不能和PHP的SOAP扩展同时使用,如果你的LAMP环境中安装了SOAP的扩展,那么NuSOAP直接是不能用的,因为类名重复的,如果花些力气把名字改下,也可以使用 :)...NuSOAP,最大的挑战不在于如何引入。...'';     } } 4、常见问题 调试的三个方法:1、使用->request,->response查看消息头;2、使用日志查看调试信息;3、使用错误信息捕捉。

1.1K10
  • 记一次解决CodeIgniter框架CKEditor+CKFinder图片上传问题

    老蒋前一段时间接手一个利用CodeIgniter框架架设的外贸网站负责项目,由于原来运维人员的突然离职,导致从未接触过CodeIgniter框架的我来说着实有点懵。...文章目录 隐藏 第一、检查图片上传目录路径是否正确 第二、解决"由于文件系统的限制,该请求不能完成"问题 第一、检查图片上传目录路径是否正确 因为在提交图片的时候会出现空白,通过源代码会发现没有这个页面...,看来是处理图片上传页面不存在导致的。...于是检查这个文件是不是错了,最后发现这个程序目录写错public写成publicc,多了一个字符,我就不清楚了,原来他们是如何图片的。...本文出处:老蒋部落 » 记一次解决CodeIgniter框架CKEditor+CKFinder图片上传问题 | 欢迎分享

    1.2K20

    Codeigniter里的无刷新上传的实现代码

    好久没有更新了,写点吧算是翻译吧,纯原创没空啊XD Codeigniter还是很好用的,淡水一直很推崇。说是codeigniter里的无刷新上传吧,fashion 一点的说法就是利用AJAX技术上传。...} public function index() { $this- load- view('upload'); } } 我们已经在构造里加载了files_model,所以可以使用...Id为files的div是我们显示上传文件列表用的。...第三步,上传文件 控制器部分 现在开始上传文件了。我们的URL是这样的 /uplaod/upload_file/,所以,我们在uoload的控制器里建立upload_file方法。...不为空就加载codeigniter的upload库。这个类库为我们处理了很多的数据验证。 接着,我们上传文件了。如果成功我们保存title和file_name。

    1.8K20

    小程序上传多张图片

    以前写过小程序网络和本地图片到相册的方法:https://www.jianshu.com/p/5479041607fa,写过上传一张或多张图片到阿里云OSShttps://www.jianshu.com.../p/ea2e567b6f2c, 写过小程序加载本地图片路径问题https://www.jianshu.com/p/c0dd3e191322,这次写个布局关于多张图片上传。...效果图 思路: 整体图片选择使用一个view控件,前面选中的图片为一个block根据选择图片的数量来显示多少个,后面的选择图片按钮为一个view。...选中图片上面的删除按钮,使用绝对定位和相对定位来处理。添加图片,删除图片,点击选中图片查看大图等添加一个点击事件 考虑问题: 1.上传的多少张图片? 2.上传后想删除?...3.如何控制布局,用好用flex布局。

    4.4K50

    android 使用OkHttp上传多张图片的实现代码

    简述 还是先来说说为啥用OkHttp作为多图片上传的框架,原因有两点: 1、OkHttp可以作为Volley底层传输协议,速度更快 2、使用Xutils和KJFramework上传图片存在一个小问题,首先...,可以上传,并且可以上传多张图片,也可以上传其他的参数,那问题在哪里呢?...在后台接受参数时很不灵活,Xutlis及KJFramework使用HashMap来上传每个参数,每一张图片也必须有一个唯一的key,上传一张图片就要定义一个参数来接收,上传两张图片就要定义两个参数来接收...OkHttp底层则不是这样,大概的浏览了下源码,底层接收参数的时候使用的是List,只要使用相同的key就可以添加到同一个list,而后台只需要根据这一个key不断遍历就行,无论多少张图片都无障碍,也没有了后顾之忧...总结 以上所述是小编给大家介绍的android 使用OkHttp上传多张图片的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。

    1.7K30

    TP5框架实现上传多张图片的方法分析

    本文实例讲述了TP5框架实现上传多张图片的方法。分享给大家供大家参考,具体如下: 1、效果图(每点击一次‘添加选项’,就会有一个新的 file 框来添加新的图片) ? 2、view <!...img'); } //上传图片 $info=$image- move(ROOT_PATH . 'public' . DS .'static'. DS .'img'.DS....$time,$filename); //将图片路径存放在数据库中 $details- url = $time.DS....5、over over over 更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter...入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

    1.6K20

    as3与php 上传多张图片demo

    单张图片,可以查看上一篇文章>> 这个demo有几项没有完善: 1、对于选中重复的图片,没有做出提示(需要过滤选中的图片) 2、在一次添加的图片中如果超出最大上传数,忽略本次选中的所有图片(又得重新选一次...,此现象普通存在于目前各大网站的flash批量上传中) 3、没有对选中的图片它的尺寸进行比较或限制,需要判定它的大小以及文件的类型 4、缺少对载入内存中的图片与按钮可点击状态的先后判断,应等待所有图片均可预览后再上传图片...5、缺少显示图片名称和修改图片名称 6、缺少支持删除、旋转图片的功能 特别注明:本demo需要最低flash play 10+(要支持本地预览),这个例子是用flash cs5写的,所以下载demo只能使用...cs5打开了 :( 本文参考了“[原]as3 flash web 应用 (4)批量上传之 完全实现百度图片上传”,代码是自己敲的(几张按钮图片是通过SWFDecompiler反编译百度的那个上传得到的)...400; 94: textField.height = addBtn.height; 95: setTextMsg("请先添加图片后再进行上传

    2.8K20

    【Android源码解析】选择多张图片上传多图预览

    好了下面具体的分析一下:(想要做出功能,需求分析是必不可少的,需求、逻辑弄懂了再上手写代码,思路会很清晰的) 1.多图上传首先得选择图片(这里项目需求是既可以拍照上传也可以从相册中选择) 2.拍照上传很简单了网上也有很多例子...,调用照相机,返回uri,获取图片 3.从相册中选择图片  3.1 获取手机中的所有图片  3.2 将图片存到自定义图片数组中显示  3.3 自定义ViewPager浏览图片 . ....adapter*/ picAdapter = new PictureAdapter(this, 2, file); } 这个是初始化图片数组,适配器(新建、上传失败...、上传成功的图片我用的都是一个adapter) ImageItem是图片的模型,下面有它的属性 //从图库选择的图片model public class ImageItem extends File implements...* flag=0,去Bimp的图片数组中找 * flag=1,证明上传成功的,去下载好的getFileList中找 * flag=2,为上传失败的

    3.5K20

    TP5框架实现一次选择多张图片并预览的方法示例

    本文实例讲述了TP5框架实现一次选择多张图片并预览的方法。...分享给大家供大家参考,具体如下: 点击选择图片(可选多张),确定后将选择的图片显示在页面上,已经选择的图片也可以删除,点击提交将图片提交给后台。 1、效果图 ?...input['value'].match(/.jpg|.gif|.png|.jpeg|.bmp/i)){  //判断上传文件格式 return alert("上传图片格式不正确,请重新选择"); }...更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI...(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

    71930

    系列开篇

    安装 CodeIgniter4 可以手动安装,或使用 Composer 安装。 注解 在使用 CodeIgniter 之前, 请确认你的服务器符合 要求....composer create-project codeigniter4/framework 运行 将 CodeIgniter 的文件夹和文件上传到你的服务器上。 ...如果你打算使用数据库,使用文本编辑器打开 application/Config/Database.php 并配置你的数据库设置。...在生产环境中所要做的一个额外操作是禁用 PHP 错误报告以及其它任何仅开发时所使用的功能。在 CodeIgniter 中,可以通过设置 ENVIRONMENT 常量来完成。...如果要使用提供的调试工具,你需要将环境设置为 "develop"。 就是这样! 如果你是 CodeIgniter 新手, 请阅读用户指南的 入门 部分,开始学习如何构建静态 PHP 应用程序。

    2.5K20

    Android上传多张图片的实例代码(RxJava异步分发)

    学习RxJava有一段时间了,一直在考虑怎么使用如何在项目中合理运用它。在android很多项目中,都会存在图片上传,下面我介绍如何用Rxjava异步上传多张图片。...这里为了演示用法与图片上传只是模拟请求所以手动创建了三个数组用来缓存图片选择后和处理后的url。...Button button = (Button) findViewById(R.id.button1); button.setOnClickListener(v - setImage()); } 图片上传大部分是根据拍照或者图库选择的多张...) { Log.i(tag, "网络请求上传图片"); RequestParams params = new RequestParams("这里是上传到服务器的Http地址");...上传时,只进行上传的网络操作 /** * 直接上传所选图片图片 */ private void uploadingImage() { Log.i(tag, "开始上传图片");

    1.3K51
    领券