Здравствуйте, такая проблема, решил разобраться с графикой на php. Переписал из примера создание полигона, предварительно раскоментировав в файле php.ini строчки extension=php_gd2.dll, extension=php_exif.dll, extension=php_mysql.dll, но браузер выдаёт ошибку: Изображение http://localhost//tra-ta-ta/index.php не может быть показано, так как содержит ошибки. Вот код: Код (Text): $image = imagecreate(200, 110); $background = imagecolorallocate($image, 10, 129, 239); $color_line = imagecolorallocate($image, 255, 255, 255); imagepolygon($image, array( 0, 0, 100, 90, 180, 100, 100, 10), 4, $color_line); header("Content-Type: image/gif"); imagegif($image); Все файлы есть, phpinfo(), выдыёт GD Support enabled GD Version bundled (2.0.34 compatible) FreeType Support enabled FreeType Linkage with freetype FreeType Version 2.4.3 GIF Read Support enabled GIF Create Support enabled JPEG Support enabled libJPEG Version 6b PNG Support enabled libPNG Version 1.2.46 WBMP Support enabled XBM Support enabled gd_info(), то есть код Код (Text): var_dump(gd_info()); выдаёт: array 'GD Version' => string 'bundled (2.0.34 compatible)' (length=27) 'FreeType Support' => boolean true 'FreeType Linkage' => string 'with freetype' (length=13) 'T1Lib Support' => boolean false 'GIF Read Support' => boolean true 'GIF Create Support' => boolean true 'JPEG Support' => boolean true 'PNG Support' => boolean true 'WBMP Support' => boolean true 'XPM Support' => boolean false 'XBM Support' => boolean true 'JIS-mapped Japanese Font Support' => boolean false значит с библиотекой всё нормально, может ошибка в коде примера? Подскажите пожалуйста, кто сталкивался.
Пример повторил, всё работает Нужно узнать подробности об ошике где-нибудь в логе, или настроить Апач на подробный вывод ошибок. Может, файл сохранён в кодировке utf-8 с сигнатурой BOM, может, пробелы есть перед началом скрипта <?php.
Настройки те же. Код (Text): GD Support enabled GD Version bundled (2.0.34 compatible) FreeType Support enabled FreeType Linkage with freetype FreeType Version 2.3.9 GIF Read Support enabled GIF Create Support enabled JPEG Support enabled libJPEG Version 6b PNG Support enabled libPNG Version 1.2.37 WBMP Support enabled XBM Support enabled Код (Text): 'GD Version' => string 'bundled (2.0.34 compatible)' (length=27) 'FreeType Support' => boolean true 'FreeType Linkage' => string 'with freetype' (length=13) 'T1Lib Support' => boolean false 'GIF Read Support' => boolean true 'GIF Create Support' => boolean true 'JPEG Support' => boolean true 'PNG Support' => boolean true 'WBMP Support' => boolean true 'XPM Support' => boolean false 'XBM Support' => boolean true 'JIS-mapped Japanese Font Support' => boolean false
Убери header() и вызови скрипт напрямую из браузера. Если php на что-то ругается - ты увидешь текст ругательств.
Убрал header вызвал напрямую выдало следующее: GIF87aШn яџџџ,Шnў ЉЫэЃДкГnAlтHцyvЂюЧ2 jь7чњзшт D<Ь|6ЇTOНj[KЖIУо$љьЃ7Ќ5YэСуPКkn'тѓ^ўUщЧXЕ7јPh8ИАШјтјљBйgЉI1Љ)жЙђЩz8ЊУixZZЈJгЊј;KE{ІЫщћћ,lВKw\ьjЋlМі\§ж\й:- ІЭЫНхM\ Ю|]mќ:ЎnNТњО> :_.Ю~пЎjяэ+hуп ;1lЈщЁМ=еЋhёFК7fdЧЫ\,A$$-БtихІ2kEЌyсх0ЋhђьѓчwtоФdєЈKЁ=2щєЉMJIЃ.ЁjFЌ@ЏrMЃеЦз\TЧdTйДМВЕВі-\Дrчk7QX{/с]Іїoо@}н*L5aСFn cМТё6Ш)%7AЬШBЪ+-уlЪ3GаzD%EѓYдл,cfMьйДkлО;ЗюнМ{Ї-;
Ошибок не выдал. Остаётся дело либо в BOM (кодировка файла скрипта utf8 + BOM), либо где-то какие-то лишние символы всё-таки закрались - пробелы, переносы строк и т.п. Смотри, нету ли чего перед <?php . Также, если у тебя в конце скрипта стоит ?> - то убедись что нету ни одного символа после него.
Спасибо, действительно были символы после и перед php, это были теги html, как же мне без них-то, без них работает.
Php скрипт, который выводит картинку, не должен больше ничего выводить, никаких html тегов и ничего другого, только заголовок header("Content-Type: image/gif") и далее вывод бинарных данных.
А можно ли изображению ссылку задать то есть ткнул по нему и на другую страничку передались данные о том, что ты по нему ткнул?
Вот вы понимаете же да, что это да такой степени глупый и тупой вопрос? Вы занимаетесь программированием и разметкой и не знаете как сделать изображение ссылкой на другую страницу, будь это с переадресацией или без на javascript или вообще без перехода?!