2014-01-07 4 views
0

Что не так:не удается получить надлежащее возвращаемые данные

$('#btnSend').click(function() 
{  
    var msg = $('#txtar').val(); // textarea 
    alert (msg); // works well, for example 'abc' 
    $.ajax(
    { 
     type: "POST", 
     url: "write.php", 
     data: {msg: msg}, 
     success: function(r) 
     { 
      alert(r); // doesn't work 
     } 
    }); 
}); 

write.php:

$a = $_POST['msg']; 
echo $a; 

Вместо abc я получаю содержание всего write.php файла в боевую готовность.

+1

показать мне весь код write.php ... Может быть, вам не хватает Hackerman

+1

проверки консоли для ошибки и особенно вкладки сети. Вы можете использовать обратный вызов ошибки метода ajax, это предоставит вам сообщение об ошибке –

ответ

2

ли write.php содержат открытия и закрытия PHP теги:

<?php 
$a = $_POST['msg']; 
echo $a; 
?> 
+0

Mamma Mia! Решаемые. Большое спасибо. – bonaca

+0

Не забудьте отметить принятый ответ, так что ненавидят оставшиеся без ответа вопросы. – superphonic

2

Похоже файл write.php не содержит <?php. Добавьте его в начало. Закрытие ?> является необязательным.

1

попробовать это:

alert(r.msg); 

или

alert(r->msg); 
3

Thats очень просто ...

write.php

$a = $_POST['msg']; 
echo $a; 
exit; 

положить выход или заканчиваются или иначе код будет двигаться излишне без необходимости.

1
  • php5 не требует закрытия PHP теги, если его файл с только PHP

Также здесь небольшой пример. Просто протестировал это на сервере apache2.4 с помощью libapache2-mod-php5. Если PHP-код работает иначе, не беспокойтесь о своем сервере или конфигурации, просто убедитесь, что вы включаете библиотеку JS, чтобы эти запросы AJAX работали.

PHP (5)

<?php 
if($_POST && isset($_POST['payload'])) { 
    echo "hello ".$_POST['payload']; 
} 

JS

$.ajax({ 
    type: "POST", 
    url: "this.php", 
    data: {payload:"world"}, 
    success: function(response){ alert(response); } 
}); 
Смежные вопросы