2012-02-23 17 views
1

jquery ajaxを「コードを取得」ボタンをクリックするなどの特定の機能に使用している場合、ajaxリクエストはsymfony2コントローラアクションの1つに行われます。私が試してみると、firebugコンソールをチェックすると500の内部エラーが発生しています。ここでSymfony 2:JQuery Ajax、内部サーバエラーが500件発生する

は、Ajaxコードは(FOSJsRoutingBundleを使用)です:

<script type="text/javascript"> 
$(document).ready(function() { 
    var locale = '{{ app.request.get('_locale') }}'; 
    $('.codeBtn').click(function(){ 
     $.ajax({ 
      url: Routing.generate('gd_getcode',{ '_locale': locale}), 
      success: function(html){ 
      alert("Successful Response from server"); 
      } 
     }); 
    }); 
}); 

ここに私のコントローラのアクションです:

public function getCodeAction() 
{ 
    if ($this->container->get('request')->isXmlHttpRequest()) { 
     $code = rand(1,9999); 
     $this->getUser()->setAttribute('transactionCode', $code); 

     $message = \Swift_Message::newInstance() 
        ->setSubject("Code") 
        ->setFrom('[email protected]') 
        ->setTo('[email protected]') 
        ->setBody($code); 
       $this->get('mailer')->send($message); 

     return true; 

    } 

} 

は私のコードでは何も悪いことですか私は、Ajaxのいずれかをしないのです設定パラメータ。

+1

エラー500は、レスポンスが存在しないサーバーサイドの問題を意味します... Firefox用のFireBugのようなツールConsoleタブで、Symfony例外ハンドラが提供するエラー情報を確認できます。 – AlterPHP

答えて

0

Firebugの[Net]> [XHR]パネルで、要求を見つけることができます。 リクエストを展開し、htmlタブをチェックして、正確に何が応答であるかを確認してください。

関連する問題