#php #html #image
#php #HTML #изображение
Вопрос:
В моем getimage.php файл, у меня есть функция, которая возвращает изображение и оператор echo
function getPicture(){
}
header("Content-Type: image/png");
echo getPicture();
Затем в моем index.html У меня есть следующий код
<body>
<img src="getimage.php" />
</body>
Теперь, очевидно, я знаю, что я делаю что-то не так, так как в html это сломанная картинка. Я предполагаю, что установка src в качестве файла .php фактически не выполняется getimage.php
Есть идеи / помощь?
Спасибо!
function getPicture()
{
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL, 'image url');
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Authorization: Bearer XXXX'));
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_BINARYTRANSFER,1);
$picture = curl_exec($ch);
curl_close($ch);
return $picture;
}
Комментарии:
1. Что
getPicture()
возвращает?2. ваша функция НИЧЕГО не делает, кроме вывода заголовка http-изображения. поскольку фактических данных изображения нет (например, байтов в файле gif / jpg / png), на стороне клиента не получено ничего полезного, и вы получаете поврежденное изображение. По сути, вы говорите: «Я собираюсь отправить вам картинку», а затем уходите и ничего не делаете.
3. Я добавил свою функцию getPicture для всех вас, милые даунвотеры. Спасибо, что посмотрели @ мой вопрос
4. Раньше я не был симпатичным сторонником отказа, но теперь я рассматриваю это, поскольку вы их вызвали. Люди просто пытаются помочь вам перейти к лучшему, более полному вопросу, где вы можете получить реальную помощь вместо предположений.
5. Тогда, если изображение отображается нормально, в вашем коде нет ничего плохого. ссылка на изображения php очень распространена, особенно в электронных письмах, чтобы иметь возможность отслеживать чтение изображений, изображение открывается с параметрами, указывающими, кто открывает изображение. Так что в вашем коде нет ничего плохого, это должна быть простая ошибка пути, и я боюсь, что ответ Рика Д. в этом случае может быть хорошим ответом
Ответ №1:
В зависимости от расположения getimage.php , вам, вероятно, придется указать относительный URL-адрес, например
<img src="/getimage.php" />
Предполагая getimage.php находится в корне вашего сайта.
Комментарии:
1. Я проверил это на своем местном сайте. В корне документа, который я создал getimage.php с вашим приведенным выше кодом, чтобы я мог получить к нему доступ в браузере с помощью getimage.local/getimage.php . src=»getimage.php » не работает, но src=»/getimage.php » делает
2. начало пути с / — это абсолютный путь… вы перевернули относительное и абсолютное
3. @VincentDuprez — начало пути с
/
относится к корню документа. Абсолютный путь — это полный путь (http://domain.ext/foobar
в случае HTTP)4. Да, «корневой родственник» — это термин, который я видел для «/ foo / bar». «foo / bar» является относительным, » example.com/foo/bar » является абсолютным.