Ver Mensaje Individual
  #16 (permalink)  
Antiguo 19/12/2012, 13:43
Avatar de abimex
abimex
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: ~
Mensajes: 751
Antigüedad: 17 años, 9 meses
Puntos: 137
Respuesta: Duda al pasar codigo estructurado a poo

Código PHP:
Ver original
  1. <?php
  2. class MySQL {
  3.     //Atributos de la conexion
  4.     private $hostname_cnx;
  5.     private $database_cnx;
  6.     private $username_cnx;
  7.     private $pass_cnx;
  8.     private $cnx;
  9.     private $error_cnx = "No se ha podido conectar a la Base de datos";
  10.      
  11.     //Metodos
  12.      
  13.     //Funcion para conectar a la base de datos
  14.     public function __construct($hostname_cnx, $username_cnx, $pass_cnx, $database_cnx ){
  15.         $this->hostname_cnx = $hostname_cnx;
  16.         $this->username_cnx = $username_cnx;
  17.         $this->pass_cnx = $pass_cnx;
  18.         $this->database_cnx = $database_cnx;
  19.         $this->cnx = mysql_pconnect($this->hostname_cnx, $this->username_cnx, $this->pass_cnx) or die ($this->error_cnx);
  20.         $db_seleccionar = mysql_select_db($this->database_cnx, $this->cnx);
  21.     }
  22.      
  23.     //Funcion para desconectar a la base de datos
  24.     public function desconectar(){
  25.         if($this->flag == true){
  26.             mysql_close($this->cnx);
  27.         }
  28.     }
  29.      
  30.     //Esta funcion selecciona la bd y hace una consulta
  31.     public function consulta($query){
  32.         return mysql_db_query($this->database_cnx,$query);        
  33.     }
  34.      
  35.     //Funcion que guarda una fila de resultados
  36.     public function filas($query){
  37.         return mysql_fetch_assoc($query);
  38.     }
  39.  
  40.     public function getDb(){
  41.         return $this->cnx;
  42.     }
  43. }
  44.     class producto{
  45.         private $id;
  46.         private $nombre_prod;
  47.         private $precio_prod;
  48.         private $detalles_prod;
  49.         private $stock;
  50.  
  51.         private $_db;
  52.      
  53.         public function __construct($nombre_prod, $precio_prod, $detalles_prod, $stock){
  54.             $this->nombre_prod = $nombre_prod;
  55.             $this->precio_prod = $precio_prod;
  56.             $this->detalles_prod = $detalles_prod;
  57.         }
  58.          
  59.         public function addProd($nombre_prod, $precio_prod, $detalles_prod, $stock){
  60.             $sql = "INSERT INTO producto (nombre_prod, precio_prod, detalles_prod, stock_prod) VALUES ('$nombre_prod', '$precio_prod', '$detalles_prod', '$stock')";
  61.             mysql_query($sql, $this->_db);
  62.         }
  63.  
  64.         public function setDb($db){
  65.             $this->_db = $db;
  66.         }
  67.     }
  68. $db = new MySQL();
  69. $producto = new producto();
  70. $producto->setDb($db);
  71. $producto->addProd();
checa eso, no funcionara porque esta a modo de prototipo, pero es lo que podrias hacer
Saludos