Я создаю модуль, который сохраняет в БД некоторые данные. И возникла потребность отображения этих сведений в баннер статистики, который необходимо с нуля нарисовать на php. Разбираю стандартные функции рисования PHP и наткнулся на проблему интеграции этого кода в мой модуль.
Например, имеется функция,
<?php
function graph(){
header ("Content-type: image/png");
$img = imagecreatetruecolor(320, 240);
$text_color = imagecolorallocate($img, 233, 14, 91);
imagestring($img, 2, 5, 5, "This is example", $text_color);
imagepng($img);
imagedestroy($img);
}
?>
которая вызывается из хука форм. Чтобы хоть что-то отобразилось на экране пришлось модуль кодировать в UTF-8(без BOM). Но при этом пропал полностью сайт, а отобразилась только прорисовка из function graph. Поэтому не признаю правильность этого метода и прошу помощи.
Комментарии
1) Создать php-файл, который будет генерить изображение. У вас, видимо, это функция graph. Значит, она должна быть вызываема в hook_menu.
2) Ваша картинка вставляется как
Это тут при чем?
Огромное спасибо, vitg.
1:
'title' => 'Graph',
'description' => '',
'file' => 'graph.php',
'page callback' => 'graph',
'type' => MENU_NORMAL_ITEM,
);
2:
'#type' => 'markup',
'#prefix' => '<div id="target"><img src="http://site.ru/graph?id=4444">',
'#value' => t(''),
'#suffix' => '</div>',
);
Все работает!