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]   

> Без описания
Fanatik
Отправлено: 09 Октября, 2007 - 23:57:27
Post Id


Новичок


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


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




есть урл для передачи данных в запрос вида (переманная link содержит русские буквы)
price.php?link=%C0&act=show соот. %C0 это А (так видит опера) работает ок!
price.php?link=А&act=show а так видит IE, и вылетает ошибка 500!
как вылечить это?
 
 Top
evgenijj
Отправлено: 10 Октября, 2007 - 09:11:08
Post Id



Участник


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


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




Fanatik пишет:
есть урл для передачи данных в запрос вида (переманная link содержит русские буквы)
price.php?link=%C0&act=show соот. %C0 это А (так видит опера) работает ок!
price.php?link=А&act=show а так видит IE, и вылетает ошибка 500!
как вылечить это?

http://php.su/functions/?urlencode
http://php.su/functions/?rawurlencode
 
 Top
EuGen Администратор
Отправлено: 10 Октября, 2007 - 09:50:35
Post Id


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


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


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






-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
valenok Модератор
Отправлено: 10 Октября, 2007 - 15:58:18
Post Id



Здесь могла бы быть ваша реклама


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


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




Переходите на англ и не мучайтесь.


-----
Truly yours, Sasha.
 
My status
 Top
UserID
Отправлено: 10 Октября, 2007 - 22:42:38
Post Id



Магистр JavaScript


Покинул форум
Сообщений всего: 151
Дата рег-ции: Авг. 2006  


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




Я бы ещё через javascript сохранял букву в контейнере, типа hidden, и затем вытаскивал её через php
PHP:
скопировать код в буфер обмена
  1.  
  2. if(isset($_POST['hidden_elem_name'])) {
  3.     // TODO: do anything you want
  4. }
  5.  
 
 Top
valenok Модератор
Отправлено: 10 Октября, 2007 - 23:11:37
Post Id



Здесь могла бы быть ваша реклама


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


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




больше похлже на GET и ссылку


-----
Truly yours, Sasha.
 
My status
 Top
EuGen Администратор
Отправлено: 11 Октября, 2007 - 09:52:28
Post Id


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


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


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




valenok пишет:
Переходите на англ и не мучайтесь.

У меня был случай, когда в GET-параметре я передавал значение callback, которое было веб-адресом возврата из загружаемого скрипта.
То есть к примеру, на основе GET-параметров формировалась таблица из чего-то. Каждый элемент этого "чего-то" имел свои свойства, посмотреть которые можно было щелкнув на его имя в этой таблице. При этом происходил переход к скрипту просмотра деталей, но надо было сделать так, чтобы была ссылка "Назад", при переходе по которой бы грузилась таблица, сформированная ранее. Вот и приходилось юзать urlencode/urldecode чтобы передать адрес страницы, с которой я уходил для того, чтобы подставить его потом в значение ссылки "Назад". Так что русский тут ни при чем ((* .. может такое быть, что без кодирования никак (*


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
valenok Модератор
Отправлено: 11 Октября, 2007 - 13:15:07
Post Id



Здесь могла бы быть ваша реклама


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


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




В действительности Server Internal Error ( 500 )
чаще всего не возникает если просто передавать чёрт знает что в качестве параметров, просто похоже что опера кодирует русские символы вместо автора, а IE нет.

Всё равно ошибка скорее всего где то в скрипте, а точнее парсер теряется и не знает что делать когда принимает такое значение и получается ошибка 500.
Если всё это проверить на порстом скрипте

a.php?id=Вася
echo $_GET['id']

то всё будет плавно работать и в IE
Хотя помоему где то это в конфигурации сервера настраивается.
Не помню уже наверное где, хотя скорее в разделе кодировок.

Fanatik
У вас работает код выше ?


-----
Truly yours, Sasha.
 
My status
 Top
Fanatik
Отправлено: 13 Октября, 2007 - 20:02:12
Post Id


Новичок


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


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




valenok пишет:


a.php?id=Вася
echo $_GET['id']

Fanatik
У вас работает код выше ?


только в опере
ie 500
 
 Top
EuGen Администратор
Отправлено: 13 Октября, 2007 - 20:04:49
Post Id


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


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


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




IE вообще ведет себя странно, но тем не менее используя закодирование/раскодирование параметров нетрудно добиться нужного результата.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Fanatik
Отправлено: 13 Октября, 2007 - 20:21:28
Post Id


Новичок


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


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




valenok пишет:


Fanatik
У вас работает код выше ?


$link=urlencode("ввапв");

print ("<a href=a.php?id=$link>lim</a>");

так работает,
теперь придётся каждую букву кодировать)
 
 Top
EuGen Администратор
Отправлено: 13 Октября, 2007 - 20:33:32
Post Id


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


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


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




Да я никак не пойму в чем трудность то? ((*
При генерации ссылки делаете:
PHP:
скопировать код в буфер обмена
  1.  
  2. $param=urlencode($your_parameter);
  3. echo("<a href='your_link&your_param=$param'>Your_text</a>");
  4.  

а при получении параметра:
PHP:
скопировать код в буфер обмена
  1.  
  2. $your_param=urldecode($_GET['your_param']);
  3.  


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
valenok Модератор
Отправлено: 13 Октября, 2007 - 22:45:23
Post Id



Здесь могла бы быть ваша реклама


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


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




Можете просто посмотреть значение urlencode для каждой из своих букв и так прямо и написать
< a href='your_link&your_param=%ВFGF'>Your_text</a>


-----
Truly yours, Sasha.
 
My status
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB