猿问

MySQL在php中插入图片post函数返回0

我正在尝试为我的用户导入个人资料图片并将其以 blob 格式插入到数据库中。但是当我运行代码并选择一个图像时,我得到 file_get_contents() 不能为空错误


我已经尝试了许多与此问题相关的其他帖子的解决方案,但都没有奏效。


控制器:


public function wijzigen()

{

    $foto = $this->input->post($_FILES['profielfoto']['tmp_name']);


    $fotoContent = addslashes(file_get_contents($foto));


    $id = $this->session->userdata('id');


    $gebruiker = new stdClass();

    $gebruiker->id = $id;

    $gebruiker->profileImage = $fotoContent;


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

    $this->gebruiker_model->update($gebruiker);

模型:


    function update($gebruiker)

    {

        $this->db->where('id', $gebruiker->id);

        $this->db->update('gebruiker', $gebruiker);

    }

看法:


 <?php

    $attributes = array('name' => 'mijnFormulier', 'enctype'=>'multipart/form-data', 'method'=>'post', 'accept-charset'=>'utf-8');

    echo form_open('Home/wijzigen', $attributes);

    ?>

    <table>

        <tr>

            <td><?php echo form_label('Profiel Foto:', 'profielfoto'); ?></td>

            <td><input type="file" name="profielfoto" id="profielfoto" required accept=".png"/></td>

        </tr>

        <tr>

            <td></td>

            <td>

                <?php echo form_submit('knop', 'Wijzigen', 'class = "btn btn-login login-formcontrol"'); ?>

            </td>

        </tr>



    </table>

    <?php echo form_close(); ?>

错误:


Severity: Warning


Message: file_get_contents(): Filename cannot be empty


Filename: controllers/Home.php


Line Number: 147


Backtrace:


File: /home/arne/Desktop/WebApplication/CodeIgniter/application/controllers/Home.php

Line: 147

Function: file_get_contents


File: /home/arne/Desktop/WebApplication/CodeIgniter/index.php

Line: 315

Function: require_once


I except an image to be in my database but the post isn't working

谢谢,


小唯快跑啊
浏览 177回答 1
1回答

人到中年有点甜

$_FILES和$_POSTvars 是两种不同的东西。$foto&nbsp;=&nbsp;$this->input->post($_FILES['profielfoto']['tmp_name']);应该:$foto&nbsp;=&nbsp;$_FILES['profielfoto']['tmp_name'];请注意,这并没有考虑到错误,因此您应该理所当然地检查一下。
随时随地看视频慕课网APP
我要回答