当我通过HTML表单上载BLOB图像时,即使它们存储在数据库中,这些图像也不会显示在相应的表上。当我通过phpMyAdmin上传BLOB图像时,它们会正确显示。看起来,通过表单上传时,BLOB图像明显小于通过phpMyAdmin上传的图像。我正在使用Laravel路线和视图。
这是phpMyAdmin表的屏幕截图。前两个BLOB(212.1 KiB和214.6 KiB)是通过phpMyAdmin上传的,后两个BLOB(11 B和10 B)是通过HTML表单上传的。
这是我在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中获取文件是一个问题,但是我不确定如何正确地解决此问题。