|
0 / 0 / 2
Регистрация: 07.05.2020
Сообщений: 14
|
|||||||||||
Как вывести изображение средствами Php17.07.2021, 13:03. Показов 4783. Ответов 11
Здравствуйте!
Задание сделать вывод изображения на странице, где ресайз картинки должен выполняться без использования css и html. У меня есть такая страница
0
|
|||||||||||
| 17.07.2021, 13:03 | |
|
Ответы с готовыми решениями:
11
Как вывести в .DOC файл таблицу средствами PHP B HTML Не могу записать изображение в директорию /uploads/posts/2012-07/ средствами PHP Как обрезать изображение средствами javascript? |
|
1300 / 993 / 231
Регистрация: 01.10.2018
Сообщений: 3,866
|
||
| 17.07.2021, 13:27 | ||
Оно не предназначено для вывода в тело страницы. На странице нужно выводить ссылки, а сами изображения - в ответ на отдельные HTTP-запросы.Добавлено через 4 минуты Непосредственный вывод содержимого изображения при помощи PHP будет медленным. Нужно либо использовать псевдозаголовки, чтобы содержимое выводил сам сервер, либо в крайнем случае вывести только один раз и тут же закэшировать, чтобы последующие запросы уже обрабатывал непосредственно сервер без передачи управления коду формирования изображения. Добавлено через 4 минуты Ну, и хранить содержимое изображений в базе данных нет никакого смысла. Это используется, когда вы формируете изображение, например из текста, или видоизменяете изображение, например накладываете "водяные знаки".
0
|
||
|
0 / 0 / 2
Регистрация: 07.05.2020
Сообщений: 14
|
||||||
| 17.07.2021, 13:40 [ТС] | ||||||
|
Получается мне нужно сделать тег <img src="<?php look_picture();?>">?
Ну бд мне нужна, чтобы хранить информацию картинок пользователей. в самой таблице находится название картинки, которая хранится в папке, и id пользователя. Добавлено через 7 минут аа использовать <a href="mainphp.php"> где mainphp.php будет уже вот этот код?
0
|
||||||
|
1300 / 993 / 231
Регистрация: 01.10.2018
Сообщений: 3,866
|
|||
| 17.07.2021, 13:59 | |||
|
Добавлено через 2 минуты Вам достаточно просто выводить ссылки. Не вижу смысла выводить непосредственно изображения. Хотя сильно не присматривался.
0
|
|||
|
0 / 0 / 2
Регистрация: 07.05.2020
Сообщений: 14
|
|
| 17.07.2021, 14:04 [ТС] | |
|
Я как понял, что этот способ мне не подойдет тут.
Мне нужно, чтобы выводились картинки пользователя на сайте в уменьшенном формате. Исходная картинка имеет, допустим, размер 512х512, а нужно чтобы отображало 100х100 не используя css и html. так бы я мог просто через css задать ей размеры , а тут надо как-то по-другому. Добавлено через 1 минуту а вот при нажатии на картинку, она открывается в исходном размере. тут, наверное, и надо использовать imagepng.
0
|
|
|
1300 / 993 / 231
Регистрация: 01.10.2018
Сообщений: 3,866
|
|||||||||
| 17.07.2021, 15:00 | |||||||||
<img src= - это тоже ссылка. Имелось в виду, что у атрибута src значение должно быть адресом. Для формирования адреса можно использовать функцию, но совсем другую, причем лучше, если она будет возвращать, а не сама выводить:
![]() Добавлено через 5 минут Добавлено через 5 минут Например, несмотря на размер 246х150 и несколько Кб, здесь изображения кэшируются при первом запросе: *******/domains (в каталоге /images/domains).
0
|
|||||||||
|
0 / 0 / 2
Регистрация: 07.05.2020
Сообщений: 14
|
||||||
| 17.07.2021, 16:50 [ТС] | ||||||
|
Не знаю, правильно или нет, но это работает.
Вот что получилось. Спасибо
хотя я понимаю, что криво косо, ибо я создаю просто новый файл и вывожу его.
0
|
||||||
|
1300 / 993 / 231
Регистрация: 01.10.2018
Сообщений: 3,866
|
||
| 17.07.2021, 18:20 | ||
|
0
|
||
| 17.07.2021, 18:22 | |
|
Здесь надо открыть картинку библиотекой GD, затем привести изображение к нужному вам размеру. Изображение после обработки можно вывести, если не ошибаюсь, задав в атрибуте src тега img, не путь к изображению а путь к PHP сценарию который отдаст изображение после заголовков которые говорят браузеру что передается картинка. Этот екзотический способ лучше не применять, точно не скажешь что все браузеры смогут правильно отобразить изображение. В этом способе преимущество экономии места для файлов на сервере. Недостаток в частом отборе ресурсов сервера, тоесть использованию памяти и вычислений процессора.
Вариант создать изображение на сервере и прописать путь к нему в атрибуте src. Это действие выполнять надо только один раз, тоесть надо реализовать кеширование. Если места для записи файлов изображения мало, можно потринероватся и записывать изображение в БД. К стати, для обработки изображений важно значение параметра memory_limit в файле php.ini
0
|
|
|
0 / 0 / 2
Регистрация: 07.05.2020
Сообщений: 14
|
|||||||
| 17.07.2021, 18:48 [ТС] | |||||||
|
Просто у меня без этого выводились либо символы и ругательство на header, либо белый квадрат в центре экрана.
Я делал функцию, которая должна была вернуть ссылку на фотографию, но не работало. Выглядела она вот так
Добавлено через 11 минут return imagepng()?
0
|
|||||||
|
1300 / 993 / 231
Регистрация: 01.10.2018
Сообщений: 3,866
|
|||||||
| 17.07.2021, 19:38 | |||||||
В третий и последний раз повторяю: выводить в ответ на отдельный запрос к самому изображению.
0
|
|||||||
| 19.07.2021, 12:10 | ||||||
|
dhesaww, если ошибаюсь возможно кто-то из экспертов поправит. Короче говоря: в параметре src можно задавать путь к файлу изображения (может даже в виде пути к изображению по протоколу ftp), можно задавать и наверное любой адрес из любым названием и расширением файла (в том числе *.php файлы) важно что при этом ответит сервер. Должен ответить такими заголовками которые говорят браузеру что готовится передача изображения. Потому что в теге img ожидаются только изображения.
Поэтому вы можете задать вместо адреса картинки адрес серверного скрипта. Функция imagepng если не ошибаюсь отдаст ранее промасштабированное вами изображение, отдаст в ответ зашифрованную информацию изображения на подобие работы функции echo. Но imagepng выводит информаци которую ей нужно, и должна если подумать сначала передавать http заголовки информирующие о передаче изображения. При этом на сервер картинка не должна записыватся, для этого надо вызвать функцию библиотеки GD которая запишет изображение на сервер. ВОЗМОЖНО ОШИБАЮСЬ, последний раз очень давно занимался программингом. Вот такие интересные браузеры, что им можно передавать не ссылку а специальный блок информации. Не обычный способ передачи изображения, лучше записать его на сервер и реализовать кеширование. Добавлено через 38 минут Еще более короче и проще говоря: создаете на сервере скрипт и в нем пишете код изменения размеров картинки, в этом скрипте применяете функции imagepng, imagegif и imagejpeg. А в параметре src вместо адреса изображения - адрес вашего скрипта. И все. Вам надо будет передать название изображения для предобработки, здесь вариант только через строку запроса:
0
|
||||||
| 19.07.2021, 12:10 | |
|
Помогаю со студенческими работами здесь
12
Вывести изображение, которое находится в переменной php Сгенерированное изображение на php вывести на страницу без перезагрузки
Средствами чистого JS без библиотек,php,AJAX нужно вывести все теги a href вместе с их содержимым c другого сайта Как зделать поддомен средствами PHP Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|