Besoin d'aide ?

Impossible d'afficher ma photo

Avatar de Georgespletinckx
Georgespletinckx

Bonjour,

Je développe en Laravel 8. J'ai une db MySql. Dans une table, je stocke le lien vers des photos qui sont téléchargées par mon site. Tout se passe bien, les photos sont stockées au bon endroit. Dans un show.blade, j'affiche le détail de mon article et je dois afficher la photo de mon article. Le problème est qu'au lieu d'afficher la photo il affiche un point d'interrogation. Mon code d'affichage est le suivant:

Si j'inspecte le code soource de ma page, je constate que le chemin de la photo est correct: il retrouve la bonne photo dans la db:

Où est mon erreur? Mon navigateur est Safari.

Quelqu'un peut m'aider?

Georges

Avatar de ElgiftBambi
ElgiftBambi

pourrais je voir ton code ?

Avatar de ElgiftBambi
ElgiftBambi

car pour afficher une photo d'un detail , d'abord tu passe l'id en parametre , et dabs ton controller tu recupere cela par show($id) { $item = tonmodel::findorfail($id); } et dans ton show blade , precisement dns ta balise img tu met asset('chemin/'.$item->image)

Avatar de DevPro
DevPro

quel est la valeur du chemin ?

pour les projets larael asset nous situe direct dans le contenu du dossier public de ton projet en version dev ton public c'est le dossier public du projet (a la racine de la structure du projet ) en prod ça change , ensuite esque quand tu sauvegarde le lien tu sauvegarde le fichier sur ton serveur , il faut que ton fichier sois sauvegarder dans un dossier dans ton public ou a la racine du public pour ensuite utiliser le asset .

Avatar de Georgespletinckx
Georgespletinckx

Bonjour,

Voici le bout de code:

et la réponse du navigateur est:

Donc le navigateur trouve le bon fichier. Mais ne l'affiche pas. Il affiche un carré bleu avec un point d'interrogation à l'intérieur

Avatar de Georgespletinckx
Georgespletinckx

Bonjour,

Voici le bout de code:

et la réponse du navigateur est:

Donc le navigateur trouve le bon fichier. Mais ne l'affiche pas. Il affiche un carré bleu avec un point d'interrogation à l'intérieur

Avatar de Georgespletinckx
Georgespletinckx

Bonjour,

Voici le bout de code: <

Avatar de Georgespletinckx
Georgespletinckx

Bonjour,

Voici le bout de code: Photo:

et la réponse du navigateur est: Photo: /> Donc le navigateur trouve le bon fichier. Mais ne l'affiche pas. Il affiche un carré bleu avec un point d'interrogation à l'intérieur

Avatar de Georgespletinckx
Georgespletinckx

Pourquoi le code ne s'affiche pas? Je copie mon code dans mon message et il ne s'affiche pas...

Avatar de CinquièmeDimension
CinquièmeDimension

Ce site utilise blade donc ton code est intérprété. Il faut le mettre en citation de code (surligne et clic sur le bouton </>)

De manière générale, dans tous les forums du web, tu dois toujours passer ton code en citation comme ça. C'est plus simple à lire.

Avatar de Georgespletinckx
Georgespletinckx

Bonjour,

Merci à CinquièmeDimension.

Voici le bout de code: Photo:

<div class="form-group">
                            <strong>Photo:</strong>
                            <img height="50" src="{{ public_path().'/storage/'.$article->photo }}">
                        </div>

et la réponse du navigateur est:

<div class="form-group">
                                    <strong>Photo:</strong>
                                    <img height="50" src="/Applications/MAMP/htdocs/ventfor/public/storage/IMG_5589.JPG">
                                </div>

Donc le navigateur trouve le bon fichier. Mais ne l'affiche pas. Il affiche un carré bleu avec un point d'interrogation à l'intérieur

Avatar de CinquièmeDimension
CinquièmeDimension

Essaye {{ asset("storage/").$article->photo }} ou bien {{ url('/').'storage/'.$article->photo}}

Avatar de Georgespletinckx
Georgespletinckx

@CinquièmeDimension Le 2ème a fonctionné, merci

Vous ne pouvez pas répondre à ce sujet.