If you need just add /storage/ so add it to your src attribute.
$image->setAttribute('src', "/storage/{$path}");
Hi there,
I use Summernote and I'm trying to save image (or images ) in public/app/storage/public/projets/[user-username]/
libxml_use_internal_errors(true);
//je crée un nouveau document
$dom = new \DomDocument();
//je charge les données en précisant de désactiver l'ajout automatique d'éléments implicites html / body (LIBXML_HTML_NOIMPLIED) et d'empêcher l'ajout d'un doctype par défaut lorsqu'il n'est pas trouvé.
$dom->loadHtml($content, LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);
// je viens stoket l'image dans une variable
$images = $dom->getElementsByTagName('img');
// pour chaque <img> dans le champs summernote
foreach ($images as $key => $image) {
// je récupère l'attribut 'src' que je vais stoker dans la variable
$data = $image->getAttribute('src');
//si la source de l'image est 'data-url'
if (preg_match('/data:image/', $data)) {
// je récupère le mimetype
preg_match('/data:image\/(?<mime>.*?)\;/', $data, $groups);
$mimeType = $groups['mime'];
$imageName = gmdate('d_m_Y_h_i_s') . '.' . $mimeType;
// je stocke le pseudonyme de l'utilisateur dans la variable
$userFolder = $user->username;
//je stoke le chemin du dossier que je vais créer par la suite dans une variable
$storagePath = 'projets/' . $userFolder;
$path = $storagePath . '/' . $imageName;
//si le dossier n'existe pas, je le crée
if (!Storage::exists($storagePath)) {
//je génère le chemin où seront stoker les medias dans une variable
// $path;
$img = Image::make($data)
->encode($mimeType, 100);
Storage::put($path, $img);
}
// //je retire l'attribut à l'image...
$image->removeAttribute('src');
//...et je lui attribut le nouvel attribut
$image->setAttribute('src', $path);
}
}
//je sauve le document
$projectContent = $dom->saveHTML();
It fails actually because the image is saved in storage/app/projets/[user-username]/ . In the view, the actual link is projets/audrey/08_06_2020_09_17_29.jpeg and I need to this link /storage/projets/audrey/08_06_2020_09_17_29.jpeg.
Can you help me please?
Thank you a lot and see you :).
If you need just add /storage/ so add it to your src attribute.
$image->setAttribute('src', "/storage/{$path}");
Please or to participate in this conversation.