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 :: Как передать большой объём GET данных ?

 PHP.SU

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


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

> Без описания
Zend
Отправлено: 19 Августа, 2010 - 01:06:16
Post Id


Гость


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


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




Необходимо передать более 4х тысяч символов посредством гет запроса.(Не все браузеры воспринимают такие длинные ссылки). Как это можно реализовать?
Пробовал кодировать в base64_encode, но раскодировать не получается, видимо URL преобразуется...
(Добавление)
Получилось сделать так -



Так я укоротил URL почти в двое, но это всё равно мало.
 
 Top
SAD
Отправлено: 19 Августа, 2010 - 01:49:06
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


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




Поменяй метод на POST
 
 Top
Zend
Отправлено: 19 Августа, 2010 - 02:03:52
Post Id


Гость


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


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




SAD пишет:
Поменяй метод на POST

Нет, я данные отправляю не через форму. Мой скрипт обрабатывает всё и с результатом пользователя перенаправляет на другую страницу. Сессию открывать нельзя. Насколько я знаю, чтобы перенаправлять с пост данными нужно использовать библиотеку cURL, её я не знаю. Поэтому решил хранить результат в $_GET массиве.
 
 Top
SAD
Отправлено: 19 Августа, 2010 - 02:06:19
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


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




засунь с помощью js все в печеньки
 
 Top
Zend
Отправлено: 19 Августа, 2010 - 02:24:48
Post Id


Гость


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


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




Знаю только PHP =))
 
 Top
JustUserR
Отправлено: 19 Августа, 2010 - 19:49:52
Post Id



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


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


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




Zend пишет:
Пробовал кодировать в base64_encode, но раскодировать не получается, видимо URL преобразуется...
Для осуществления правильного кодирования пересылаемый в GET-запросе данных необходимо выполнять покомпонентное преобразовать - поскольку все основные части URL-адреса и разделяющимх их символы сами по себе должны находиться в неизменном состоянии - кодирование может осуществляться только для содержащийся в них информации Поэтому вы можете составить строковую константу которая будет содержать неизвменные части URL-адреса - и дополнительно к ней уже осуществлять интерполяцию переменных с потенциальными GET-значениями используя например алгоритм сжатия - но в этом случае необходимо учитывать чтобы данные передавались с необходимым минимальным уровнем экранирования
Кроме того если вам необходимо передать достаточно большой набор ннформации - который согласно настройкам web-сервера не может храниться в обычным GET-запросе и при его использовании возникает ошибка HTTP 414 - то можете использовать некоторую основную HTML-страницу с JS-скриптом которые будет осуществлять динамическое разбиение требуемых для пересылки данных на пакеты - и последующую обработку их получения - причем в таком случае желательно чтобы web-сервер поддерживал режим HTTP-соединения такой как Keep-alive и обработка пакетов происходила максимально быстро - чтобы получить возможность сделать несколько запросов в одном реальном TCP-соединение что достаточно сильно увеличит эффективность


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