За последние 24 часа нас посетили 17542 программиста и 1719 роботов. Сейчас ищут 1625 программистов ...

как вывести ajax ?

Тема в разделе "JavaScript и AJAX", создана пользователем katama, 4 янв 2011.

  1. katama

    katama Активный пользователь

    С нами с:
    13 дек 2010
    Сообщения:
    16
    Симпатии:
    0
    Здравствуйте, сильно не ругайтесь, начинаю изучать jquery ajax. Вроде всё понимаю, функцию, отправку. С помощью файрбага в разделе "Сети" наблюдаю как уходит запрос. Да, вроде получается. Но как я могу вывести переданный post аяксом (типо аналог print_r( $массив пришедший по аяксу) ) в php? Если это является полноценным $_POST или $_Get запросом.. Спасибо
     
  2. Padaboo

    Padaboo Старожил
    Команда форума Модератор

    С нами с:
    26 окт 2009
    Сообщения:
    5.242
    Симпатии:
    1
    PHP:
    1. <?php print_r($_POST); ?>
    ?
     
  3. katama

    katama Активный пользователь

    С нами с:
    13 дек 2010
    Сообщения:
    16
    Симпатии:
    0
    так делал естественно, но ничего не выводится... Я тоже думал что всё так просто, поэтому и вам написал ))
     
  4. Padaboo

    Padaboo Старожил
    Команда форума Модератор

    С нами с:
    26 окт 2009
    Сообщения:
    5.242
    Симпатии:
    1
    код покажи?
     
  5. Padaboo

    Padaboo Старожил
    Команда форума Модератор

    С нами с:
    26 окт 2009
    Сообщения:
    5.242
    Симпатии:
    1
    все и есть просто

    HTML:
    1. <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
    2. <input type="button" id="buttonid" value="go">
    3. <div id="divid"></div>
    4. <script type="text/javascript" src="jquery.js"></script>
    5. <script type="text/javascript">
    6. $("#buttonid").click(function(){
    7.      $.ajax({
    8.          url: 'ajax.php',
    9.          type: "POST",
    10.          data: "val=var&val2=var2",    
    11.         success: function(e){
    12.             $("#divid").html(e);
    13.          }
    14.      });
    15.  });
    ajax.php
    PHP:
    1. <?php
    2. print_r($_POST);
    3. ?>
     
  6. Apple

    Apple Активный пользователь

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    Padaboo
    Всё ещё проще:
    [js]$.post("ajax.php", "foo=bar", function(answer) {
    alert(answer);
    });[/js]
     
  7. Padaboo

    Padaboo Старожил
    Команда форума Модератор

    С нами с:
    26 окт 2009
    Сообщения:
    5.242
    Симпатии:
    1
    Apple
    а если json перекидываться?
     
  8. Apple

    Apple Активный пользователь

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    С клиентской стороны? Ручками тогда.
    Если получаешь? Как обычно - answer.each
    Он же ж вернет объект типа type даже для .post
     
  9. Padaboo

    Padaboo Старожил
    Команда форума Модератор

    С нами с:
    26 окт 2009
    Сообщения:
    5.242
    Симпатии:
    1
    Apple
    как нибудь я переделаю у себя все это по уму =)
    ты когда то писал, что делал шаблонизатор, он у тебя не остался?
     
  10. Apple

    Apple Активный пользователь

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    Всяко остался, я всё скидываю на болванки и забываю о них. Но то, что я его найду снова - КРАЙНЕ сомнительно.
    Но у меня не такой шаблонизатор был как плагины - нет.
    У меня на клиенте создавалась объектная модель непосредственно: ссылки имели метки и создавались не через рисование, а именно через работу с иерархией.
     
  11. katama

    katama Активный пользователь

    С нами с:
    13 дек 2010
    Сообщения:
    16
    Симпатии:
    0
    Сделал я всё как вы подсказали, alert("Data Loaded: " + data); показывает весь html страницы целиком + мой массив (print_r), допустим тут всё нормально... Только я хочу увидеть свой print_r($_POST) массив в шаблоне соответственно, как это возможно при сабмите.., а не в alert(); .... или я в чём то не прав?, спасибо. Padaboo, тема что закрылась уже, если никто не отвечает....? :shock:
    [js]$.post("/admin/add", { name: "John", time: "2pm" },
    function(data){
    alert("Data Loaded: " + data);
    });[/js]
     
  12. katama

    katama Активный пользователь

    С нами с:
    13 дек 2010
    Сообщения:
    16
    Симпатии:
    0
    Мне ответит кто нибудь хоть что нибудь...? Или мой вопрос непонятен?.. :roll:
     
  13. Gromo

    Gromo Активный пользователь

    С нами с:
    24 май 2010
    Сообщения:
    2.786
    Симпатии:
    2
    Адрес:
    Ташкент
    именно
     
  14. Apple

    Apple Активный пользователь

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    katama
    [js]function(data) {
    $('body').html(data);
    }[/js]
     
  15. sobachnik

    sobachnik Старожил

    С нами с:
    20 апр 2007
    Сообщения:
    3.380
    Симпатии:
    13
    Адрес:
    Дмитров, МО
    Когда мне нужно было знать, что передаёт чужая (написанная не мной и вообще не нашей командой) флэшка (флэш-клип, взаимодействующий с сервером) я делал так:
    PHP:
    1. <?php
    2. $str = 'GET: ' . serialize($_GET) . "\n";
    3. $str .= 'POST: ' . serialize($_POST) . "\n";
    4. $str .= 'COOKIE: ' . serialize($_COOKIE);
    5. $file = fopen('input.txt', 'w');
    6. fwrite($file, $str);
    7. fclose($file);
    а потом просматривал содержимое файла input.txt
    Если есть трудности с тем, чтобы вывести информацию о запросе - можно поступить также.
     
  16. Apple

    Apple Активный пользователь

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    sobachnik
    Это самое глупое, что я когда-либо видел.
    Мало того, КАК оно всё упаковывалось, дак ещё сериализированный массив рассматривать - просто капец.
    Всё в разы проще:

    PHP:
    1. <?php
    2.  
    3.  var_export($_REQUEST)
    4. );
    5.  
    6. ?>
     
  17. katama

    katama Активный пользователь

    С нами с:
    13 дек 2010
    Сообщения:
    16
    Симпатии:
    0
    именно в точку, вы абсолютно правильно меня поняли! То что я имел ввиду, только как то не дошло до меня сразу, а оказалось что просто элементарно...(во всяком случае пока, элементарно..). Будут вопросы, отпишу позже
    Спасибо вам большое, с праздником всех!
     
  18. sobachnik

    sobachnik Старожил

    С нами с:
    20 апр 2007
    Сообщения:
    3.380
    Симпатии:
    13
    Адрес:
    Дмитров, МО
    Apple, про существование var_export не знал... Про var_dump знал (что существует что-то такое), но как-то не пользовался ранее, вот и написал так... Как знал, что сработает :)
    А вот REQUEST меня бы не устроил, на сколько помню нужно было знать что каким образом пришло.
     
  19. Apple

    Apple Активный пользователь

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    Хорошо, тогда как насчет print_r?

    PHP:
    1. <?php
    2.  
    3.  print_r($GLOBALS, true)
    4. );
    5.  
    6. ?>
     
  20. sobachnik

    sobachnik Старожил

    С нами с:
    20 апр 2007
    Сообщения:
    3.380
    Симпатии:
    13
    Адрес:
    Дмитров, МО
    Не хорошо, плохо :) Надо знать, конечно :) Про второй параметр print_r - тоже был не в курсе. Думал, он только печатает.
    А с $GLOBALS примерно тоже, что и с var_dump - знал, что оно в принципе существует, но опять же ни разу не пользовался и что именно там в нём и в как - был не в курсе.
    Вот сколько полезного обнаружил за вечер :))) Спасибо, Apple :)))