Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Создание Get запроса (https://javascript.ru/forum/misc/67033-sozdanie-get-zaprosa.html)

Fck_This 24.01.2017 12:56

Создание Get запроса
 
Я, может, не туда залез... но всё же. Нужно получить данные от сайта - много-много текста в юникоде (из базы данных пользователей) Суть в том, что при отправке Get на сайт - выдаёт такой Response текст:
Код:

<br />_doQuery: [Error message: Could not execute statement]
[Last executed query: SELECT u.*, so.structureorganization_title, CONVERT(GROUP_CONCAT(DISTINCT ss.svt_name SEPARATOR '; ') USING utf8) AS svt_name FROM svt_user.svtuser_users AS u LEFT JOIN svt_user.svtuser_svt AS ss ON ss.users_id = u.users_id  LEFT JOIN svt_user.svtuser_structureorganization AS so ON u.structureorganization_id = so.structureorganization_id WHERE u.users_status = 1 AND (ss.svttype_id IS NULL OR ss.svttype_id = 463 OR ss.svttype_id = 455)  GROUP BY u.users_fio ASC ORDER BY id asc LIMIT 0, 10]
[Native code: 1054]
[Native message: Unknown column 'id' in 'order clause']

Как я понял, это невыполнимое условие, но обычно для Get отправляется Null. Проверял Firebug-ом, но тот не показывает, как выглядит отправляемый Get запрос (хотя может и показывает - недавно пользуюсь активно). Заголовки запроса составил, как в заголовках запроса фаербага. Выдаёт ещё такие данные
Параметры:
Код:

_search        false
nd        1485250566472
page        1
rows        500
sidx        users_fio
sord        asc

Может быть это и есть тело запроса, но как его составить в виде json?
В заголовке, в "Консоль" запрос отображается так:
"GET http://ms/libs/site/AjaxServer/UsersList.ajax.php?_search=false&nd=1485250566472& rows=500&page=1&sidx=users_fio&sord=asc"
Запрос отправляю вообще из VBA, через "MSXML2.ServerXMLHTTP". Может как-то можно с помощью JS получить необходимые данные? Буду признателен, если кто-то соориентирует.

laimas 24.01.2017 13:16

Цитата:

Сообщение от Fck_This
Как я понял, это невыполнимое условие, но обычно для Get отправляется Null. Проверял Firebug-ом, но тот не показывает

Это не условие, а попытка запроса к несуществующему полю в sql таблице. Ошибка говорит, что поля с именем id не существует, на которое ссылается оператор ORDER BY.

Firebug, MSXML2.ServerXMLHTTP и вообще клиент, к этой проблеме отношения не имеют. Запросы к базе формирует сервер, он их и выполняет.

Fck_This 24.01.2017 14:54

Вложений: 1
Цитата:

Сообщение от laimas (Сообщение 442152)
Это не условие, а попытка запроса к несуществующему полю в sql таблице. Ошибка говорит, что поля с именем id не существует, на которое ссылается оператор ORDER BY.

Firebug, MSXML2.ServerXMLHTTP и вообще клиент, к этой проблеме отношения не имеют. Запросы к базе формирует сервер, он их и выполняет.

Хорошо, но как тогда объяснить, что именно этот запрос высвечивается и на него приходит ответ в виде DOM данных?
П.С.: Вопрос объявляю закрытым. Спасибо ответившему парню, который "ляпнул абы что", не включив мозги - промотивировал разбираться дальше. Выручил инструмент разработчика: есть там функция "изменить и снова отправить". Благодаря ей и допёр, что параметры запроса(никогда бы не подумал) должны были содержаться в URL. Короч url-ом должна была быть вся строка после "GET"

laimas 24.01.2017 14:59

Я не знаю чего у вас делает код и чего там высвечивается, но то что показано, это ошибка SQL, которую, кстати, отдавать клиенту плохо, если конечно речь не идет об отладочном режиме.

Сортировка запроса производится после того как будет произведена выборка. А в выборке используется алиас u, значит и сортировать нужно как ORDER BY u.id, ибо в результатах выборки поля id не будет.

Я думал, что это то вы знаете и поймете причину, после того как было указано где ошибка.


Часовой пояс GMT +3, время: 06:13.