Изображение BLOB отображается только при загрузке в phpMyAdmin, а не при загрузке через форму HTML - PullRequest
0 голосов
/ 21 апреля 2019

Когда я загружаю изображения BLOB через форму HTML, даже если они хранятся в базе данных, изображения не отображаются в соответствующей таблице. Когда я загружаю изображения BLOB через phpMyAdmin, они отображаются правильно. Похоже, что при загрузке через форму, изображения BLOB значительно меньше, чем те, которые загружаются через phpMyAdmin. Я использую маршруты и виды Laravel.

Вот скриншот таблицы phpMyAdmin. Первые два больших двоичных объекта (212,1 КиБ и 214,6 КиБ) были загружены через phpMyAdmin, а последние два (11 B и 10 B) были загружены через HTML-форму.

phpMyAdmin BLOB сравнения

Вот моя форма представления в 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, но я не уверен, как правильно исправить это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...