Я занимаюсь разработкой мобильного приложения в Cordova + AngularJS в ионных рамках. Я пытаюсь отправить параметры в теле запроса get, который, вероятно, является запросом на получение определенных данных на основе входных параметров. Моя строка запроса:
var queryString = base_url + "get/requestChartData.php?userid=" + window.localStorage.userid + "&token=" + token + "&formid=" + formID + "&questionid=" + questionID + "&chart=" + chartType;
$http.get(queryString, {}).success(function (data, status, headers, config) {
.....
...
Этот запрос, когда я отправляю на сервер, где PHP обрабатывает запрос, отправляет мне ответ как <b>Notice</b>: Undefined index: chart in....
и даже на моей консоли отладки firebug, по ссылке на запрос get, когда я раскрываюсь, он показывает мне только четыре параметра вместо пяти.
Есть ли предел отправки количества параметров в запросе get в виде строки запроса ???
на стороне PHP я делаю это:
$userid = trim($_REQUEST['userid']);
$formid = trim($_REQUEST['formid']);
$fieldName = trim($_REQUEST['questionid']);
$chartType = trim($_REQUEST['chart']);
$token = trim($_REQUEST['token']);
я не получаю этого разрешения ???
Хорошо, похоже, что некоторые версии PHP имеют ограничение длины GET-параметров:
Обратите внимание, что установки PHP с установленным патчем suhosin будут иметь
ограничение по умолчанию 512 символов для получения параметров. Хотя плохо
На практике большинство браузеров (включая IE) поддерживают URL до 2000
символов, в то время как Apache имеет значение по умолчанию 8000.Чтобы добавить поддержку длинных параметров с помощью suhosin, добавьте
suhosin.get.max_value_length = <limit>
вphp.ini
Источник: http://www.php.net/manual/en/reserved.variables.get.php#101469
Можете ли вы попробовать то же самое с .post
?
Других решений пока нет …