2017-04-27 98 views
2

我試圖讓表的使用cakephp3另一個表計數,但我必須得到一個錯誤獲取數據表的計數從另一個表CakePHP中

Error: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ') AS Transactions__COUNT() FROM transactions Transactions LEFT JOIN transactio' at line 1

我不知道這有什麼錯我的代碼!

這裏是我的控制器:

$data = $this->Transactions->find(
     'all', 
     array(
      'fields' => array('COUNT(*)'), 
      'group' => array('transactions_type_id'), 
      'contain' => array('TransactionsTypes') 
      )    ); 

,這裏是我的CTP:

<?php 
         foreach ($data as $transactionsType) { 

          ?> 
      <li> 
       <p class="clearfix"><i class="icon-radio-checked text-info"></i><b><?php echo $transactionsType['title'] ?> </b><span>210</span> 
       </p> 
       <div class="progress progress-md"> 
        <div class="progress-bar progress-bar-info" role="progressbar" aria-valuenow="8" aria-valuemin="0" aria-valuemax="100" style="width: 8%"><span class="sr-only">10% Complete (success)</span> 
        </div> 
       </div> 
      </li> 
      <?php } 
         ?> 

回答

0

你只可以使用count()功能。

$count=TableRegistry::get('Transactions') 
    ->find() 
    ->contain('TransactionsTypes') 
    ->group('Transactions.transactions_type_id') 
    ->count(); 
+0

感謝您的重播,我都試過,但這個給我這個錯誤 警告(2):爲的foreach()[APP /模板\網頁\ home.ctp,線109] –

+0

的提供了無效的參數錯誤在這一行: foreach($ count as $ transactionsType){ –

+0

也我已經嘗試var_dump($ count),並給我, int(1) –

相關問題