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] 

> Без описания
casper2010
Отправлено: 16 Марта, 2010 - 13:35:30
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Март 2010  


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




Народ помогите плизз

вообщем вот такая проблема

ссылка ввиде
domain.ru/script.php?a=1&a=2

но вот если она будет вот такой
domain.ru/script.php?a=1&a=2

то переменная a=2 неработает


сам скрипт

PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3. <?PHP
  4.     $a=$_REQUEST['a'];
  5.     if ($a=="1")
  6.     {?>
  7.  
  8. 11111
  9.  
  10. <?PHP
  11.     }    elseif ($a=="2")
  12.     {?>
  13.  
  14. 22222
  15.  
  16. <?PHP
  17. }else{
  18. ?>
  19.  
  20. невыбрано a=
  21.  
  22. <?PHP } ?>
  23.  
  24.  
 
 Top
JustUserR
Отправлено: 16 Марта, 2010 - 13:38:02
Post Id



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


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


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




casper2010 пишет:
но вот если она будет вот такой
domain.ru/script.php?a=1&amp;a=2
то переменная a=2 неработает
Конечно не сработает ведь данная строка запроса подлежит html-раскодированию - как вариат можете считать ENV{QUERY_STRING} после чего сделать последовательно html_entity_decode и потом уже регулярными выражениями разбирать ее на переменные (Как в свое время делали на Perl Улыбка и для полученных имен переменных и их значений делать urldecode


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
casper2010
Отправлено: 16 Марта, 2010 - 13:40:32
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Март 2010  


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




я вообще в пхп мало что понимаю

в скрипте самом нельзя не как сделать так чтоб он работал ?
 
 Top
Champion Супермодератор
Отправлено: 16 Марта, 2010 - 13:40:42
Post Id



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


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


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




Потому что там должен быть именно амперсанд, а не его сущность.
 
 Top
JustUserR
Отправлено: 16 Марта, 2010 - 13:42:56
Post Id



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


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


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




casper2010 пишет:
В скрипте самом нельзя не как сделать так чтоб он работал ?
Делайте по алгоритму указанному выше только именно в указанном порядке - потому что если скажем сначала сделать urldoecode то потом не отличите переменные от их значений если они содержали знак = или & Улыбка


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
casper2010
Отправлено: 16 Марта, 2010 - 14:00:58
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Март 2010  


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




JustUserR пишет:
Делайте по алгоритму указанному выше только именно в указанном порядке - потому что если скажем сначала сделать urldoecode то потом не отличите переменные от их значений если они содержали знак = или &


я вообще в пхп ничего не понимаю! помогите
 
 Top
JustUserR
Отправлено: 16 Марта, 2010 - 17:12:18
Post Id



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


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


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




casper2010 пишет:
Я вообще в пхп ничего не понимаю! Помогите
Можете сделать примерно так
PHP:
скопировать код в буфер обмена
  1. $qs_uh=getenv("QUERY_STRING");
  2. $qs_uh=html_entity_decode($qs_uhuu);
  3. $enc_vrs=explode("&",$qs_uh);
  4. for($i=0;$i<count($enc_vrs);$i++)
  5. {list($vr,$vn)=explode("=",$en_vrs[$i]);
  6. $vr=urldeocde($vr);
  7. $vn=urldeocde($vn);
  8. $_REQUEST["$vr"]="$vn";
  9. }
Таким образом в хеш-массиве $_REQUEST вы получите нужные вам значения


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 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