php-банер статистики [РЕШЕНО]

Главные вкладки

Аватар пользователя Alexmelin Alexmelin 13 мая 2011 в 14:44

Я создаю модуль, который сохраняет в БД некоторые данные. И возникла потребность отображения этих сведений в баннер статистики, который необходимо с нуля нарисовать на php. Разбираю стандартные функции рисования PHP и наткнулся на проблему интеграции этого кода в мой модуль.
Например, имеется функция,

<?php
function graph(){
header ("Content-type: image/png");
$img imagecreatetruecolor(320240);
$text_color imagecolorallocate($img2331491);
imagestring($img255,  "This is example"$text_color);
imagepng($img);
imagedestroy($img);
}
?>

которая вызывается из хука форм. Чтобы хоть что-то отобразилось на экране пришлось модуль кодировать в UTF-8(без BOM). Но при этом пропал полностью сайт, а отобразилась только прорисовка из function graph. Поэтому не признаю правильность этого метода и прошу помощи.

Комментарии

Аватар пользователя vitg vitg 13 мая 2011 в 22:10

1) Создать php-файл, который будет генерить изображение. У вас, видимо, это функция graph. Значит, она должна быть вызываема в hook_menu.
2) Ваша картинка вставляется как

"Alexmelin" wrote:
которая вызывается из хука форм

Это тут при чем?

Аватар пользователя Alexmelin Alexmelin 14 мая 2011 в 15:54

Огромное спасибо, vitg.
1:

$items['Datchik/graph'] = array(
    'title' => 'Graph',
    'description' => '',
    'file' => 'graph.php',
    'page callback' => 'graph',
    'type' => MENU_NORMAL_ITEM,
  );

2:

$form['target2'] = array(
                '#type' => 'markup',
                '#prefix' => '<div id="target"><img src="http://site.ru/graph?id=4444">',
                '#value' => t(''),
                '#suffix' => '</div>',
        );

Все работает!