Как показать изображения с абсолютным путем, избегая добавления текста в URL? - PullRequest
0 голосов
/ 28 июня 2019

Я показывал изображения в лезвии Laravel с абсолютным путем, который я получаю из базы данных, он работает нормально.Я говорю о внешних изображениях.URL-адреса изображений: "https://somedomain.name/attachments/blablabla.png". Но теперь laravel добавляет базовый URL-адрес, и мои изображения не найдены. Laravel теперь предоставляет:" https://localhost/https://somedomain.name/attachments/blablabla.png" Даже если я добавил, он добавил текущий URL-адрес в качестве префикса к изображениям.URLs.Как это исправить?Спасибо

Ответы [ 2 ]

0 голосов
/ 10 июля 2019

Я нашел причину и решение в течение нескольких дней.Но сейчас у меня есть несколько минут, чтобы поставить ответ.У меня есть эта проблема, потому что мои URL-адреса, полученные из CSV-файла, заключены в кавычки.Поэтому я удалил все кавычки с SQL-запросом для этого поля и перезагрузил страницу, и все идеально.Вот мой SQL-запрос: (для postgresql)

update public.mytable set img_url= REPLACE(img_url,'"','')

Если у вас есть эта проблема, но вы не хотите удалять кавычки с SQL, вы не можете удалить кавычки с языком программирования, который вы используете (здесь PHP)перед тем, как поместить переменную в качестве исходного тега url следующим образом:

<img src={{url($the_var_trimmed_by_quote)}} alt=""/>

Может быть, это поможет вам: Удаление кавычек из начала и конца строки в PHP .Но это не работает для меня, потому что форматы цитат выглядят по-разному.Вы также можете искать, как это сделать другим способом.Но теперь вы знаете, что может создать эту проблему, поэтому найти решение будет проще.Спасибо всем

0 голосов
/ 28 июня 2019

Если вы используете Laravel, то это плохая практика для хранения прямого URL в вашей базе данных.

  1. Вы должны создать свою собственную папку (например, для изображений) в публичной папке Laravel, куда вы должны добавитьизображений.
  2. При загрузке кода изображения с помощью move ($ imageName, $ path) вы должны добавить изображения в эту папку и хранить только имя изображения в вашей базе данных.Вы также должны настроить имя своего изображения во время загрузки изображения.
  3. Чтобы получить путь к изображению для отображения в Blade, вы можете использовать имя изображения только по URL-адресу URL-ссылки ('/ images /'.$myImage);и в Blade вы получите такой результат

    <img src={{url('/images/photo.type')}} width="" height="" alt=""/>

...