sql >> Database >  >> RDS >> Mysql

Object van klasse Database kon niet worden geconverteerd naar string

De fout lijkt hier te zijn:

echo "<tr><td>".$epreuve->designation."</td>"
    .$module = $this->_db->get('module', array('epreuve_code', '=',

Merk op dat je echo niet hebt afgesloten met puntkomma, en er staat een punt voor $module , dus PHP probeert concat echo string te stringen met $module class plus de iteratie ook binnen de aaneenschakeling. Dat kun je niet doen.

Doe het volgende:

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>";
    }

}

Suggestie:

Op uw code

foreach($epreuve->results() as $epreuve){

EN

foreach($module->results() as $module){

U mag niet dezelfde variabelenaam gebruiken als wat u herhaalt. Probeer het te veranderen in

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>";
    }
}

OPMERKING:De HTML-tabel is een beetje rommelig, ik heb geprobeerd om hem zo goed mogelijk te begrijpen. Pas het aan uw behoeften aan.




  1. Gesplitste functie-equivalent in T-SQL?

  2. Inleiding tot SQL-opdrachten

  3. MariaDB UNION-operator uitgelegd

  4. TO_DATE() Functie in Oracle