Использование $.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, время: 19:58. |