asi esta mi componente:
dentro de la carperta com_prueba, esta mi archivo principal: prueba.php
Código PHP:
defined('_JEXEC') or die('Restricted access');
require_once(JPATH_COMPONENT.DS.'controller.php');
if($controller = JRequest::getWord('controller')) {
$path = JPATH_COMPONENT.DS.'controllers'.DS.$controller.'.php';
if (file_exists($path)) {
require_once $path;
} else {
$controller = '';
}
}
$classname = 'pruebaController'.$controller;
$controller = new $classname();
$controller->execute( JRequest::getVar( 'task',null,'default' ) );
$controller->redirect()
Código PHP:
defined( '_JEXEC' ) or die( 'Restricted access' );
jimport('joomla.application.component.controller');
class pruebaController extends JController
{
function display()
{
parent::display();
}
function save(){
// get the data to be saved ($_POST hash)
$caja1 = JRequest::getVar('caja1');
// get the model
$model = $this->getModel('prueba');
$view = &$this->getView('save');
$view->display();
if ($model->save($caja1))
{
$message=JText::_('FoobarSaveFailed');
}
else
{
$message='['.$model->getError().']';$message .= ' ['.$getError().']';
}
//$this->setRedirect('index.php?option=com_prueba', $message);
}
})
Código PHP:
defined('_JEXEC') or die("Invalid access");
jimport('joomla.application.component.model');
class pruebaModelprueba extends JModel
{
function getMensaje(){
return "Hola, soy un valor devuelto por el modelo";
}
function save($caja1var){
//hago el query para que guarde y demas cosas
return 'guardo';
}
}
Código PHP:
defined( '_JEXEC') or die( 'Restricted access');
jimport( 'joomla.application.component.view');
class pruebaViewprueba extends JView
{
function display($tpl = null)
{
$model =& $this->getModel();
$mensaje = $model->getMensaje();
$this->assignRef('mensaje',$mensaje);
parent::display($tpl);
}
}
Código PHP:
<h1> <?php echo $this->mensaje ?> </h1>
<form action="<?php echo JRoute::_( 'index.php' );?>" method="post" >
<input type="text" name="caja1" />
<input type="submit" value="enviar">
<input type="hidden" name="task" value="save" />
</form>
mi segundo view(com_prueba/views/save/view.html.php):
Código PHP:
defined( '_JEXEC') or die( 'Restricted access');
jimport( 'joomla.application.component.view');
class pruebaViewsave extends JView
{
function display($tpl = null)
{
$model =& $this->getModel();
$mensaje = $model->save();
parent::display($tpl);
}
}
Código PHP:
<h1> Guardado </h1>
http://localhost/joomla-1-5-15/index...ion=com_prueba
muestra el mensaje: Hola, soy un valor devuelto por el modelo
y me muestra la caja de texto con el boton submit, cuando le doy click al boton submit para que ejecute el metodo save, me sale error 500 y este mensaje:
View not found [name, type, prefix]: save,,pruebaView
Alguien puede darme una mano, la verdad he leido el tutorial para crear componentes pero no me queda claro mi error.
Salu2