Задать вопрос
@samorez777

Как вывести картинку из папки??

В базе хранится пустая картинка.на нее наносится текст с $title и сохраняется рандомно в файл с разными именами title.jpg
Код:

<?PHP foreach ($products as $item){
   $jpg_image = imagecreatefromjpeg("img/$item->images");
   $white = imagecolorallocate($jpg_image, 255, 255, 255);
   $font_path = 'E:\serv\OSPanel\domains\localhost\ verdana.ttf';
   $text = $item->title; //текст 1
   $text2 = $item->desc; //текст 2
   imagettftext($jpg_image, 25, 0, 75, 300, $white, $font_path, $text);
   imagettftext($jpg_image, 25, 0, 100, 400, $white, $font_path,$text2);
   imagejpeg($jpg_image,"img/$item->title.jpg");//сохранил картинки
   imagedestroy($jpg_image);
}
?>


Теперь хочу вывести в цикле картинки из папки,если title из БД равен названию файла в папке .
в базе хранится имена машин например Toyota,BMW которое наносится на пустую картинку и сохр. а файл создается Toyota.jpg , BMW.jpg. Как вывести.писал много выражений выводило битые картинки..
использую redbeanphp.

Помогите пожалуйста!
  • Вопрос задан
  • 592 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 2
LenovoId
@LenovoId
svg, css,js
<?php
  $dir = 'images/'; // Папка с изображениями
  $cols = 3; // Количество столбцов в будущей таблице с картинками
  $files = scandir($dir); // Берём всё содержимое директории
  echo "<table>"; // Начинаем таблицу
  $k = 0; // Вспомогательный счётчик для перехода на новые строки
  for ($i = 0; $i < count($files); $i++) { // Перебираем все файлы
    if (($files[$i] != ".") && ($files[$i] != "..")) { // Текущий каталог и родительский пропускаем
      if ($k % $cols == 0) echo "<tr>"; // Добавляем новую строку
      echo "<td>"; // Начинаем столбец
      $path = $dir.$files[$i]; // Получаем путь к картинке
      echo "<a href='$path'>"; // Делаем ссылку на картинку
      echo "<img src='$path' alt='' width='100' />"; // Вывод превью картинки
      echo "</a>"; // Закрываем ссылку
      echo "</td>"; // Закрываем столбец
      /* Закрываем строку, если необходимое количество было выведено, либо данная итерация последняя */
      if ((($k + 1) % $cols == 0) || (($i + 1) == count($files))) echo "</tr>";
      $k++; // Увеличиваем вспомогательный счётчик
    }
  }
  echo "</table>"; // Закрываем таблицу
?>
Ответ написан
Комментировать
@maiskiykot
Free coder
Вообще задачу лучше решать так - картинку выводить как фон страницы, а надпись - как див в произвольном месте. Тогда отпадает необходимость использовать gd2, которая крайне ресурсоемкая
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
IT ATLAS Москва
от 250 000 до 500 000 ₽