Bueno resulta que me dio por aprender cakePHP y estoy siguiendo un tutorial de una versión anterior. pero voy realizando los cambios para que funccione...
pero me he quedado estancado.
no se como quitar este error Notice (8): Undefined variable:
he buscado en la red y no he encontrado nada.
Espero que podais ayudarme.
Estoy usando la versión 2.1.1
TareasControler.php
Código PHP:
<?php
class TareasController extends AppController {
var $name = 'Tareas';
var $helpers = array('Html', 'Form');
function index() {
$this->set('tareas', $this->Tarea->find('all'));
}
function edit($id = null) {
if (!$id) {
$this->Session->setFlash('Tarea Inválida');
$this->redirect(array('action'=>'index'), null, true);
}
if (empty($this->data)) {
$this->data = $this->Tarea->find(array('id' => $id));
} else {
if ($this->Tarea->save($this->data)) {
$this->Session->setFlash('La Tarea ha sido salvada');
$this->redirect(array('action'=>'index'), null, true);
} else {
$this->Session->setFlash('La Tarea no ha podido ser salvada.
inténtalo de nuevo.');
}
}
}
function add() {
if (!empty($this->data)) {
$this->Tarea->create();
if ($this->Tarea->save($this->data)) {
$this->Session->setFlash('La Tarea ha sido salvada');
$this->redirect(array('action'=>'index'), null, true);
} else {
$this->Session->setFlash('Tarea no salvada. Prueba de nuevo.');
}
}
}
}
?>
add:
Código PHP:
<?php echo $form->create('Tarea');?>
<fieldset>
<legend>Añadir Nueva Tarea</legend>
<?php
echo $form->input('titulo');
echo $form->input('hecha');
?>
</fieldset>
<?php echo $form->end('Añadir Tarea');?>
<?php echo $this->Html->link('Listar todas las Tareas', array('action'=>'index')); ?>
Código PHP:
<?php echo $form->create('Tarea');?>
<fieldset>
<legend>Edita Tarea</legend>
<?php
echo $form->hidden('id');
echo $form->input('titulo');
echo $form->input('hecha');
?>
</fieldset>
<?php echo $form->end('Salvar');?>
<?php echo $this->Html->link('Listar Todas las Tareas', array('action'=>'
index')); ?><br />
<?php echo $this->Html->link('Agregar Tarea', array('action'=>'add')); ?>
Notice (8): Undefined variable: form [APP\View\tareas\add.ctp, line 1]
y Edit me saca el mensaje de cakePHP;
Tarea Inválida
También les dejo el index por si le hace falta.
INDEX EN VIEWS:
Código PHP:
<h2>Tareas</h2>
<?php if(empty($tareas)): ?>
No hay tareas en esta lista
<?php else: ?>
<table>
<tr>
<th>Título</th>
<th>Estatus</th>
<th>Creado</th>
<th>Modificado</th>
<th>Acciones</th>
</tr>
<?php foreach ($tareas as $tarea): ?>
<tr>
<td>
<?php echo $tarea['Tarea']['titulo'] ?>
</td>
<td>
<?php
if($tarea['Tarea']['hecha']) echo "Hecha";
else echo "Pendiente";
?>
</td>
<td>
<?php echo $tarea['Tarea']['creado'] ?>
</td>
<td>
<?php echo $tarea['Tarea']['modificado'] ?>
</td>
<td>
<!-- acciones en las tareas serán añadidas más tarde -->
<?php echo $this->Html->link('Editar', array('action'=>'edit',
$tarea['Tarea']['id'])); ?>
</td>
</tr>
<?php endforeach; ?>
</table>
<?php endif; ?>
<?php echo $this->Html->link('Añadir Tarea', array('action'=>'add')); ?>
Muchas gracias de antemano.
Saludos