Ver Mensaje Individual
  #10 (permalink)  
Antiguo 12/04/2012, 10:55
lokito1986
 
Fecha de Ingreso: agosto-2010
Mensajes: 20
Antigüedad: 14 años, 2 meses
Puntos: 1
No GUARDA Datos PHP

ante todos gracias por darse Un tiempo para ller este mensaje ..pero lo k pasa que soy un novato que estoy programando en PHP ...
bueno al intentar grabar no se puede y sale este error ...
Categoria si inserta Normal ..el problema viene cuando intento grabar UN PRODUcTO
Estoy Haciendo Lo correcto en progrmar de Esta forma ..si no es asi me gustaria que me hiceran ver donde ESTAN MIS HORRORES xD..

Error MOSTRADO :

Fatal error: Call to a member function EjecutarConsulta() on a non-object in C:\AppServ\www\trabajoMadrugada\Clases\Producto.ph p on line 34

Categoria.php

Código PHP:
Ver original
  1. <?php
  2.  
  3. require_once 'Conexion.php';
  4. class Categoria {
  5.     private $codigoCategoria;
  6.     private $_nombre;
  7.     private $_descripcion;
  8.     private $_objcon;
  9.    
  10.     public function getCodigoCategoria() {
  11.         return $this->codigoCategoria;
  12.     }
  13.  
  14.     public function setCodigoCategoria($codigoCategoria) {
  15.         $this->codigoCategoria = $codigoCategoria;
  16.     }
  17.  
  18.         function __construct() {
  19.         $this->_objcon=new Conexion();
  20.     }
  21.  
  22.     public function get_nombre() {
  23.         return $this->_nombre;
  24.     }
  25.  
  26.     public function set_nombre($_nombre) {
  27.         $this->_nombre = $_nombre;
  28.     }
  29.  
  30.     public function get_descripcion() {
  31.         return $this->_descripcion;
  32.     }
  33.  
  34.     public function set_descripcion($_descripcion) {
  35.         $this->_descripcion = $_descripcion;
  36.     }
  37.  
  38. public function grabarCategoria(){
  39.     $query="insert into categoria(nombre,descripcion)values('$this->_nombre','$this->_descripcion')";
  40.     $resultado = $this->_objcon->EjecutarConsulta($query);
  41.     return $resultado;
  42. }
  43. }
  44. ?>

Producto.php
Código PHP:
Ver original
  1. <?php
  2. require_once 'Categoria.php';
  3.  
  4. class Producto {
  5.     private $nombre;
  6.     private  $objCat;
  7.     private $objcon;
  8.    
  9.    
  10.     function __construct() {
  11.         $this->objcon=new Conexion();
  12.         $this->objCat=new Categoria();
  13.     }
  14.     public function getNombre() {
  15.         return $this->nombre;
  16.     }
  17.  
  18.     public function setNombre($nombre) {
  19.         $this->nombre = $nombre;
  20.     }
  21.  
  22.     public function getObjCat() {
  23.         return $this->objCat;
  24.     }
  25.  
  26.     public function setObjCat(Categoria $objcat) {
  27.         $this->objCat=$objcat;
  28.     }
  29.  
  30.     public function grabarProducto(){
  31.      
  32.         $micod=  $this->objCat->getCodigoCategoria();
  33.     $query="insert into producto (nombre,codcategoria)values('$this->nombre','$micod')";
  34.     $resultado = $this->_objcon->EjecutarConsulta($query);
  35.     return $resultado;
  36. }
  37.  
  38. }
  39.  
  40. ?>

Prueba.php
Código PHP:
Ver original
  1. <?php require_once '../Clases/Producto.php';
  2.  
  3. $objproducto=new Producto();
  4. $objcat=new Categoria();
  5. $objcat->setCodigoCategoria("2");
  6. $objcat->set_nombre("lacteos");
  7. $objcat->set_descripcion("tiene Calcio");
  8.  
  9. $objproducto->setNombre("Leche ");
  10. $objproducto->setObjCat($objcat);
  11.  
  12. $resp = $objproducto->grabarProducto();
  13.  
  14. if ($resp) {
  15.   echo 'Grabo exitosamente';
  16. }
  17. else{
  18.     echo 'fallo algo';
  19. }
  20.  
  21. ?>