Bonjour,
Je me suis résigné à demander le l'aide.
Voilà mon probleme.
Je suis actuellement en train de faire les tuto sur la POO en PHP et j'ai fini la partie MVC à savoir la vidéo 20
Sauf que voila je vais sur la page d'administration des catégories et je clique ajouter une catégorie PHP me renvoie une erreur et me dis que la variable $form n'existe pas.
Voici l'erreur renvoyé par PHP :
( ! ) Notice: Undefined variable: form in C:\wamp\www\Exo PHP\Tp Blog\Partie 11-En cours\app\Views\admin\categories\edit.php on line 2
Or $form est une instance déclaré dans le controleur.
$form est déclaré à la ligne 41.
<?php
namespace App\Controller\Admin;
use \Core\HTML\BootstrapForm;
/**
*
*/
class CategoriesController extends AppController{
public function __construct(){
parent::__construct();
$this->loadModel('Category');
}
public function index(){
$items = $this->Category->all();
$this->render('admin.categories.index', compact('items'));
}
public function add(){
if(!empty($_POST)){
$result = $this->Category->create(['titre' => $_POST['titre']]);
return $this->index();
}
$this->render('admin.categories.edit', compact('form'));
}
public function edit(){
if(!empty($_POST)){
$result = $this->Category->update($_GET['id'], ['titre' => $_POST['titre']]);
return $this->index();
}
$category = $this->Category->find($_GET['id']);
$form = new BootstrapForm($category);
$this->render('admin.categories.edit', compact('form'));
}
public function delete(){
if(!empty($_POST)){
$result = $this->Category->delete($_POST['id']);
return $this->index();
}
}
}
Et voici le code de la la partie vue :
<form method="post">
<?= $form->input('titre', 'Titre de la catégorie'); ?>
<button class="btn btn-primary">Sauvegarder</button>
</form>
Si quelqu'un pouvait m'aider à résoudre ce problème ça serait génial.