Bueno Triby primero muchas gracias por la bienvenida, y segundo siento escribir asi, es la costumbre y sumado a esto el apuro, pero de hoy en mas voy a escribir bien para podernos entender a la perfeccion, de todas maneras muchas gracias por la observacion.
Respecto a mi pregunta:
Ok. estube intentando hacer una edicion a una tabla al hacer el registro en otra, pero no me sale y no encuentro el como en los tutoriales, explico mejor el problema:
Tengo dos tablas relacionadas con hasmany:
- productos - tiene muchos - stocks -
(puse el hasmany en el modelo de la tabla producto: Producto.php:
Código PHP:
Ver original<?php
class Producto extends AppModel{
var $name = 'Producto';
'className' => 'Stock',
'foreignKey' => 'producto_id',
'dependent' => true));
}
?>
y "belongsto" en el modelo de la tabla stocks: Stock.php. Bueno ese no es el problema )
En si lo que quiero almacenar en estas tablas es:
Productos -> id, las caracteristicas principales del producto y un campo cantidad
Stocks -> id_producto, cantidad, fecha_ingreso_stock.
Osea se registraria un producto una sola ves y muchas veces los stocks que ingresen del mismo.
Entonces lo que quiero es que al registrar un nuevo stock, se
sume la cantidad del mismo a la cantidad que se tenga en la tabla productos.
Lo que intente hacer fue llamar a la funcion editcantidad() desde el add.ctp del nuevo stock, funcion que me creé en el controlador de mi tabla productos (productos_controller.php), en dicha funcion trato de usar un query directo a la bd:
Código PHP:
Ver originalproductos_controller.php
function editcant($id = null, $cantidad = null)
{
$this->Producto->id_producto = $id;
{
$this->Producto->query(UPDATE TABLE productos SET cantidad = cantidad + $cantidad WHERE id = '$id')
}
}
mandandole el id del producto del cual se registra el nuevo stock y la cantidad del stock.
La verdad no me funciona y me da errores asi que supongo algo o mucho esta mal, talves mi paso de datos, de todas formas lo hice asi:
solo llame a la funcion editcant() desde add.ctp
Código PHP:
Ver originalviews/stocks/add.ctp
<br><h2>Registro de Stocks </h2>
<?php echo $form->create('Stock');?>
<?php echo $this->Form->create('Producto', array('action' => 'edit'));?>
<?php echo $id = $form->input('producto_id', array('type'=> 'select', 'label'=> 'Producto: ', 'default'=> "", 'empty' => __
('Selecciona un producto...', true)));?>
<?php echo $cantidad = $form->input('cantidad', array('type'=> 'text', 'label'=> 'Cantidad: ', 'default'=> "", 'maxlength'=> '7', 'size'=>10)); ?>
<?php echo $form->input('fecha', array('dateFormat' => 'DMY','type'=> 'date', 'label'=> 'Fecha: ', 'selected' => strtotime ('today'), 'empty' => false));?>
<?php echo $form->end('Registrar Stock');?>
En si pense que se podia enviar los datos introducidos en los input almacenandolos en dos variables
$id y
$cantidad, variables que recibo en la funcion, pero no me funciona, porfa una manito con esto que estoy intentandolo dias y estoy trancada en esto....PORFA!!!!
Gracias d antemano...