2009-11-21 5 views
0

Мой код AJAX передает QueryString в файл PHP. QueryString выглядит следующим образом:Как получить значения QueryString без использования GET?

var strUrl = "./lib/filldropdown.php?DivName = " + DivName + "&DropDownControlName = " + DropDownName + "&SqlQuery = " + SqlQuery; 

В файле «filldropdown.php», я хочу, чтобы извлечь значения из строки запроса. Как это сделать без использования GET? А также, пожалуйста, дайте мне знать, правильно ли написана строка запроса или нет.

+0

Возможно, вы также можете объяснить, почему вы не хотите использовать GET в первую очередь? – hbw

+0

Поскольку GET не работает. Я попробовал, но это не выбор ценностей. – RKh

+0

В этом случае нужно выяснить, что происходит. Ответ Павла держит ключ. – outis

ответ

3

Возможно, вы сможете использовать $ _REQUEST ['...'], который будет отвечать на параметры, отправленные через POST | GET.

+0

вы также можете удалить эти пробелы между = ex:? DivName = "+ DivName +" попробуйте? DivName = "+ DivName +" – nowk

+0

@nowk: Спасибо, сработало. – RKh

2

Ummm. $_GET['DivName'] должен быть одной частью ваших данных. Просто отметьте

  • Не стройте строку запроса самостоятельно. Построить массив JS и использовать библиотеку JavaScript (я рекомендую JQuery), чтобы сделать Сотворение QS
  • = не должен иметь мест
  • пропускание SQLQuery в вашем Params является ПЛОХОЙ ИДЕЕЙ. Я быстро взломаю ваше приложение, второе, что я вижу. Посмотрите на маленькие столы для бобби.
+0

-1 Если он еще не использует его, приведение jQuery просто для создания строки запроса - это ужасная идея и откровенный перебор. +1 для указания недостатка безопасности с параметром sql. –

+1

+1 для пробелов, поэтому OP думает, что PHP не подбирает входные данные. Подчеркивание заменяет пробелы именами клавиш. – outis

0

Вы уверены, что используете $_GET, а не $GET или что-то еще. Если он действительно сломан (что может быть связано с какой-то проблемой конфигурации, но я не слышал об этом раньше). $_REQUEST может работать для вас, или вы можете попытаться получить строку запроса от $_SERVER['QUERY_STRING'], но вам придется самостоятельно ее разобрать.

Как указал в своем вопросе Paul Tarjan, строка запроса неверна и не безопасна передавать SQL-запросы в скрипт PHP. Они всегда должны быть сформированы на стороне сервера со строгой санитарией по любым предоставленным пользователем данным.

+0

@Justin: Я использую $ _GET, а не $ GET. – RKh