-1
我從字面上剛開始使用CakePHP並正在閱讀文檔。我正在嘗試運行一個簡單的SELECT * FROM qci_departments
查詢,但對於它無法設法使它在CakePHP中工作...任何建議都會受到歡迎。CakePHP - MySQL - 選擇查詢和獲取結果
SamplePageController.php
<?php
namespace App\Controller;
use App\Controlle\AppController;
use Cake\Datasource\ConnectionManager;
use Cake\Core\Configure;
use Cake\Network\Exception\ForbiddenException;
use Cake\Network\Exception\NotFoundException;
use Cake\View\Exception\MissingTemplateException;
class SamplePageController extends AppController {
/* Function for the displaying the content of the sample page */
public function index() {
$this->set('PageTitle','Sample Page');
$db = ConnectionManager::get('default');
$result = $db->execute('SELECT * FROM qci_departments')->fetchAll('assoc');
}
}
sample_page.ctp
<table class="table table-striped table-hover">
<thead>
<tr>
<th>One</th>
<th>Two</th>
<th>Three</th>
</tr>
</thead>
<tbody>
<?php
foreach ($result as $row) {
echo '
<tr>
<td>'.$row['ID'].'</td>
<td>'.$row['Department'].'</td>
<td>'.$row['Positions'].'</td>
</tr>';
}
?>
</tdbody>
</table>
我明白,有防止所有形式的東西,如代碼注入CakePHP的語法,而且還有正規PHP語法似乎需要額外的安全和安全預防措施。我的問題是:
- 爲什麼上面的查詢/獲取不工作?
- 我應該遵循哪種語法? CakePHP還是普通的PHP?
謝謝 A2K
編輯: 爲了澄清,我收到的錯誤是:
- 未定義的變量:結果[APP /模板/頁/ sample_page.ctp,線 105]爲foreach提供的無效參數() [APP/Template/Pages/sample_page.ctp,line 105]
謝謝,但這不起作用。 '未定義的變量:結果'錯誤依然存在,似乎'$ result'變量永遠不會讓它進入視圖,無論我如何設置它。數據庫連接正在工作,並被稱爲「默認」,真的不知道問題可能是什麼。 – Armitage2k
哦,我明白了。你仍然缺少基本約定,請參閱最新的答案。 –
也不起作用。 CakePHP會拋出一個錯誤,告訴我在'/ src/Template/Pages/sample_page.ctp'中創建.ctp文件...到目前爲止,所有其他網站也都位於該文件夾中。 – Armitage2k