Я передаю данные на странице 1 через строку запроса на страницу 2, когда пользователь нажимает кнопку «отправить», данные передаются в строку запроса, и страница 2 получает параметр «data = ..» из строки запроса и показывает его значение на стр.
Проблема в том, что данные на странице 1 создаются пользователем посредством текстового поля ввода и могут быть довольно длинными. Это дает нам следующую ошибку, когда пользователь нажимает «отправить»
URL Requested is too long
Это код, используемый для получения элемента span (представленного пользователем текста) и преобразования его в переменную, которая добавляется в керилинк:
$('#send').click(function() {
var data_text = $('span').prop('outerHTML');
window.location.href = 'http://swter.com/send.php?data=' + data_text + '';
return false;
});
Есть ли вокруг него что-либо кроме ограничения количества символов, которые может набрать пользователь?
Так что вы мог разделить содержимое текстовой области на несколько строк, используя String#split
а затем перебрать полученный массив и сделать AJAX GET запросы к вашему внутреннему серверу. Вам нужно будет включить форму уникального идентификатора, который связывает каждый пакет данных вместе на сервере, и индекс, чтобы вы могли перестроить его, то есть:
?id={{unique_id}}&page=1&total=6&body={{message_page_1_of_6}}
Однако, как указано, запрос POST будет более уместным здесь.
Других решений пока нет …