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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Передача переменной скрипту картинки 
:(
    Опции темы
supercelt
Дата 16.6.2008, 10:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Строю график. Из фала вызываю так:
Код

switch($period)
{#switch
case '1':
$f=$period;
echo '<br /><img src="graph.php" />';
break;
}


Сам скрипт:
Код

$im = imagecreate(600, 300);
$w = imagecolorallocate($im, 255, 255, 255);
$g = imagecolorallocate($im, 200, 200, 200); 
$r = imagecolorallocate($im, 255, 0, 0);
imagefilledrectangle($im, 0, 0, imagesx($im), imagesy($im), $w);
imageline($im, 0, 280, 580, 280, $g);//x
imageline($im, 20, 0, 20, 300, $g);//y

$font=getcwd().'/times.ttf';
imagestring($im, $font, 10, 286, '0', $r);//pishem znachenie nol

if(isset($period))
{
imagestring($im, $font, 550, 286, 'Hours', $g);
//stroim deleniya po osi X
$k=40;
$time=1;
  for($h=40; $h<=500; $h++)
  {
    if($h==$k)
    {
    imageline($im, $h+3, 277, $h+3, 283, $g);
    $k=$h+20;
      imagestring($im, $font, $h, 287, $time, $g);//pishem znachenie shkali
      $time++;
    }
  }
  
//Stroim deleniya po osi Y
$a=40;
  for($s=40; $s<=300; $s++)
  {
    if($s==$a)
    {
    imageline($im, 17, $s, 23, $s, $g);
    $a=$s+20;
    }
  }
}  
header('Content-type: image/png');
imagepng($im);
imagedestroy($im);


Надо скрипту graph.php передать переменную $f, необходимую для построения. 
Если делать так: echo '<br /><img src="graph.php?r='.$f.'" />'; ,то скрипт не видит эту переменную. 
так вот как бы так сделать?. А по другому вызывать скрипт не получается. Напримен не вынося его в файл graph, а прям в исходном файле код писать, то вмеесто картинки каракули. Но это и понятно у меня в брауз до рисунка много хлама выводится и конечно заголовок игнорируется

PM   Вверх
Feldmarschall
Дата 16.6.2008, 10:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


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

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



Цитата(supercelt @  16.6.2008,  10:26 Найти цитируемый пост)
у меня в брауз до рисунка много хлама выводится и конечно заголовок игнорируется

Жесть. А если бы не игнорировался, то все было бы нормально, ага =) 
Новое слово в HTML.

Цитата(supercelt @  16.6.2008,  10:26 Найти цитируемый пост)
Если делать так: echo '<br /><img src="graph.php?r='.$f.'" />'; ,то скрипт не видит эту переменную. 

передача переменных - это детский сад веб-программирования. при чем здесь картинки - неясно совсем.
$_GET['r'] <- вот здесь твоя переменная.

Хотя, скорее всего, товарищ просто запутался в именах - f, r, period - столько имен, и все у одной и той же переменной.
PM   Вверх
krundetz
Дата 16.6.2008, 10:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вечный странник
***


Профиль
Группа: Завсегдатай
Сообщений: 1400
Регистрация: 14.6.2007
Где: НН(Сормово)

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



Странно как то. Почему он её не видет? Как  вы её пытаетесь получить? Может сохранять получившуюся картинку в файл отдавать её браузеру а потом умичтожать?


--------------------
!цензоры - Хранитель стратегической жидкости
Группа ТГВ
Группа Нижний Новгород
user posted image
PM MAIL   Вверх
supercelt
Дата 16.6.2008, 11:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



krundetz, при таком вызове как я написал он действительно их не видит. Не знаю почему. А в файл - это вариант, но не прокатит. Так как хоть отключай не отключай у брауза кэш, всё равно надо будет жать F5 что бы каждый раз показывались новые данные а не старые

krundetz,
$_GET['r'] - нету её тут. Не существует её
PM   Вверх
Feldmarschall
Дата 16.6.2008, 11:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


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

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



проверь опечатки. 
проверь - нее затираешь ли ты переменную.
посмотри html - передаешь ли ты что-нибудь.
сделай скрипт из одного Echo $_GET['r']
скопируй ссылку из html в адрес браузера и вызови скрипт с картинкой напрямую
не сиди - делай что-нибудь. опечатки за тебя никто не исправит.

