J'ai une base de données où les images sont stockées dans la ligne de la table comme ce nom (chaîne) "nom" someext (chaîne) "une description" filesnames (chaîne) image1.jpeg | image2.jpeg

Image1 et image2 sont stockées dans le dossier "public / storage / image" \ images enregistrées dans le dossier

    public function store(Request $request)
    {

$data = request()->validate([
            'name' => 'required',
            'sometext' => '',
            'testImages' => '',
            'testImages' => 'image|mimes:jpeg,png,jpg,gif,svg|max:2048',
        ]);
  $images=array();
        if($files=$request->file('testImages')){
            foreach($files as $file){
                $name=$file->getClientOriginalName();
                $file->move('image',$name);
                $images[]=$name;
            }
        }

auth()->user()->tests()->create([
            'name' => $data['name'],
            'sometext' => $data['sometext'],
            'filenames' => implode("|",$images),
        ]);
}

 public function show ($id)
    {
        $tests = Tests::findorfail($id);  //get row data from table with ID
        return view('test.show-report', compact('tests')); //returing data to blade
    }

Dans la lame, je suis capable de faire un $ tests-> name et $ tests-> description pour obtenir des données avec succès. Je suis incapable de comprendre comment afficher les images de la lame "noms de fichiers".

0
Usha Priya 5 mai 2020 à 11:02

4 réponses

Vous pouvez suivre la procédure ci-dessous

<img src="{{ public_path('storage\image') }}{{ $tests->filenames }}" alt=""/>

Utilisez le code suivant pour séparer les noms des images

$img = exploade('|', $tests->filenames);
dump($img);
-1
Hossein Razavi 5 mai 2020 à 08:22

Si les noms des images sont correctement stockés dans la base de données avec l'extension correcte, voici ce dont vous aurez besoin dans votre vue en lame:

  <img src="/storage/image/{{$tests->NAME_OF_COLUMN_IN_DB}}" />

Remplacez simplement "NAME_OF_COLUMN_IN_DB" par le nom de la colonne où vous stockez le nom de l'image dans votre base de données.

0
Red John 5 mai 2020 à 08:07

Vous pouvez faire comme ça:

@foreach(explode('|',$tests->filenames) as $fileName)
    <img src="/storage/image/{{$fileName}}"/>
@endforeach
0
Uzair Riaz 5 mai 2020 à 09:07

Utilisez comme ça

<img src="{{ url('') }}/storage/image/{{$tests-> filenames}}">
0
A.A Noman 5 mai 2020 à 08:18