Мой код работает нормально и показывает содержимое, хранящееся в базе данных. Но не показывать изображения, которые хранятся в: C:\xampp\htdocs\Task_List\storage\app\fileToUpload
DisplayDataController.php
class DisplayDataController extends BaseController
{
public function displaydata()
{
$users = DB::table('users')->select('id','email','password','pic')->get();
return view('displaydata',['users'=> $users]);
}
}
веб.php
Route::get('/', 'DisplayDataController@displaydata' );
displaydata.blade.php
<html>
<head>
<title>
Display Data
</title>
</head>
<body>
<fieldset>
<legend>User Records</legend>
<table>
<thead>
<tr>
<th>ID</th>
<th>Name</th>
<th>Password</th>
<th>Image</th>
</tr>
</thead>
<tr>
@foreach($users as $user)
<td>{{$user->id}}</td>
<td>{{$user->email}}</td>
<td>{{$user->password}}</td>
<td>
<!-- <img src = "{{ url('storage/app/fileToUpload/'.$user->pic) }}" style = "height:100; width:100" />; -->
<img src = "{{ url('storage/app/fileToUpload')}}{{$user->pic}}" style = "height:100; width:100" />
</td>
</tr>
@endforeach
<input type = "hidden" value = {{csrf_token()}} name=_token>
</table>
</body>
</html>
Проблема только с:
<img src = "{{ url('storage/app/fileToUpload')}}{{$user->pic}}" style = "height:100; width:100" />
@aimme в моей БД изображения хранятся как: fileToUpload/1pZn1fwL0pldyfgvDPT4giLPkb662OL5B3kjs.jpeg
если да, то мой ответ будет работать. просто нужно удалить префикс fileToUpload из строки. редактирование ответа.
я отредактировал свой ответ, чтобы он работал так, как вы сохранили с префиксом. но лучше удалить часть префикса из db и добавить его в префикс файла в коде.






Пытаться:
<img src = "{{ url('storage/app/fileToUpload/'.$user->pic)}}" style = "height:100; width:100" />
изменить , на . ( . $пользователь->рис )
@zahid не работает
тоже не работает @GhiffariAssamar
Примерно так вы можете добиться, поскольку путь к хранилищу напрямую недоступен для публики. вам нужно указать общедоступный URL-адрес в маршруте, подобном этому.
Ввиду
<img src = "{{route('images.show',$user->pic)}}" />
или
<img src = "/images/{{$user->pic}}" />
В маршрутах/web.php
Route::get('/images/{filename}', function ($filename)
{
$path = storage_path() . '/app/' . $filename;
if (!File::exists($path)) abort(404);
$file = File::get($path);
$type = File::mimeType($path);
$response = Response::make($file, 200);
$response->header("Content-Type", $type);
return $response;
})->name('images.show');
вам нужно создать символическую ссылку, запустив ее в командной строке
php artisan storage:link
поэтому для доступа к лезвию, как это
<img src = "{{ asset('storage/'.$user->pic)}}" style = "height:100; width:100" />
читайте здесь для более подробной информации документация
Уже работал с ним. Не работает @Ghiffari
В моей БД изображения хранятся как: fileToUpload/1pZn1fwL0pldyfgvDPT4giLPkb662OL5B3kjs.jpeg
проверьте этот ответ. каталог хранения недоступен напрямую. используйте маршрут, чтобы вернуть ответ файла для изображений, хранящихся в папке хранилища. stackoverflow.com/a/41138726/1409707