Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > PHP: Графика > Как сделать вывод картинок |
Автор: mitris 25.6.2007, 13:31 | ||
Есть БД, в ней записаны URL'ы и нужно вывести вс е картинки оттуда я пытался пользоваться кодом, но он не работает, помогите
|
Автор: mitris 25.6.2007, 13:53 | ||
при использовании данного кода вместо картинки выводятся иероглифы типа :
|
Автор: PARROT 25.6.2007, 14:10 |
А откуда картинка берется? потом уберите перед заголовком собаку, пользуйтесь буферизацией. |
Автор: mitris 25.6.2007, 14:41 | ||||
из папки. а путь к картинке лежит в БД. П.С. если убрать собаку, то оно пишет :
|
Автор: teroni 25.6.2007, 14:49 | ||
Ну вот в этом и заключается проблема... Ищите, что скрипт вывел клиенту до отправки header('Content-type: image/jpeg'); |
Автор: Kefir 25.6.2007, 14:52 |
раз оно так пишет, то это значит что оно хедеры и не посылает. а раз оно хедер не посылает, то логично, что будут иероглифы, т.к. браузер не понимает - что цэ такэ вообще, ибо сообщение о том, что это картинка до него не доходит. так что убери собаку и найди то место, где у тебя уже выводится инфа на экран. это если выводить одну картинку на экран. я так понимаю, что у вас картинок много (то биш не одна), соответственно ни о каком imagejpeg тут речи быть не может (ибо получается бред - много хедеров, много raw картинок). попробуйте воспольховаться хтмл (<img src="...">) и выводить по человечески. |
Автор: PARROT 25.6.2007, 15:00 |
Вы не пытаетесь сгенерировать превью картинки на лету? |
Автор: mitris 25.6.2007, 22:14 |
Ну...как бы , в работе с картинками на РНР я плохо разбираюсь и мало понял из того, что вы написали... Мне бы как-то объяснить... П.С. где-то прочитал, что правильнее будет, при загрузке картинки сразу же создавать картинку - превьюшку , и потом просто ее выводить. Но, я воооообще не представляю как это осуществить... |
Автор: mitris 25.6.2007, 22:57 | ||||
Все, пробема решена. Вот нашел два примера Первый :
Второй :
как первый так и торой работают превосходно |
Автор: Severyanin 1.8.2007, 11:42 |
прошу прощения за ламерский вопрос, но дали мне задание на PHP,а до этого я под однокристаллки писал. Не могу вывести в броузер сгенерированную "на лету" картинку. $string="Hello world!"; $im = imagecreate(300,40); $black = imagecolorallocate($im, 0, 0,0); $orange = imagecolorallocate($im, 220,210,60); imagefill($im,0,0,$black); imagettftext($im,50,0,20,35,$orange,getcwd()."./times.ttf",$string); Header("Content-type: image/png"); imagepng($im); Вместо рисунка выводит непонятный набор символов |
Автор: Nazaret2005 1.8.2007, 20:49 | ||
|
Автор: teroni 2.8.2007, 11:47 |
Severyanin, нормально работает Ваш скрипт. Убедитесь, что getcwd()."./times.ttf" существует, а еще проще, замените это на просто "times.ttf" и киньте файл шрифта в папку к скрипту. |
Автор: Severyanin 2.8.2007, 13:52 |
Спасибо за ответ, teroni ![]() |
Автор: Temp 2.10.2007, 18:04 | ||
Можно его мадернизировать, чтобы вставить в цикл, и обрабатывать несколько изображений на одной странице. Вариант с созданием нескольких файлов тоже не подойдёт, это значительно заполнит хостинговое пространство. Необходио преобразовавать картинки "на лету". зарание, спасибо большое |