здравый смысл подключи
если у тебя не передается переменная, то не надо думать, что это бага в пхп
это значит, что у тебя где-то что-то криво написано. 
значит, надо искать это место, где конкретно у тебя криво написано, а не спрашивать на форуме, почему вообще могут не передаваться переменные.

Добавлено через 3 минуты и 36 секунд
Цитата(supercelt @  16.6.2008,  10:26 Найти цитируемый пост)
if(isset($period))

жесть. ну как есть - жесть.

Это сообщение отредактировал(а) Feldmarschall - 16.6.2008, 11:55
PM   Вверх
supercelt
Дата 16.6.2008, 12:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



В чём жесть-то?... Всё-равно тут не весь код. ещё до этого есть. Вот оттуда $period и берётся. Я не считаю что это ошибка ПХП. Я и думаю , что где-то криво написано, сам не нашёл вот и обратился за помощью что бы профессиональным взглядом посмотрели. 
PM   Вверх
Feldmarschall
Дата 16.6.2008, 13:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


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

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



На что смотреть-то профессиональным взглядом?!
На код, который "до этого ещё есть"?
PM   Вверх
supercelt
Дата 16.6.2008, 13:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Объясняю суть

Код

echo '<br /><img src="graph.php" />'; - работает, но переменные не видит


Код

require('graph.php'); - не работает, но переменные видит

PM   Вверх
MoLeX
Дата 16.6.2008, 13:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

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



Цитата(supercelt @  16.6.2008,  10:26 Найти цитируемый пост)
Если делать так: echo '<br /><img src="graph.php?r='.$f.'" />'; ,то скрипт не видит эту переменную. 


закоменты все строки в graph.php, и напиши следующее
Код

var_dump($_GET);


вызывай его из своего скрипта с какимнить числовым параметром.




--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
krundetz
Дата 16.6.2008, 13:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вечный странник
***


Профиль
Группа: Завсегдатай
Сообщений: 1400
Регистрация: 14.6.2007
Где: НН(Сормово)

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



Цитата(supercelt @ 16.6.2008,  13:11)
Объясняю суть

Код

echo '<br /><img src="graph.php" />'; - работает, но переменные не видит


Код

require('graph.php'); - не работает, но переменные видит

Может попробовать эти переменные передать
Код

echo '<br /><img src="graph.php?r=$f" />'; - работает, но переменные не видит



--------------------
!цензоры - Хранитель стратегической жидкости
Группа ТГВ
Группа Нижний Новгород
user posted image
PM MAIL   Вверх
Feldmarschall
Дата 16.6.2008, 13:29 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


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

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



Цитата(supercelt @  16.6.2008,  13:11 Найти цитируемый пост)
require('graph.php'); - не работает, но переменные видит

опять 25.
html учить пхп программистам ни к чему, конечно же.
картинки у нас вставляются прямо в страничку, копипастом.
Да и вообще - что такое html, когда мы ничего кроме фронтпейджа не видели?


Цитата(supercelt @  16.6.2008,  13:11 Найти цитируемый пост)
echo '<br /><img src="graph.php" />'; - работает, но переменные не видит

интересно, о чем мы здесь два часа говорили?
чтобы скрипт переменную увидел, её надо ему передать!
PM   Вверх
yurik_l
Дата 16.6.2008, 14:19 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


тарантиноман



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

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



Цитата

Если делать так: echo '<br /><img src="graph.php?r='.$f.'" />'; ,то скрипт не видит эту переменную


Вот так правильно:
Код

echo "<br /><img src=\"graph.php?r=" . $f . "\"/>";

PM MAIL   Вверх
americanets
Дата 18.6.2008, 20:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1100
Регистрация: 27.9.2006

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



yurik_l, 

это получается из разряда найди 5 отличий, вобщем одно и тоже, но  при ' php не ищет внутри переменные, а при " ищет и следовательно работает медленнее. 

те

Код

$A = 'test';

echo "My test - $A"; // My test - test


echo 'My test  - $A'; // My test - $A


 


--------------------
Пусть популярную музыку слушают те, среди кого она популярна
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Графика | Следующая тема »


 




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


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

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