Brauche hilfe beim pluginmp3 unter Contao 3.1 lauffähig machen
Hi zusammen,
da die Erweiterung pluginmp3 genau das macht was ich suche, möchte ich diese auch unter Contao 3.1 weiter verwenden.
Nachdem es vom Entwickler wohl nichts neues mehr gibt wollte ich selbst ein wenig Hand anlegen :P
Ein kleines bisschen kenne ich mich jetzt schon aus mit der Erweiterungs-Entwicklung aber so ganz vertraut mit php und dem Contao Framework bin ich leider dann doch nicht.
(Normalerweiße Programmiere ich nur in Java...)
Das BackendModul läuft soweit schon wieder denke ich...
Aber am Frontent bekomme ich folgenden Fehler:
Code:
Warning: Invalid argument supplied for foreach() in C:\xampp\htdocs\contao3\system\modules\pluginmp3\PluginMp3.php on line 88
Der Code dazu (aufs wesentliche reduziert!):
Code:
public function __construct($args) {
$this->Import('Database');
$this->Import('Environment');
$this->Import('Input');
// Hier steht die mp3 Datei als Datenbank BLOB
$this->multiSRC = $args[0];
...
}
public function parseplayer() {
$playerid = 1;
$fileid = 0;
/*
* Read the configuration of the current layout
*/
$objconfig = $this->Database->prepare("SELECT * from tl_pluginmp3 WHERE id=?")
->execute($this->player_layout);
// Dieser unserialize geht glaub ich schief da $filesrc danach leer ist
// wenn ich das hier einfüge: if (!$filesrc = unserialize($this->multiSRC)) { echo 'cannot unserialize'; }
// wird auch die ausgabe 'cannot unserialize' ausgegeben!
$filesrc = unserialize($this->multiSRC);
/*
* Send the file to the browser for the download
*/
if (strlen($this->Input->get('file', true))) {
$this->sendFileToBrowser($objconfig->encode ? $this->decode_link($this->Input->get('file', true)) : $this->Input->get('file', true));
return;
}
/*
* Save the layout settings
*/
$script = $this->savelayoutconfig($objconfig);
/*
* Create the playlist or for each file an own player, this depends on the settings.
*/
//hier kommt dann die Fehlermeldung da $filesrc leer ist
foreach ($filesrc as $file) {
...
Der Konstruktor wird so aufgerufen:
Code:
$details = array ($this->pluginmp3_multiSRC);
$player = new PluginMp3($details);
In der Datenbank von Contao 2.11 steht das hier:
Tabelle: tl_content
Spalte: pluginmp3_multiSRC
Inhalt: [BLOB - 71 B]
Und in der Datenbank von Contao 3.1 steht:
Tabelle: tl_content
Spalte: pluginmp3_multiSRC
Inhalt: [BLOB - 3 B]
Läuft bei dem Datenbank Insert schon was schief?
Oder wo könnte der Fehler sonst noch liegen?
Könnt ihr mir weiter helfen?