2016-02-04 4 views
0

Я делал много раз раньше, поэтому я честно смущен, почему это ничего не пропускает. Я пробовал распечатать результаты (скрипт получает ответ и печатает файл).XMLHTTPrequest отправки пустого сообщения

function submit_form_inpage(path, data, watchForChange){ 
    alert(data); 
    watchForChange = watchForChange || false; 
    var request = new XMLHttpRequest(); 
    request.open('POST', path, true); 
    request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8'); 
    if (watchForChange == true) { 
     request.onreadystatechange = function() { 
      if (request.readyState == 4) { 
       document.write(request); 
       if (request.status==200 && request.status < 400){ 
        var xmldata=request.responseText //retrieve result as an XML object 
        alert("XML:" + xmldata); 
       } 
       else{ 
        alert("An error has occured making the request:" + request.status); 
       } 
      } 
     } 
    } 
    var temp_string = array_to_string_for_post(data); 
    var temp = JSON.stringify(data); 
    alert(temp); 
    request.send(temp); 
} 

Мой РНР

print_r($_POST); 

и мой результат

XML: Array() 

Несмотря на то, что данные, передаваемые в (который дважды проверил перед отправкой моей тревоги) является

{"reason":"get_stuff","build_name":"test"} 

ответ

1

Вы сказали, что вы перед отправкой данных, закодированных в форму.

request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8'); 

Тогда вы послали:

temp = JSON.stringify(data); 

JSON является application/json не application/x-www-form-urlencoded (и изначально не поддерживается PHP в любом случае).

Либо кодируйте свои данные как application/x-www-form-urlencoded, либо исправьте свой контентный тип и parse it manually in PHP.

+0

Спасибо, я совсем забыл, что оставил это там, когда начал модифицировать некоторые из моих других кодов. Это то, что я получаю для кодирования с лихорадкой на 101 градус. : P – liljoshu

+0

К сожалению, это не исправить, хотя это было необходимым изменением. – liljoshu

+0

@liljoshu - Что, собственно, вы изменили и к чему? – Quentin

Смежные вопросы