Автор Тема: Передача массива через Гет  (Прочитано 3954 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн tarya

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 370
  • +0/-0
  • 0
    • Просмотр профиля
Передача массива через Гет
« : 09 Июля 2004, 14:20:00 »
Привет.

Написал я как то скрипт который рисует ПНГ графики. Теперь задумался переделать его в универсальную функцию которая бы по приему данных рисовала бы то что мне нужно... ну и как следует мне нужно передать массив данных. Но чтото ничего невыходит.




$str 
= <<<EOD
	
<div align="center" style="padding: 10px; margin: 10px; border: 1px solid #EEE">
<img src="graph2.php?array=
{$array}&graph_width=800&graph_height=250&graph_title=top&left_title=left&bottom_title=bottom&marks=10&text_bars=2" />
</div>
EOD;

echo 
$str;



$array - как его передать?


Благодарствую.
Рожденный с понимающим, и гордо поднятым кулаком! Свидетель разреза запястья — он с ним!

Оффлайн tarya

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 370
  • +0/-0
  • 0
    • Просмотр профиля
Передача массива через Гет
« Ответ #1 : 09 Июля 2004, 14:21:17 »
Посоветовали serialize, unserialize, но чтото не то, непонимаю как она работает.
Рожденный с понимающим, и гордо поднятым кулаком! Свидетель разреза запястья — он с ним!

Оффлайн ThE0ReTiC

  • Главный по тарелочкам
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4041
  • +2/-0
  • 2
    • Просмотр профиля
    • http://
Передача массива через Гет
« Ответ #2 : 09 Июля 2004, 14:54:17 »
tarya
а ты попробуй - сделай serialize - и посмотри во что превариться массив.
пото получившуюся строку передай
а в скрипте-приемнике сделай unserialize, чтобы получить массив обратно
AS IS...

Оффлайн Daiz13

  • наблюдатель
  • Постоялец
  • ***
  • Сообщений: 150
  • +0/-0
  • 2
    • Просмотр профиля
    • http://rg.com.ua/
Передача массива через Гет
« Ответ #3 : 09 Июля 2004, 15:35:01 »
я через while все эллементы массива добавлял к строке запроса.
примерно так:
        
$arguments_link 
= \'\';
        if (is_array($arguments) && count($arguments)>0) {
            while (list($arg, $val) = each($arguments)) {
                $arguments_link .= \'&array_name[\'.$arg.\']=\'.$val;
            }
        }

Оффлайн ThE0ReTiC

  • Главный по тарелочкам
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4041
  • +2/-0
  • 2
    • Просмотр профиля
    • http://
Передача массива через Гет
« Ответ #4 : 09 Июля 2004, 15:40:16 »
Daiz13
зачем? медленее же :)
достаточно serialize <--> unserialize
хотя тоже вариант.
AS IS...

Оффлайн tarya

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 370
  • +0/-0
  • 0
    • Просмотр профиля
Передача массива через Гет
« Ответ #5 : 09 Июля 2004, 15:45:59 »
достаточно serialize <--> unserialize   - оно строит строку с спец символами " и ; из за этого тег бьется.

и массив у меня двумерный.

щя чтото придумаю.

пробую $array = urlencode(serialize($array));  и наоборот потом
Рожденный с понимающим, и гордо поднятым кулаком! Свидетель разреза запястья — он с ним!

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Передача массива через Гет
« Ответ #6 : 10 Июля 2004, 09:59:01 »
Цитировать
tarya:
наоборот потом

не надо.

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28