2017-05-18 24 views
1

レイアウトファイルdefault.ctpからjquery ajaxを使用してcakephpコントローラの関数を呼び出し、各ページの通知セクションに返信応答を設定したいしかしそれは働かない。jquery ajaxがcakephp 3.xのレイアウトのdefault.ctpファイルで動作しない

これは私のコントローラのメソッドです:

public function cartItemCount(){  
    $conn = ConnectionManager::get('default'); 
    $result = $conn->query("SELECT count(*) as total_count FROM carts")->fetchAll('assoc'); 
    $this->response->body($result[0]['total_count']); 
    return $this->response; 
} 

は、これは私のjqueryのコードです:

<script type="text/javascript"> 
    $(document).ready(function(){ 
     $.get('<?php echo SITEURL;?>/NewOrders/cartItemCount',function(res){ 
      console.log(res); 
      $(".cart_item").text(res); 
     }); 
    }); 
</script> 

私は一人ひとりに、このスクリプトを記述し、その作業正しいを見るが、私はこのスクリプトを書きたいですデフォルトのビューであるため、すべてのビューファイルでコードを記述することなくすべてのビューで使用できます。誰かが私を助けてください。

+0

このコードをdefault.ctpレイアウトに入れると、何が問題になりますか?ビューとレイアウトの間にスクリプトを置くことに違いはありません。 –

答えて

0

セッションで合計カウントを保存して、呼び出したいセッションを取得できます。

+0

それは遅すぎます。しかしそれは別の答えです!ありがとう – Jeevan

関連する問題