Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Можно ли в ссылку вставить массив?

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
quinlena
Отправлено: 31 Августа, 2012 - 09:12:26
Post Id


Частый гость


Покинул форум
Сообщений всего: 157
Дата рег-ции: Апр. 2012  
Откуда: Казахстан


Помог: 0 раз(а)




Звучит страшно, но знаю, что нельзя массив в ссылку вставить, но как правильно сформировать ссылку, если не знаешь количество параметров? Количество параметров зависит от количества выбранных чекбоксов...
 
 Top
EuGen Администратор
Отправлено: 31 Августа, 2012 - 09:16:18
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)






-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
quinlena
Отправлено: 31 Августа, 2012 - 09:19:16
Post Id


Частый гость


Покинул форум
Сообщений всего: 157
Дата рег-ции: Апр. 2012  
Откуда: Казахстан


Помог: 0 раз(а)




[quote=EuGen]http://php.su/functions/?http_build_query
?[/quote]
Кажется оно)) Спасибо))
(Добавление)
[quote=EuGen][/quote]
А обратно как ее расшифровать, не подскажете?
 
 Top
EuGen Администратор
Отправлено: 31 Августа, 2012 - 11:12:52
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)






-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
quinlena
Отправлено: 31 Августа, 2012 - 11:16:14
Post Id


Частый гость


Покинул форум
Сообщений всего: 157
Дата рег-ции: Апр. 2012  
Откуда: Казахстан


Помог: 0 раз(а)





Но я понимаю так, что она не вернет тот самый массив, который был, из которого я ссылку сделала?
(Добавление)

Решила проблему по-другому, извлекла все с помощью цикла.
 
 Top
EuGen Администратор
Отправлено: 31 Августа, 2012 - 11:40:51
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




quinlena
Если нужен исходный массив, то это несложно:
PHP:
скопировать код в буфер обмена
  1. $sUrl = 'http://domain.com/script.php?param0=value0&m1=value1&m2=value2';
  2. $rgUrl= parse_url($sUrl);
  3. parse_str($rgUrl['query'], $rgUrl);
  4. //var_dump($rgUrl);


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
armancho7777777 Супермодератор
Отправлено: 31 Августа, 2012 - 12:02:34
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




EuGen пишет:
quinlena
Если нужен исходный массив, то это несложно:
PHP:
скопировать код в буфер обмена
  1. $sUrl = 'http://domain.com/script.php?param0=value0&m1=value1&m2=value2';
  2. $rgUrl= parse_url($sUrl);
  3. parse_str($rgUrl['query'], $rgUrl);
  4. //var_dump($rgUrl);

А почему не ...

?
 
 Top
EuGen Администратор
Отправлено: 31 Августа, 2012 - 12:14:38
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




armancho7777777 пишет:
А почему не ...

Потому как в условии вовсе не сказано, что разбирается строка, которая является $_SERVER['QUERY_STRING'] (то есть GET-данные для текущего запроса). Быть может, автор темы имеет ввиду задачу по анализу некоторого текстового содержимого.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
quinlena
Отправлено: 31 Августа, 2012 - 12:17:55
Post Id


Частый гость


Покинул форум
Сообщений всего: 157
Дата рег-ции: Апр. 2012  
Откуда: Казахстан


Помог: 0 раз(а)




EuGen пишет:
armancho7777777 пишет:
А почему не ...

Потому как в условии вовсе не сказано, что разбирается строка, которая является $_SERVER['QUERY_STRING'] (то есть GET-данные для текущего запроса). Быть может, автор темы имеет ввиду задачу по анализу некоторого текстового содержимого.

Уже все сделала) Я пытаюсь сделать рассылку сообщения, но почему-то mail() не срабатывает...
 
 Top
armancho7777777 Супермодератор
Отправлено: 31 Августа, 2012 - 12:19:34
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




Я на счёт этого ...
EuGen пишет:
Если нужен исходный массив, то это несложно:

Ведь http_build_query сформирует и вернёт эту часть url строки:
param0=value0&m1=value1&m2=value2
 
 Top
quinlena
Отправлено: 31 Августа, 2012 - 12:20:57
Post Id


Частый гость


Покинул форум
Сообщений всего: 157
Дата рег-ции: Апр. 2012  
Откуда: Казахстан


Помог: 0 раз(а)




armancho7777777 пишет:
Я на счёт этого ...
EuGen пишет:
Если нужен исходный массив, то это несложно:

Ведь http_build_query сформирует и вернёт эту часть url строки:
param0=value0&m1=value1&m2=value2

Что вы спорите? Я сделала вот так:
PHP:
скопировать код в буфер обмена
  1. for ($i=0; $i<$size; $i++){
  2.       $ret=$_REQUEST[$i];
  3.       $sql=mysql_query("select * from `clients` where `id_client`='".$ret."'");
  4.       $sql=mysql_fetch_array($sql);
  5.      
  6.         $blabla.=implode('',array($sql['name_client']));
  7.                 if($i < $size-1){
  8.                         $blabla .= ",   ";
  9. }
  10.      
  11. }
 
 Top
EuGen Администратор
Отправлено: 31 Августа, 2012 - 12:21:25
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




http_build_query создаст ровно тот url, который был передан в массиве. А массив этот, в свою очередь, в общем случае может не иметь ничего общего с $_GET или вообще с запросом к текущему скрипту (это может быть, например, скрипт для CLI, занимающийся некоторыми операциями с cURL).

Спора нет. Просто использование $_GET в данном контексте - не корректно в общем случае. Решение найдено (либо же написано самостоятельно), поэтому цель темы уже достигнута.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
armancho7777777 Супермодератор
Отправлено: 31 Августа, 2012 - 12:36:12
Post Id



Активный участник


Покинул форум
Сообщений всего: 4526
Дата рег-ции: Февр. 2011  
Откуда: Москва


Помог: 221 раз(а)




Да, Вы правы?)
EuGen пишет:
может не иметь ничего общего с $_GET или вообще с запросом к текущему скрипту (это может быть, например, скрипт для CLI, занимающийся некоторыми операциями с cURL).

quinlena пишет:
Что вы спорите?

Да ну что Вы, какой спор ?))
Просто мне было именно интересно, почему EuGen предложил так сделать.))
А так как я сомневаюсь, что он может предложить худшую реалицию чем я, - спросил ))
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB