Изглежда грешката е тук:
echo "<tr><td>".$epreuve->designation."</td>"
.$module = $this->_db->get('module', array('epreuve_code', '=',
Имайте предвид, че не сте затворили echo
с двоеточие и запетая и има точка преди $module
, така че PHP се опитва да нареди concat echo низ с $module клас плюс итерацията също вътре в конкатенацията. Не можете да направите това.
Направете следното:
public function getModule() {
$epreuve = $this->_db->get('epreuve', array('concour_code', '=', $this->data()->concour_code));
foreach($epreuve->results() as $epreuve){
echo "<tr>";
echo "<td>".$epreuve->designation."</td>";
$module = $this->_db->get('module', array('epreuve_code', '=', $epreuve->code ));
foreach($module->results() as $module){
echo "<td>".$epreuve->designation."</td>";
}
echo "</tr>";
}
}
Предложение:
На вашия код
foreach($epreuve->results() as $epreuve){
И
foreach($module->results() as $module){
Не трябва да използвате същото име на променливата на това, което итерирате. Опитайте да го промените на
public function getModule() {
$epreuve = $this->_db->get('epreuve', array('concour_code', '=', $this->data()->concour_code));
foreach($epreuve->results() as $epreu){
echo "<tr>";
echo "<td>".$epreu->designation."</td>";
$module = $this->_db->get('module', array('epreuve_code', '=', $epreu->code ));
foreach($module->results() as $mod){
echo "<td>".$epreu->designation."</td>";
}
echo "</tr>";
}
}
ЗАБЕЛЕЖКА:HTML таблицата е малко разхвърляна, опитах се да я разбера. Променете го според нуждите си.