Модераторы: Aliance, skyboy, MoLeX, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Выдает вместо картинки ее внутренности 
:(
    Опции темы
back
Дата 1.3.2007, 15:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 11.2.2007

Репутация: нет
Всего: нет



Исправляюсь. Почему вместо картинки выводит ее внутренности?

‰PNG  IHDRђ,ђЩ Q PLTEяяяяSSFРСIDATxњнЬMr¤ pЮм±J/‘S`Ѕ'U:‡?Se3›>е?QЪЇж‘эі±h‘џL7FD$$¤K%  §D\©Ш’µfG„»мЙў4ьiv$KЗ§HB~Эпч @Ђ @Ђ\ ©jгШai\1B2C$¤ юH¤МЃPЋЋџ?@У[wђs ЭлцяEЋДjЛЋђИ‚~D’ИЂ(—Ўгч$ “гЂІ‰?ВI‹t?±‡Q‰m)rРfD)зЦы.М ?–Џ»ҐDЦ/5WЎМ:тjЗ—Fлu$ћ¶7—}4/ўЁnШџ–‘'ї›D|A @ЂИҐђк Зyђn8ћ!UЏGК<?0…eGґ-Ж7<?к^ња>2Щ  @Ђ @Ђ¬!ZV†q…`GH$ж…#MDи~N*wЗg@ВЅ?ЌёrЬy<ЙZEћЋDўЏGІ‘5?B9ђП№†‰W$ЋL тУ?"і0…*ў­^?Ц–щњаЗЋ?Еgйљ‹й:~aЖЩяt џY.  @ЦХї$Е‹h+"ГљФНu«щ#!QD‰)cГљД?-т—рyђ]З @Ђ9в_rШЌиrбБвф8WJsqэ«О#±З-wDўЫѓн‰DDц4Ws°г›=пУ юNr »І#$a­@Ђ @Ђ9)ўЪцwчЙЯ¶mяtЫ6i¶m›eъMЩoИ|Eщ8мќdї ыЬькЄr¶@ЩP°цеuPНp3ж /ьёуГЙе|©5я…YлO=МNВ–>°юцю;’щўq&  


Код

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head>
  <meta content="text/html; charset=Windows-1251" http-equiv="content-type">
  <title>123</title>


</head><body>
<table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2">

<?php $visites = array(138, 254, 381, 652, 896, 720, 140, 556, 663, 331, 407, 768);
$largeurImage = 400;
$hauteurImage = 300;
$im = ImageCreate ($largeurImage, $hauteurImage) or die ("Ошибка при создании изображения");
$blanc = ImageColorAllocate ($im, 255, 255, 255);
$noir = ImageColorAllocate ($im, 0, 0, 0);
$bleu = ImageColorAllocate ($im, 0, 0, 255);
// проводим горизонтальную линию, ось абсцисс (время)
ImageLine ($im, 10, $hauteurImage-10, $largeurImage-10, $hauteurImage-10, $noir);
// выводим порядковый номер каждого из 12 месяцев
for ($mois=1; $mois<=12; $mois++) {
ImageString ($im, 0, $mois*30, $hauteurImage-10, $mois, $noir);
}

// проводим вертикальную линию, чтобы ось ординат (число посещений)
ImageLine ($im, 10, 10, 10, $hauteurImage-10, $noir);
$visitesMax = 1000;

// рисуем палочки
for ($mois=1; $mois<=12; $mois++) {
$hauteurImageRectangle = round(($visites[$mois-1]*$hauteurImage)/$visitesMax);
ImageFilledRectangle ($im, $mois*30-7, $hauteurImage-$hauteurImageRectangle, $mois*30+7, $hauteurImage-10, $bleu);
ImageString ($im, 0, $mois*30-7, $hauteurImage-$hauteurImageRectangle-10, $visites[$mois-1], $noir);
}

// вот и все
ImagePng ($im);
?>
<tbody>
<tr>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
</tbody>
</table>

<br>

</body></html>

PM MAIL   Вверх
Всемогущий
Дата 1.3.2007, 15:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 440
Регистрация: 25.6.2006
Где: Челябинск

Репутация: нет
Всего: 13



Наворотил такую круть ,а задаёшь простые вопросы
Код

<?php
header("Content-type: image/png");
 $visites = array(138, 254, 381, 652, 896, 720, 140, 556, 663, 331, 407, 768);
$largeurImage = 400;
$hauteurImage = 300;
$im = ImageCreate ($largeurImage, $hauteurImage) or die ("Ошибка при создании изображения");
$blanc = ImageColorAllocate ($im, 255, 255, 255);
$noir = ImageColorAllocate ($im, 0, 0, 0);
$bleu = ImageColorAllocate ($im, 0, 0, 255);
// проводим горизонтальную линию, ось абсцисс (время)
ImageLine ($im, 10, $hauteurImage-10, $largeurImage-10, $hauteurImage-10, $noir);
// выводим порядковый номер каждого из 12 месяцев
for ($mois=1; $mois<=12; $mois++) {
ImageString ($im, 0, $mois*30, $hauteurImage-10, $mois, $noir);
}

// проводим вертикальную линию, чтобы ось ординат (число посещений)
ImageLine ($im, 10, 10, 10, $hauteurImage-10, $noir);
$visitesMax = 1000;

// рисуем палочки
for ($mois=1; $mois<=12; $mois++) {
$hauteurImageRectangle = round(($visites[$mois-1]*$hauteurImage)/$visitesMax);
ImageFilledRectangle ($im, $mois*30-7, $hauteurImage-$hauteurImageRectangle, $mois*30+7, $hauteurImage-10, $bleu);
ImageString ($im, 0, $mois*30-7, $hauteurImage-$hauteurImageRectangle-10, $visites[$mois-1], $noir);
}

// вот и все
echo ImagePng ($im);
?>



--------------------
Цитата(smartov @  16.1.2007,  13:26 Найти цитируемый пост)
Видел я PHP код, который пишут наСильники, никогда на php не писавшие  :D  То еще зрелище. Все пытаются сделать руками и через ж (как в С привыкли). Все пытаются память освобождать итд итп. 
PM MAIL ICQ   Вверх
mishaSL
Дата 1.3.2007, 15:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1046
Регистрация: 10.1.2007
Где: Санкт-Петербург

Репутация: 2
Всего: 54



Цитата(back @  1.3.2007,  15:06 Найти цитируемый пост)
Почему вместо картинки выводит ее внутренности?


Т.к. необходимо отправлять заголовок, что это картинка. В данном случае:
Код

header("Content-type: image/png");


Весь код вывода картинки необходимо поместить в отдельный файл (к примеру pic.php). А в файле где она должна отображать делаешь примерно так:
Код

<img src="pic.php" />


И все должно работать.




--------------------
Лучший способ научиться программированию - это посмотреть как это делают другие...
PM MAIL   Вверх
back
Дата 1.3.2007, 15:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 11.2.2007

Репутация: нет
Всего: нет



Да работает, если отдельно. Мне надо выбирать данные из базы и строить график. Если в этот отдельный файл добавить код с работой БД, то опять кракозябры, если я пытаюсь читать в этом файле данные из праметров опять они же, т.е. 
Код

while (list($key, $val) = each($HTTP_GET_VARS))
{
    if (strpos($key,"tochka")!==false)
{ $visites[$index] = $val;
echo $visites[$index];
$index++; 
}


Как мне связать данные из базы + график?
PM MAIL   Вверх
Всемогущий
Дата 1.3.2007, 16:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 440
Регистрация: 25.6.2006
Где: Челябинск

Репутация: нет
Всего: 13



сказал бы какая бд было бы  легче,
предположим mysql 4
Код

$result=mysql_query("SELECT MONTH(`time`) as mon, count(*) as num from table where year(`time`)='2007'");
//получаем номера месяцев и количеством *** 
   while ($row= mysql_fetch_row($result)) {  
  $otvet[$row['mon']]=$row['num'];
}
//и подставляем ответ в твой код вместо $visites


Добавлено @ 16:07 
Совсем забыл :Админ говорит Одина тема : один вопрос

Это сообщение отредактировал(а) Всемогущий - 1.3.2007, 16:05


--------------------
Цитата(smartov @  16.1.2007,  13:26 Найти цитируемый пост)
Видел я PHP код, который пишут наСильники, никогда на php не писавшие  :D  То еще зрелище. Все пытаются сделать руками и через ж (как в С привыкли). Все пытаются память освобождать итд итп. 
PM MAIL ICQ   Вверх
back
Дата 1.3.2007, 16:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 11.2.2007

Репутация: нет
Всего: нет



 header("Content-type: image/png"); Вот это поднял в отдельном файле на самый вверх. Спасибо за участие.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Графика | Следующая тема »


 




[ Время генерации скрипта: 0.0608 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.