Codeigniter:更新图像和显示

2023-12-02

我遇到了更新图像的问题。我已经创建了图像上传,效果很好,但我也希望对其进行更新。当我添加需要的图像时,它会正确更新,但如果我不想更改图像并保持原样,则无法检索我当前的图像。请帮我

控制器

public function insert()
        {
       $data['s_em']=$this->input->post('s_em');
       $data['s_na']=$this->input->post('s_na');
    $config['upload_path'] = './uploads/';
        $config['allowed_types'] = 'gif|jpg|png|jpeg|jpe|pdf|doc|docx|rtf|text|txt';
             $this->load->library('upload', $config);
                                  if ( ! $this->upload->do_upload('file'))
                                      {
                              $error = array('error' => $this->upload->display_errors());

                                      }

                             else
                                 {

                        $data['file']=$this->upload->data('file_name');


                 } 

              $this->Students_m->db_ins($data);


         $this->load->view('admin/newstudents');


     }

    public function edit($id)
     {
        $dt['da']=$this->Students_m->db_edit($id)->row_array();
        $this->load->view('admin/st_edt',$dt);
      }   

public function update()
{
    $id=$this->input->post("id");

    $s_em=$this->input->post("s_em");
    $s_na=$this->input->post("s_na");

    $config['upload_path'] = './uploads/';
    $config['allowed_types'] =     'gif|jpg|png|jpeg|jpe|pdf|doc|docx|rtf|text|txt';
    $this->load->library('upload', $config);
    if ( ! $this->upload->do_upload('file'))
    {
        $error = array('error' => $this->upload-   >display_errors());
    }
    else
    {
        $upload_data=$this->upload->data();
        $image_name=$upload_data['file_name'];
    }

$data=array('s_em'=>$s_em,'s_na'=>$s_na,'file'=>$image_name);
$this->Students_m->db_update($data,$id);
}

redirect("admin/students");
}

Model

 public function db_ins($data)
     {
    $query=$this->db->insert('student',$data);
    return $query;   
    }
public function db_edit($id)
{
    return $this->db->get_where('student', array('id'=>$id));
}
public function db_update($data,$id)
{
    $this->db->where('id', $id);       
    $this->db->update('student', $data);
}

view

  <form action="../update" method="post" enctype="multipart/form-data">

    <legend class="text-semibold">Personal data</legend>
  <img src=" <?php echo base_url( 'uploads/'. $da['file']);?>" height="205" width="205">

                                <div class="row">
                                      <div class="col-md-6">
                                            <div class="form-group">
                                        <label class="display-block">image:<span class="text-danger">*</span></label>
                                        <input name="file" type="file" id="image_id" class="file-styled ">
                                        <span class="help-block"></span>
                                    </div>
                                </div>
                    <div class="col-md-6">
                                    <div class="form-group">
                                        <label>Email address: <span class="text-danger">*</span></label>
                                        <input type="email" name="s_em" class="form-control required"   value="<?php echo $da['s_em'];?>">
                                    </div>
                                </div>
                            </div>
                            <div class="row">

                            <div class="col-md-6">
                                    <div class="form-group">
                                        <label>Student name: <span class="text-danger">*</span></label>
                                        <input type="text" name="s_na" class="form-control required"  value="<?php echo $da['s_na'];?>" id="n1">
                                    </div>
                                </div>
                            <button type="submit">Update<i class="icon-check position-right"></i></button>
                     <input type="hidden" name="id" value="<?php echo $da['id'] ;?>">
                    </form>
                </div>                                    

    public function update()
    {
        $id=$this->input->post("id");

        $s_em=$this->input->post("s_em");
        $s_na=$this->input->post("s_na");


 if($_FILES[file]['name']!="")
            {
    $config['upload_path'] = './uploads/';
        $config['allowed_types'] =     'gif|jpg|png|jpeg|jpe|pdf|doc|docx|rtf|text|txt';
        $this->load->library('upload', $config);
        if ( ! $this->upload->do_upload('file'))
        {
            $error = array('error' => $this->upload-   >display_errors());
        }
        else
        {
            $upload_data=$this->upload->data();
            $image_name=$upload_data['file_name'];
        }
    }
    else{
                $image_name=$this->input->post('old');
            }
$data=array('s_em'=>$s_em,'s_na'=>$s_na,'file'=>$image_name);
$this->Students_m->db_update($data,$id);
}

在视图文件中添加以下内容

<input type="hidden"  id="old"  name="old"  value="<?php echo $da['file']   ?>">

试试这个..让我知道这是否有效。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Codeigniter:更新图像和显示 的相关文章

