Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Скрипт в картинке

Сообщения:  [1-5] 

 
 автор: babilonian   (17.08.2005 в 22:23)   письмо автору
 
   для: cheops   (17.08.2005 в 12:25)
 

Ага, все теперь дошло. Спасибо. Надо поробовать применить на практике)))

   
 
 автор: cheops   (17.08.2005 в 12:25)   письмо автору
 
   для: babilonian   (17.08.2005 в 05:29)
 

Нет это нормально, дело в том, что опасность представляют картинки, которые содержат в себе PHP-код, т.е. чтобы PHP-код выполнялся не на fatal.ru, а на хосте куда эти картинки загружаются и куда в принципе никакой внешний PHP-код проникнуть не может. Т.е. трудность представляет вставка PHP-кода в бинарные данные картинки, нарисовать картинку при помощи PHP не сложно - именно по такому принципу дествуют внешние счётчики вроде rambler.ru или mail.ru.

   
 
 автор: Loki   (17.08.2005 в 09:27)   письмо автору
 
   для: babilonian   (17.08.2005 в 05:29)
 

Так речь шла о встраивании скрипта в код картинки. А формировать картинку с помощью скрипта никто не запрещает.

   
 
 автор: Ziq   (17.08.2005 в 07:33)   письмо автору
 
   для: babilonian   (17.08.2005 в 05:29)
 

Кто сказал, что нельзя вставить скрипт в картинку. Как же тогда делать графический счетчик на сайтах где нет PHP.
P.S. Статью не до конца читал, может что не так понял.

   
 
 автор: babilonian   (17.08.2005 в 05:29)   письмо автору
 
 

Эта тема поднималась, и насколько я помню все сошлись на том, что скрипт в картинку вставить нельзя. А что вы думаете вот об этой статейке?

Вступление
##########

Итак, Вы, возможно, хотите сделать подпись, в которой кроме вашего изображения и данных
будут ещё и данные из заголовка HTTP запроса, например ip, браузер, провайдер или ось
смотрящего сей баннер.
Сделать это достаточно просто. Для этого необходимо:
-хостинг с поддержкой PHP и .htaccess;
-своя картинка;
-прямые руки.
Для этого не потребуются (хотя и приветствуются) зание PHP и наличие мозга в черепной
коробке.

Своя картинка
#############

Рисуем картинку/лого/аватор. Только поаккуратнее, и оставляем свободное место для текста,
который будет выводить скрипт. Сохраняем в формате png под именем "img.png".

Скрипт
######

В файле с именем "logo.png" сохраняем нижеследующее:
<?php
Header("Content-type: image/png");
$string="Your IP is $REMOTE_ADDR";
$im = ImageCreateFromPng("img.png");
$c = ImageColorAllocate($im, 225, 225, 225);
ImageString($im,3,75,43, $string,$c);
ImagePng($im);
ImageDestroy($im);
?>

Теперь объясняю:

<?php
Начало искрипта

Header("Content-type: image/png");
Это нужно для определения типа документа

$string="Your IP is $REMOTE_ADDR";
А это сам текст, который будет выводиться.
Сюда можно записаль любую переменную из хэдеров. В моём случае это $REMOTE_ADDR.

$im = ImageCreateFromPng("img.png");
Создаем картинку средствами PHP: img.png - ваша нарисованная картинка, узнали?

$c = ImageColorAllocate($im, 225, 225, 225);
Собственно, цвет. Три цифры - RGB. Красная, зеленая и синяя составляющии.

ImageString($im,3,75, 43, $string,$c);
Собственно, пишем по картинке. Вторая переменная (3) - размер; третья (75) и
четвертая (43) - расстояние от левого верхнего угла по горизонтали и вертикали,
пятая ($string) - текст, шестая ($c) - цвет.

ImagePng($im);
Мы её выводим на экран.

ImageDestroy($im);
Ну теперь всё, уничтожаем, синтаксис требует =).

?>
Конец скрипта


Хостинг
#######

Наилучшим результатом цена/качество из мною известных хостингов отличается
Фатал.ру[ http://www.fatal.ru ]
Зарегистриуйтесь, войдите по FTP, создайте папку (например logo) и залейте туда
два файла. Картинку и скрипт.
Теперь чтобы файлы с расширением png обрабатывались не как картинки, а как скрипты
php, мы должны его настроить. Создаем файл blabla.txt и вписываете в него строку:
AddType application/x-httpd-php .png
Тоже заливаем его на сервер. Теперь переименовываем его в ".htaccess".
Он становится скрытым и больше не мешает.

Заключение
##########

Всё, скрипт готов. Можно размещать в качестве аваторов/подписей на форумах или
делать с ним то, для чего вы его делали.
Но тут у вас простор для творчества: скриптик этот может обрабатывать cookies,
что поможет вам сделать что-то типа аваторки с бомбой, шнур которой будет уменьшаться.
или показывать текущее время. Короче думайте и творите!

   

Сообщения:  [1-5] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования