|
|
|
| пытаюсь разобраться какой запрос указать чтобы получить данные
имеется такой сайт avtodoska.ru с верху есть ссылка "выбрать регион >>"
при нажатии отрывается окошко с выбором городов, это всё понятно, вот решил у себя такое сделать, но поскольку я в JS не силён то появились проблемы. При просмотре JS исходников, заметил используется библиотека jquery и к нему отдельный код:
<script type="text/javascript" src="http://www.avtodoska.ru/javascript/select_region.js"></script>
в этом коде обноружил что когда мы выбираем город, то идёт запрос по УРЛ`У
avtodoska.ru/all/regions_ajax.html
если перейти по нему, то получим сообщение "unknown error" о том что нет запроса или что-то в этом роде, так вот, пытался найти в исходнике select_region.js какие должны передаватся запросы чтобы получить данные, но так не смог разобратся, т.к я не слишком хорошо разбираюсь в JS скриптах, поэтому решил обратится к вам, за помощью, мне бы главное разобратся какие запросы должны передаваться для файла regions_ajax.html
делал методом тыка
avtodoska.ru/all/regions_ajax.html?go=get_path_region®ion_id=001000000&set_region=0
но всёранво данные при этом запросе всёже не получаю
буду очень благодарен за помощь | |
|
|
|
|
|
|
|
для: web777
(04.05.2008 в 09:55)
| | Код в студию. Там при подаче запроса серверу, параметры указываются не в урле, а в параметрах запроса. А это можно сделать по-разному. Уж не говоря о том, что в jQuery есть куча способов послать асинхронный запрос серверу и получить ответ. | |
|
|
|
|
|
|
|
для: SHAman
(04.05.2008 в 10:09)
| | весь код находится тут
http://www.avtodoska.ru/javascript/select_region.js
я просто не хочу сюда помещать его, т.к он большой будет чтобы сюда выкладывать, 181 строк всего
я приведу одну функцию с этого файла
function get_current_region()
{
$('#loader_text').empty();
$('#loader_text').append('Подождите, идет загрузка...');
$('#regions').hide();
$('#loader').show();
$.ajax({
type: "POST",
url: ajax_script,
data: {go:'get_path_region',region_id:region_id},
dataType: "json",
success: function(reg) {
raspred_reg (reg);
get_region ();
$('#loader').hide();
$('#regions').show();
}
});
}
|
вроде как я понимаю в УРЛ должен передавать ГЕТ параметр: region_id=что-то
примерно так
avtodoska.ru/all/regions_ajax.html?region_id=001000000
но всёрано, результата нет
да, ещё в самом вверху скрипта select_region.js есть строчка
var ajax_script='http://www.avtodoska.ru/all/regions_ajax.html';
где переменной ajax_script назначается тот УРЛ
единственно что нужно, узнать какие параметры должны передавать для
avtodoska.ru/all/regions_ajax.html
тоесть узнав какие параметры должны передаваться, я узнаю какие данные должен возвращать regions_ajax.html, а там я уже на PHP напишу свой код в место этого файла и у себя на сервере буду принимать и передавать данные | |
|
|
|
|
|
|
|
для: web777
(04.05.2008 в 10:24)
| |
а вы пишите "вроде как я понимаю в УРЛ должен передавать ГЕТ параметр: region_id=что-то"
вобщем вроде как вы не понимаете...
передаются переменные go и region_id | |
|
|
|
|
|
|
|
для: AlexSol
(04.05.2008 в 10:41)
| | упс, точно, невнимательно посмотрел, спасибо за поправку
при ПОСТ, наверное уже не узнаешь какие данные передает regions_ajax.html для JS скрипту?
а ни как ещё нельзя узнать, что получает JS скрипт, какие данные? а я сам потом напишу PHP скрипт который будет передавать теже данные | |
|
|
|
|
|
|
|
для: web777
(04.05.2008 в 11:03)
| | вы хотите их базу передрать? | |
|
|
|
|
|
|
|
для: AlexSol
(04.05.2008 в 11:13)
| | не не, не в коем случаи, города можно взять из других открытых источников, это не проблема, меня заинтересовала только сама реализация выбора городов. Я конечно в JS не особо силен, только PHP знаю примерно на среднем уровне, поэтому и обратился сюда за помощью | |
|
|
|
|
|
|
|
для: web777
(04.05.2008 в 11:18)
| |
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.pack.js"></script>
<script>
function getData(arg){
$('#loader_text').empty();
$('#loader_text').append('Подождите, идет загрузка...');
$.get("test.php",{ id:arg},
function(data){
$('#loader_text').empty();
$("#loader_text").html(data);
}
);
}
</script>
<a href="#" onclick="getData(77); return false;">регион 77</a>
<div id="loader_text">суда выводятся данные</div>
|
функции getData передается параметр, которые методом ГЕТ отсылается test.php?id=значение. полученные данные записываются в <div id="loader_text"> | |
|
|
|
|
|
|
|
для: AlexSol
(04.05.2008 в 11:27)
| | ухты, получилось, решил через пост сделать запрос
<form method="POST" action="http://www.avtodoska.ru/all/regions_ajax.html">
<input type="text" name="go" value="get_path_region">
<input type="text" name="region_id" value="001000000">
<input type="submit" value="ok" name="B1">
</form>
|
тем самым получил в браузере
[{"id":"001000000","parent_id":"0","position":"0","name":"Р РѕСЃСЃРёСЏ","type":"","translate_name":"ru","post_index":null,"region_center":"Y"}]
|
правда названия в неизвестной кодировке, но это думаю ерунда
теперь надо написать свой обработчик на пхп для передачи данных, и готово:)
кстати, спасибо за ваш пример, он тоже мне понравился, легко можно делать погрузку данных, про библиотеку jQuery я слышал давно но вот примеров не мог найти чтобы были такими простыми для новичка. Вообще я на даный момент использую библиотеку Дмитрия Котерова, но эта тоже меня заинтересовала своей простотой | |
|
|
|
|
|
|
|
для: web777
(04.05.2008 в 15:00)
| | тут столкнулся с одной проблемой, незнаю как решить её
в том же скрипте имеется функция поиска города, при запросе, должен быть список найденных городов или города, но почемуто выводит как я понял все города даже совсем не похожи на запрос, если допустим ищу город Москва, то выводит и Новгород и т.п, вообщем все города.
Поиск тоже при POST запросе
вот так пытаюсь сделать запрос:
<form method="POST" action="http://www.avtodoska.ru/all/regions_ajax.html">
<input type="text" name="go" value="qsearch">
<input type="text" name="query" value="Москва">
<input type="submit" value="ok" name="B1">
</form>
|
поедее должен быть сформирован массив из одного города Москва, но выводить все города подряд.
Может я не указал ещё какой-нибудь параметр для запроса? | |
|
|
|
|
|
|
|
для: web777
(05.05.2008 в 15:13)
| | может. а может напишите свой обработчик запросов и он будет выдавать только Москва? )) | |
|
|
|
|
|
|
|
для: AlexSol
(05.05.2008 в 15:36)
| | написать обработчик то я напишу, не проблема, вот только я боюсь, что JS скрипт будет неправильно работать, из -за того что я какое-то поле упущу, хотя надо будет проверить сначала, ладно..
за помощь спасибо:) | |
|
|
|
|
|
|
|
для: web777
(05.05.2008 в 15:45)
| | я же написал пример как передать и получить данные. чего еще нужно? ) | |
|
|
|