2016-11-22 2 views
0

Я пытаюсь отменить php-переменную из запроса Ajax, но данные возвращаются как «null» и им не понятно почему. Вот мой вопрос:Ajax posting null data

jQuery.ajax({ 
     url:'/api/registerLoginViaFacebook.php', 
     data: {'test1':'test1','test2':'test2'}, 
     type:'POST', 
     success: function(result) { 
      jQuery('header').html(result); 
     } 
    }) 

Данные, которые я размещаю здесь, являются всего лишь тестовыми данными. Поскольку у меня такая же проблема, отправляя реальные данные. Вот registerLoginViaFacebook.php файл:

<?php 

    echo "<p>hey</p>"; 
    echo "<p>".json_encode($data)."</p>"; 

?> 

HTML-то будет получать вставлено в <header> является

эй

нуль

предполагая, что данные я указан не был послан - по крайней мере, это то, что я делаю из него. Я попытался включить $_REQUEST['data']; в начале файла в соответствии с некоторыми предложениями, которые я нашел здесь, но до сих пор не радует. Где я ошибся?

+0

Что заполняет '$ data'? Просто для усмешек установите '$ data = 'foo';' в свой PHP-скрипт и запустите снова. –

+1

Вы смотрели запрос/ответ AJAX в инструментах разработчика браузера? Включили ли вы библиотеку jQuery в проект? Есть ли сообщения об ошибках? Вы используете это на веб-сервере? –

+0

'$ data' не инициализируется в вашем PHP-коде. Попробуйте выполнить echo '$ _POST ['test1']' или '$ _POST ['test2']' –

ответ

1

В вашем PHP-скрипте необходимо установить $data. Поскольку вы отправляете информацию через POST, вы можете сделать это:

$data = $_POST; 
0

На конец PHP попробуйте использовать $_POST['test1'] и $_POST['test2']. Это должно содержать данные, отправленные через jQuery.