Paul_M
Новичок
Построение меню с помощью GD
Задача: клиент желает иметь меню написанное русским шрифтом под старину. Сделать просто надпись - нет проблем:
Header("content-tipe: image/png");
$im= imagecreate(300,400);
$white=imagecolorallocate($im, 255,255,100);
$red=imagecolorallocate($im, 255,0,0);
$str="надпись";
imagettftext($im,24,0,20,50,$red,"CYOL____.TTF",$str);
А вот выаести меню из базы данных не получается
<?php
Header("content-tipe: image/png");
require("db_config.php");
mysql_connect($sql_host,$sql_login,$sql_passwd);
mysql_select_db($sql_database);
$cat_res=mysql_query("SELECT id, cat_name FROM categ
WHERE cat_visible<>0 AND parents=1 ORDER BY cat_order");
while ($tip = mysql_fetch_array($cat_res)) {
echo "<br>";
$im= imagecreate(300,400);
$white=imagecolorallocate($im, 255,255,100);
$red=imagecolorallocate($im, 255,0,0);
$str=$tip["cat_name"];
imagettftext($im,24,0,20,50,$red,"CYOL____.TTF",$str);
ImagePng($im);
}
?>
выводит двоичный текст вместо катинок надписей. А стоит убрать echo "<br>"; - выводит первую надпись из базы данных.
Кто подскажет в чем секрет.
Задача: клиент желает иметь меню написанное русским шрифтом под старину. Сделать просто надпись - нет проблем:
Header("content-tipe: image/png");
$im= imagecreate(300,400);
$white=imagecolorallocate($im, 255,255,100);
$red=imagecolorallocate($im, 255,0,0);
$str="надпись";
imagettftext($im,24,0,20,50,$red,"CYOL____.TTF",$str);
А вот выаести меню из базы данных не получается
<?php
Header("content-tipe: image/png");
require("db_config.php");
mysql_connect($sql_host,$sql_login,$sql_passwd);
mysql_select_db($sql_database);
$cat_res=mysql_query("SELECT id, cat_name FROM categ
WHERE cat_visible<>0 AND parents=1 ORDER BY cat_order");
while ($tip = mysql_fetch_array($cat_res)) {
echo "<br>";
$im= imagecreate(300,400);
$white=imagecolorallocate($im, 255,255,100);
$red=imagecolorallocate($im, 255,0,0);
$str=$tip["cat_name"];
imagettftext($im,24,0,20,50,$red,"CYOL____.TTF",$str);
ImagePng($im);
}
?>
выводит двоичный текст вместо катинок надписей. А стоит убрать echo "<br>"; - выводит первую надпись из базы данных.
Кто подскажет в чем секрет.