ich hoffe/denke ihr könnt mir weiterhelfen... Bis vor kurzem habe ich noch Ilch 1.1P genutzt und habe festgestellt das 1und1 PHP 5.6 nicht mehr wirklich supportet und somit muss ich jetzt alles umschreiben (was im Endeffekt auch nicht schlimm ist).
Nun zum eigentlichen Problem...
Ich bin jedenfalls gerade dabei ein benötigtes Modul zuschreiben und hänge derzeit beim Mapper/Models fest und komme jedenfalls nicht weiter ...
Wahrscheinlich ist das nur ein dummer Anwendungsfehler meinerseits (Code: 42)
Was soll das Modul machen:
Aus der Datenbank werden Kategorien gelesen und diese haben dann unterschiedliche Produkte.
-> Installation funktioniert ohne Probleme
-> In der Tabelle sind Daten vorhanden
CREATE TABLE `ilch_service_cat` ( `ID` INT(11) NOT NULL AUTO_INCREMENT, `DE_Name` VARCHAR(50) NOT NULL DEFAULT '0' COLLATE 'utf8mb4_unicode_ci', `EN_Name` VARCHAR(50) NOT NULL DEFAULT '0' COLLATE 'utf8mb4_unicode_ci', `DE_Bezeichnung` VARCHAR(50) NOT NULL DEFAULT '0' COLLATE 'utf8mb4_unicode_ci', `EN_Bezeichnung` VARCHAR(50) NOT NULL DEFAULT '0' COLLATE 'utf8mb4_unicode_ci', `Position` INT(5) NULL DEFAULT NULL, PRIMARY KEY (`ID`) ) COLLATE='utf8mb4_unicode_ci' ENGINE=InnoDB AUTO_INCREMENT=8 ;
Mappers
<?php namespace Modules\Service\Mappers; use Modules\Service\Models\Service as ServiceModel; class Service extends \Ilch\Mapper { #Kategorie aus der Tabelle Service_Cat holen public function getCat( $where = []) { $CatArray = $this->db()->select( '*' ) ->from( 'service_cat' ) ->where( $where ) ->order( [ 'ID' => 'DESC' ] ) ->execute() ->fetchRows(); if (empty($CatArray)) { return null; } $Cat = []; foreach ( $CatArray as $entries ) { $CatModel = new ServiceModel(); $CatModel ->setID( $entries[ 'ID' ] ) ->setDEName( $entries[ 'DE_Name' ] ) ->setEDName( $entries[ 'EN_Name' ] ) ->setDEBez( $entries[ 'DE_Bezeichnung' ] ) ->setENBez( $entries[ 'EN_Bezeichnung' ] ) ->setPos( $entries[ 'Position' ] ); $Cat[] = $CatModel; } return $Cat; }
Moddels
namespace Modules\Service\Models; class Service extends \Ilch\Model { protected $ID; protected $DEName; protected $ENName; protected $DEBez; protected $ENBez; protected $Pos; # Get & Set -> ID public function getID(){ return $this->ID; } public function setID($ID){ $this->ID = (int)$ID; return $this; } # Get & Set -> DEName public function getDEName(){ return $this->DEName; } public function setDEName($DEName){ $this->DEName = (string)$DEName; return $this; } # Get & Set -> ENName public function getENName(){ return $this->ENName; } public function setENName($ENName){ $this->ENName = (string)$ENName; return $this; } # Get & Set -> DEBez public function getDEBez(){ return $this->DEBez; } public function setDEBez($DEBez){ $this->DEBez = (string)$DEBez; return $this; } # Get & Set -> ENBez public function getENBez(){ return $this->ENBez; } public function setENBez($ENBez){ $this->ENBez = (string)$ENBez; return $this; } #Get & Set -> Pos public function getPos(){ return $this->Pos; } public function setPos($Pos){ $this->Pos = (int)$Pos; return $this; } }
View Index
-> Leider bekomme ich keine Ausgabe bzw. irgend eine Fehlermeldung ... Gibts vielleicht ein Debbuging Mode oder sowas?
<?php $cat = $this->get('Cat'); ?> <h1><?=$this->getTrans('menuService') ?></h1> <hr class="hmenu"> <?php print_r($cat); if ($cat != ''): ?> <?php else: ?> <?=$this->getTrans('noCat') ?> <?php endif; ?>
Ausgabe des Moduls
Falls ich wichtige Informationen vergessen habe, so lasst es mich wissen.
Vielen Dank im Voraus für eure Hilfe.
Gruß
Ursa
verwendete ilch Version: 2.1.x
betroffene Homepage: 127.0.0.1