2017-05-18 18 views
0

以下は、私のコードfo ajaxです。これは、ポストメソッドを介して文字列データを送信します。要求は成功しましたが、空の応答が返されます。 readystateとstatusの両方が適切で、phpファイルが同じディレクトリにあることを確認しました。私のPHPファイルのなぜ私はajaxで空の応答テキストを取得していますか?

function getData(str) 
     { 
      if (str == "") 
      { 
      } else 
      { 
       if (window.XMLHttpRequest) 
       { 

        var dat = new XMLHttpRequest(); 
       } else 
       { 

        dat = new ActiveXObject("Microsoft.XMLHTTP"); 
       } 
       dat.open("POST","userdat.php",true); 

       dat.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); 

       dat.onreadystatechange = function() 
       {  
        if (dat.readyState == 4 && dat.status == 200) 
        { 
         alert(dat.responseText); 
         $('#dataReT').text(dat.responseText); 
        } 
       } 

       dat.send("userid=" + str); 

      } 

     } 

内容:

<?php 
$id=$_REQUEST['userid']; 
echo $id; 
?> 
+0

どこが[「ユーザID」] $ _REQUESTにする必要があります値を送信しますか? – Glubus

+0

エコーする前に$ idの値は何ですか? – Dymen1

+0

実際にPHP.-ファイルにデータがあるかどうかを調べるには、 'var_dump($ _ POST)'を試してみてください。 (コードをより自明にするために、 '$ _REQUEST'の代わりに' $ _POST'を使うことをお勧めします)。 –

答えて

0

$ _REQUESTにはユーザーIDがありません。あなたのphpファイルにこれを追加しよう:

if(array_key_exists('userid',$_REQUEST)) { 
    echo $_REQUEST['userid']; 
} else { 
    echo 'no userid.'; 
} 

はあなたがあなたのjavascriptのファイルからユーザーID値を送信することが

+0

私はあなたが示唆したように、私はまだ空の応答を得ています。 –

関連する問題