BLOB图像仅在通过phpMyAdmin上传时显示,而在通过HTML表单上传时不显示

时间:2019-04-21 16:46:35

标签: php html mysql laravel phpmyadmin

当我通过HTML表单上载BLOB图像时,即使它们存储在数据库中,这些图像也不会显示在相应的表上。当我通过phpMyAdmin上传BLOB图像时,它们会正确显示。看起来,通过表单上传时,BLOB图像明显小于通过phpMyAdmin上传的图像。我正在使用Laravel路线和视图。

这是phpMyAdmin表的屏幕截图。前两个BLOB(212.1 KiB和214.6 KiB)是通过phpMyAdmin上传的,后两个BLOB(11 B和10 B)是通过HTML表单上传的。

phpMyAdmin BLOB comparisons

这是我在Submit.blade.php中提交的表单:

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

    {!! csrf_field() !!}

    <div class="form-group{{ $errors->has('image') ? ' has-error' : '' }}">
        <label for="image">Image</label>
        <input type="file" class="form-control" id="image" name="image" placeholder="Image" value="{{ old('image') }}">
        @if($errors->has('image'))
           <span class="help-block">{{ $errors->first('image') }}</span>
        @endif
    </div>

这是在welcome.blade.php中显示的方式

@foreach ($event as $event)
  <table class='w100'> 
    <tr>
      <td class='w50' colspan=2 rowspan=6><img src= "data:image/png;base64,{{ chunk_split(base64_encode($event->image)) }}" height="100" width="100"/></td>
    </tr>
  </table>
@endforeach

我感觉到如何在Submit.blade.php中获取文件是一个问题,但是我不确定如何正确地解决此问题。

0 个答案:

没有答案