Использование $.post
У меня есть такой скрипт
<a href='#' id='aaa'>dfgsdfgdsfgsd</a>
<script>
jQuery("#aaa").click(function()
{
$.post(
'view_cat.php',
{
type: "test-request",
param1: '1',
param2: 2
},
onAjaxSuccess2
);
});
function onAjaxSuccess2(data)
{
$("#mydiv").load("view_cat.php");
}
</script>
Вообщем у меня скрипт работает тоесть он принимает от сервера ответ но я незнаю как в php скрипте принят параметры которые я передаю. Я делал так $id = $_POST["param1"]; echo $id; и скрипт ничего мне не выводит. Подскажите кто может!!!!! |
куда он выводить должен? Думаю результаты твоего вывода ты можешь получить в параметре data. Или в журнал можешь выводить (trigger_error). А еще можешь воспользоваться firebug
|
Цитата:
Скажи а что такое firebug и как его использовать |
Цитата:
|
Проверил firebug! Но ничего понять не могу дает мне ответ вот такой
это тот ответ который мне нужен POST http://test1.ru/doska/view_cat.php Headers Post Response ZAVINA A G а это то что выводится на экран GET http://test1.ru/doska/view_cat.php Headers Post Response <center><strong>Извените но в данной категории нет обьявлений!</strong></center> Кто то может объяснить что єто все значит??? Пожалуйста!!!!!!!!!!!!!! |
у тебя сначала выполнятся POST-запрос, по завершении ты попадаешь в onAjaxSuccess2 и параметр data содержит то, что вывел php. После этого ты выполняешь еще один запрос и помещаешь результат в $("#mydiv"), но при этом никаких параметров не указываешь
а ссылки твои не работают |
Ещё если можешь подскажи как это исправить???
|
посылай один запрос (http://docs.jquery.com/Ajax/load#urldatacallback)
|
jQuery("#aaa").click(function()
{ form = document.getElementById("com"); id = form.id.value; $.post( 'http://docs.jquery.com/Ajax/load#urldatacallback', { type: "test-request", id: id, name: "ghfhf" },onAjaxSuccess2 ); }); если так то в firebug пишет так Access to restricted URI denied" code: "1012 [Break on this error] xhr.open(type, s.url, s.async); |
ладно, скажу по-другому
ты в первом запросе используешь POST, во втором - GET. В первом указываешь параметры, во втором - нет. Тебе не нужно 2 запроса. А функция load тебе в самый раз здесь подойдет p.s. а ссылка была, чтобы ты посмотрел что делает load и что в документации интересная информация содержится ;-) |
Слушай я уже замучался с этим ajax сом лучше бы я все сделал на PHP фиг с ним что с перезагрузкой страниц.
Слушаю у меня на странице ещё один код который посылает запрос код в нем идентичный и все работает а этот нет. И я не пойму где у меня делается 2й запрос. |
Цитата:
Цитата:
jQuery("#aaa").click(function()
{
$.post( // РАЗ
'view_cat.php',
{
type: "test-request",
param1: '1',
param2: 2
},
onAjaxSuccess2
);
});
function onAjaxSuccess2(data)
{
$("#mydiv").load("view_cat.php"); // ДВА, причем результат первого (data) ты игнорируешь
}
|
Слушай спасибо за помощь вот теперь я разобрался у меня теперь все работает.
Только есть 2 вопроса если ли какая нибудь инструкция по firebug. И как с помощью вот этой записи $("#mydiv").load("view_cat.php"); передать параметры в скрипт. |
Цитата:
заметь, можно из страницы выводить информацию в консоль firebug (console api) Цитата:
если не знаешь английский, посмотри хотя бы примеры |
Народ, я балдею с этого форума. Вроде по-русски объясняют, но люди так и не понимают ничего..
$("#aaa").click(function() {
$.post('view_cat.php', {
type: "test-request",
param1: '1',
param2: 2
},
function(data) {
$('#mydiv').html(data);
}
});
});
|
Вопрос офигительный
function viewinputimg (id)
{
$("#noview").css({display: ""});
$.post(
siteHttp+"/include/redimg.php?form=1",
{
type: "text/plain",
id: id
},
onAjaxSuccess
);
function onAjaxSuccess(data)
{
$("#noview").css({display: "none"});
}
}
$("#noview").css({display: "none"}); это простой квадратит показывающий прогрузку-ожидание. Ну так вот проблема такая: я жму-вызывается функция viewinputimg (id) - появляется загрузчик - отправляется запрос (передаю id и form-служебный в файл. Это работает. и я могу GET передать, а то ранее тут долго мусолили эту тему.). Загрузчик повисает и все. Данные не отправляются и разумеется не ворачиваются. IE и firebug молчат. Самое интересное что я иду с IE 8 с мозилы последней и оперы. сафари то же проверял и у меня все пашет. А вот чел с мака сидит под оперой и сафай и не чего не пашет. Короче своей жизнью живет.
function viewinputimg (id)
{
$("#noview").css({display: ""});
function viewinputimgDUBL(){
$.post(
siteHttp+"/include/redimg.php?form=1",
{
type: "text/plain",
id: id
},
onAjaxSuccess
);
function onAjaxSuccess(data)
{
$("#noview").css({display: "none"});
}
}
viewinputimgDUBL();
}
этот же код. Но фишка в том что у меня то же в мазиле не пахал. после такого издевательства заработало. Ну и теперь самое главное прошу. Не пишите проверь то че в трех словах и то что гугл в руки. Я понимаю что все тут умные, но пожалуйста с примером и пояснением, иначе лучше не загрязнять тему :) |
| Часовой пояс GMT +3, время: 06:15. |