Bonjour à tous,

Je travail sur un plugin pour un CMS (CMS lui même réaliser ave CakePHP2) et je rencontre des difficultées qui sont dues à mon manques d'expérience sur cakephp et les langages web... Avant toutes choses je tiens à dire que j'ai fais quelques recherches avant de venir poster un message ici.

Ce que je fais

Je cherche à créer un plugin de type webradio qui permet d'avoir une radio pour les visiteur de son site.

J'ai donc créer le nécessaire pour mon plugin (Controller, View, Config, SQL...)

Et voici la fonction censée faire la requête SQL pour avoir la radio.Le soucis ce trouve ici je pense... car je ne sais pas comment je dois appeller ma fonction...:

public function JENESAISPASQUOIMETTREICI(){ $radios = $this->Radio->find('all', [ 'order' => 'id' ]); $this->set(compact("radios")); }

Voici comment j'intégre mon Element dans le footer du CMS:

<?= $this->element('Radio.affichage'); ?>

Ce que je veux

J'aimerai faire en sorte que la radio puisse être écoutée sur n'importe quelle page donc pour réaliser cela j'ai décidé de créer un dossier Elements dans mon dossier View dans lequel j'ai mis le code permettant d'afficher la radio. Cet Element je souhaite l'intégrer au footer du CMS et c'est là que je bloque...

Ce que j'obtiens

Le fichier erreur.log et debug.log me disent que la variable radios est inconnue.

Merci d'avance pour votre aide !

1 réponse


Déjà pour $this->set(compact("radios")); il faut plutôt faire $this->set(compact('radios')); (mettre une quote et non double)
Moi je te conseillerai de soit utiliser un requestAction ou de mettre toute ton action dans AppController cela pour avoir à tout moment la disponibilité de radios dans ton élément, mais avec les versions 3.x de cakephp, tu peux te passer de AppController et utiliser les Cell