Foros del Web » Creando para Internet » Sistemas de gestión de contenidos » Joomla »

Insert Into de datos de un formulario con boton "aplicar".

Estas en el tema de Insert Into de datos de un formulario con boton "aplicar". en el foro de Joomla en Foros del Web. Buenas días de nuevo, Me ha surgido otra duda a la que llevo dando vueltas todo el día. He instalado un componente propio en el ...
  #1 (permalink)  
Antiguo 31/08/2012, 13:04
 
Fecha de Ingreso: agosto-2009
Mensajes: 91
Antigüedad: 10 años, 2 meses
Puntos: 2
Insert Into de datos de un formulario con boton "aplicar".

Buenas días de nuevo,

Me ha surgido otra duda a la que llevo dando vueltas todo el día. He instalado un componente propio en el backend de Joomla que muestra una tabla de datos ordenados por id, cada fila de la cual va acompañada de un checkbox. Me gustaría que al marcar los checkbox y darle al botón "Aplicar" hiciera un INSERT INTO en la base de datos para cada id marcado.
Más que desconocimiento del código a implementar es una duda de ubicación del código.

Os dejo el código por si me podéis echar una mano:

Código de la vista donde he añadido el botón "Aplicar": view.html.php

Código PHP:
<?php

defined
('_JEXEC') or die('Restricted access');
 

jimport('joomla.application.component.view');
 
/**
 * generadorqr View
 */
class generadorqrViewgeneradorqr extends JView
{
        
/**
         * 
         * @return void
         */
        
function display($tpl null
        {
                
                
$items $this->get('Items');
                
$pagination $this->get('Pagination');
 
                
                if (
count($errors $this->get('Errors'))) 
                {
                        
JError::raiseError(500implode('<br />'$errors));
                        return 
false;
                }
                
                
$this->items $items;
                
$this->pagination $pagination;
 
        
        
$this->addToolBar();

                
                
parent::display($tpl);
        }
    
/**
         * Configuracion de la barra de tareas
         */
        
protected function addToolBar() 
        {
                
JToolBarHelper::title(JText::_('COM_GENERADORQR_GENERADORQR_GENERADORQR'));
                
JToolBarHelper::apply();
        
        }


}

Código de la vista donde se encuentra el body: tmpl/default_body.php

Código PHP:
<?php

defined
('_JEXEC') or die('Restricted Access');
?>
<?php 
foreach($this->items as $i => $item): ?>
        <tr class="row<?php echo $i 2?>">
                <td>
                        <?php echo $item->virtuemart_product_id?>
                </td>
                <td>
                        <?php echo JHtml::_('grid.id'$i$item->virtuemart_product_id); 
                
                        
?>
                </td>
                <td>
                        <?php echo $item->product_name?>
                </td>
        <td>
                        <?php echo $item->URL_a_convertir?>
                </td>
        </tr>
<?php endforeach; ?>


Código de la vista donde se encuentra el formulario: tmpl/default.php

Código PHP:
<?php

defined
('_JEXEC') or die('Restricted Access');
 
JHtml::_('behavior.tooltip');
?>
<form action="<?php echo JRoute::_('index.php?option=com_generadorqr'); ?>" method="post" name="adminForm" id="adminForm">
        <table class="adminlist">
                <thead><?php echo $this->loadTemplate('head');?></thead>
                <tfoot><?php echo $this->loadTemplate('foot');?></tfoot>
                <tbody><?php echo $this->loadTemplate('body');?></tbody>
        </table>
    <div>
                <input type="hidden" name="task" value="" />
                <input type="hidden" name="boxchecked" value="0" />
                <?php echo JHtml::_('form.token'); ?>
        </div>
</form>
  #2 (permalink)  
Antiguo 01/09/2012, 13:32
 
Fecha de Ingreso: agosto-2009
Mensajes: 91
Antigüedad: 10 años, 2 meses
Puntos: 2
Respuesta: Insert Into de datos de un formulario con boton "aplicar".

¿Nadie puede darme alguna pista? Estoy completamente atascado y no parece complicado. Si es necesario no tengo ningún problema en enviar el código.

Lo que hace el componente que he creado es añadir un campo en la tabla #__virtuemart_product_es_es que se llama URL_a_convertir. Además, lista todos los productos con sus id's y un checkbox a su lado. Lo que me falta es crear un botón "salvar" o "aplicar" o algo así que al seleccionar los checkboxes y clicarlo haga un insert en el campo URL_a_convertir de todos los productos marcados. El insert podría ser cualquier marca para saber que se inserta bien, un sí o un no, o cualquier otro string.

Muchas gracias de antemano cracks.

Estoy intentando seguir este tutorial pero trabajan con dos vistas y no soy capaz de convertirlo en una sola y que me funcione.
http://docs.joomla.org/Developing_a_...ackend_actions

Última edición por jurassicboy; 01/09/2012 a las 13:34 Razón: Añado la url que estoy utilizando como tutorial.
  #3 (permalink)  
Antiguo 06/09/2012, 06:14
Avatar de zulkas  
Fecha de Ingreso: julio-2011
Mensajes: 126
Antigüedad: 8 años, 2 meses
Puntos: 11
Respuesta: Insert Into de datos de un formulario con boton "aplicar".

Una cosa cualquier transaccion con la base de datos ha de hacerse en el modelo, es decri, crear la función en el modelo y luego llamarla.

Llamar a un modelo desde cualquier parte:http://dostoallas.blogspot.com.es/20...ier-parte.html

La llamada al modelo en cuestión deberías de hacerla desde el controlador correspondiente, pues es en este donde se recogerá la acción realizada por el usuario (en ese caso el submit).

Etiquetas: componente, formulario, insert, php, botones
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:46.