随机推荐

  • 速率限制React客户端向API发出的请求数量

    我在客户端使用 React 和 fetch 向Discogs API 在此 API 中 每分钟最多有 60 个请求的限制 为了管理此Discogs 在响应标头中添加自定义值 例如 剩余请求 已使用的请求 或 最大允许请求 但由于cors 这
  • python解析ip地址文件

    我有一个包含多个 IP 地址的文件 4行txt大约有900个IP 我希望每行输出 1 个 IP 我怎样才能做到这一点 基于其他代码 我想出了这个 但它失败了 因为多个 IP 位于单行上 import sys import re try if
  • 如何从 dbpedia 链接或 URL 检索 XML/RDF 数据?

    最近我一直在尝试学习语义网 对于一个项目 我需要从给定的 dbPedia 链接检索数据 例如http dbpedia org page 柏林 但是当使用 java net URLConnection 检索数据时 我得到了 html 数据 如
  • Chart.js - 折线图中背景的特定部分着色

    我有一张折线图 很像这样 http www chartjs org samples latest charts line basic html 我想给这些区域上色 100 lt y lt 40 and 40 lt y lt 100轻微的红色
  • CLASSPATH 中的值的顺序重要吗?

    我有 2 个单独的 java 程序 一个在 c test 中 另一个在 c test new 中 我可以编译它们而不会出现任何错误 javac 但是当我尝试执行文件 java 时 它显示这样的错误 Exception in thread A
  • 使用 Beautiful Soup Python 模块将标签替换为纯文本

    我在用美丽的汤从网页中提取 内容 我知道有些人问过这个question之前他们都指向美丽的汤 这就是我开始使用它的方式 我能够成功获取大部分内容 但我在内容中的标签方面遇到了一些挑战 我从一个基本策略开始 如果一个节点中有多个 x 字符 那
  • 如何使用 PlaySound() 或任何基本函数/方法在 C++ 中同时播放超过 1 个 .wav 声音?

    我正在尝试制作一款游戏 我需要同时播放许多声音 我知道 v basic 或者只是知道功能 PlaySound to run wav声音 问题在于SND ASYNC我无法同时播放多个声音 但首先播放的声音会在中间跳过并播放下一个声音 有什么方
  • 无法解析符号“持久性”

    我对 Java SpringBoot 和 MySQL 都很陌生 我还在上课 所以这些对我来说没有任何意义 我没有尝试过任何事情 因为我什至不知道从哪里开始 我以为我拥有所有正确的依赖项 但是当我在 Event java 中突出显示红色问题灯
  • mp3 长度(以毫秒为单位)

    我需要一个脚本或命令行工具来获取 mp3 长度 以毫秒为单位 这些文件是用 lame 编码的 64 kbits mono cbr 我为我选择的语言 ruby 寻找了 libmad 但没有发现任何值得注意的东西 def self get au
  • 如何在C++中使用fft生成音频频谱? [关闭]

    Closed 这个问题需要多问focused 目前不接受答案 我想生成一个音频频谱 如这个视频 的 mp3 音频文件 基本上这个问题需要计算音频信号的 fft 我如何用 C C 编程 我查看了几个开源库 例如FFTW我真的不知道如何使用这些
  • 带有 jQ​​uery UI DatePicker 值的 ASP.NET 文本框在回发时丢失

    我有一个在 ASP NET 文本框控件上使用 jQuery UI DatePicker 的应用程序 该控件按预期工作 但我注意到当您从服务器调用回发 通过提交按钮 时 输入的值会在应用程序中丢失 想知道大家有没有经历过这种情况 您必须采取哪
  • Azure Devops Git 分支区分大小写

    当我通过 Azure Devops 门户查看我的分支时 我注意到我有以下内容 feature feature1 Feature feature2 通过我的 git 客户端 Fork 在本地看起来是正确的 feature feature1 f
  • 问:解决Java中的almostIncreasingSequence问题(Codefights)

    我无法通过最后的隐藏测试 你能告诉我我错过了什么吗 提前谢谢 以下是语句 给定一个整数序列作为数组 确定是否可以通过从数组中删除不超过一个元素来获得严格递增序列 boolean almostIncreasingSequence int se
  • 使用非托管代码使用扩展名获取文件图标时在 x86 系统上出现异常

    我正在开发磁盘目录应用程序 需要我使用从数据库检索的文件扩展名来获取文件图标 使用其扩展名获取文件图标的代码在具有任何 CPU 调试配置的 Windows 7 x64 计算机上工作得非常好 但是当我在调试配置中切换到 x86 时 我收到以下
  • 适用于 Chrome 扩展的 Azure AD 应用重定向 URI

    我正在使用适用于 JavaScript 的 Microsoft 身份验证库 MSAL js 版本1 3 2在我的基于 React JS 的 chrome 扩展中 我需要支持两个登录场景 以便获得在应用程序的其余部分中使用的不记名令牌 pro
  • 使用 CSS 添加虚线间隔/填充

    我正在一家餐厅网站上工作 该设计要求在菜单项和价格之间使用典型的虚线填充 我已经在网上搜索并弄乱了它一个小时左右 但似乎找不到任何仅使用 CSS 来做到这一点的好方法 我在这里发现了一些其他解决方案 如果您有纯色背景 它们效果很好 但是在这
  • 如何在 ChartJS 中排序、插入和更新完整数据集?

    我在使用 ChartJS 时遇到一些问题 简单的更新方法无法解决 我想知道是否有一个选择 轻松地对数据集进行排序 在两点之间插入一些数据 重新加载整个图表而不用替换画布 全新的图表 没有内置选项 但使用以下命令编写自己的选项非常容易addD
  • catch 和finally 中return 语句的行为

    请参阅以下代码并解释输出行为 public class MyFinalTest public int doMethod try throw new Exception catch Exception ex return 5 finally
  • Python:为列表或对象中的变量赋值[重复]

    这个问题在这里已经有答案了 我想做以下事情 a 1 b 2 c 3 tom a b c for i in tom i 6 期望的结果是a 6 实际结果是a 1 我猜想如果没有某种执行程序就没有办法做到这一点 正确的 最初我误解了你的问题 我
  • Codeigniter:更新图像和显示

    我遇到了更新图像的问题 我已经创建了图像上传 效果很好 但我也希望对其进行更新 当我添加需要的图像时 它会正确更新 但如果我不想更改图像并保持原样 则无法检索我当前的图像 请帮我 控制器 public function insert dat