2012-03-13 4 views
1

これはPHPでJquery AJAXを使用する私の最初の試みであり、困惑しています。JQuery Ajaxスクリプトは.phpファイル拡張子から情報を取得しませんが、拡張子は.htmlとなります

私が行ったすべての研究から、私はすべてのことが正しく行われているように見えますが、問題を特定するにはまだ十分な経験や知識がありません。

"signup_UsernameCheck.php"というファイルがありますが、このファイルにはphpがありますが、テストするためには "これは最終的には動作しています"という文をエコーし​​ただけです。

私は次のコードを実行すると:

$(document).ready(function() { 
    $("#username").click(function() { 
     var username = $("#username").val(); 
     $.post("signup_UsernameCheck.php",{username : username},function(data)  {$("#checkExists").html(data);}); 
     $("#checkExists").html(data); 
     }) 
}) 

を何もこのスクリプトで発生していない、まだ私が.htmlのためにの.phpから私のファイルの拡張子を変更した場合、それは正常に動作し、それが想定通りにすべてのコードを表示しますPHPを動かす代わりに、テキストと同じように。

ファイルが完全に.htmlとして見つかるかのように、パスは明らかに正しいです。データ型を変更して "text"に設定しようとしましたが、そのパラメータでも "find" PHPファイル

+4

ブラウザで 'signup_UsernameCheck.php'を直接リクエストしてください。それは動作しますか? – hakre

+0

あなたのPHPファイルが何もエコーしない場合は、何も返さないでください。http://your_domain/signup_UsernameCheck.phpをブラウザーで直接試して、hakreが返すものを確認してください。 –

+0

@hakre、 "500 "inernal server error。拡張子を.htmlに変更すると、上手く引き上げられます。 –

答えて

2

あなたの問題は、AJAXとは関係ありませんあまりにも多くのものを持っています。それはあなたのサーバー構成です、あなたはPHPスクリプト自体を動作させる必要があります。

あなたが指定した情報から、PHPがサーバー上で正しく構成されていません。あなたのホスティングのテクニカルサポートに連絡して、まずjavascriptの部分を続ける前にその問題を解決してください。

+0

私は自分自身、それがどんな考えであろうと思っていたのですか? PHPはサーバ上でうまく動作し、サイトの残りの部分はすべて実行されます。 –

+0

500を取得する理由はたくさんあります。自分でトラブルシューティングを行う場合は、サーバーのエラーログから始めます。 – hakre

+0

私はそれをチェックして、 "index.php?public =" xxxx "というサイトの実行方法のためにパーミッションの問題を解決しました。直接アクセスされた.phpページのように見えますが、 –

-1

サーバー上のsignup_UsernameCheck.htmlからsignup_UsernameCheck.phpに名前を変更してください。

+0

ありがとうございます。ええ、私はそれをしました。 –

0

サーバーから返送されるデータ型がjQueryによって取得されていないように見えます。

は、次の試してみてください。また

$(document).ready(function() { 
    $("#username").click(function() { 
     var username = $("#username").val(); 
     $.post(
      "signup_UsernameCheck.php", 
      {'username': username}, 
      function(data) { 
       $("#checkExists").html(data); 
      }, 
      "html" 
     ); 
    }) 
}); 

- あなたは$("#checkExists").html(data);

+0

ありがとう、それは違いを生じさせるように見えませんでした。私は他の人が示唆したように、サーバー上でファイルに直接アクセスしようとしましたが、私は500エラーが発生するので、最初に解決する必要があります。 私は時間を感謝します –

関連する問題