Ver Mensaje Individual
  #9 (permalink)  
Antiguo 18/07/2008, 12:26
franko1809
 
Fecha de Ingreso: enero-2008
Ubicación: Lima - Perú
Mensajes: 1.127
Antigüedad: 17 años
Puntos: 10
Respuesta: Crear clase para agregar registros a una BD

Cita:
Iniciado por enriqueplace Ver Mensaje
  • Para hacerlo más genérico, recibiría por parámetros un array asociativo donde la clave es el nombre del campo.
No entendi a que te refieres?, he leido un poco sobre arrays en la documentacion, pero es un lio aplicarlo a lo que necesito!

Como creo un array con el numero de elementos que tenga la tabla?, es decir, puedo pasar un array como parametro en una funcion?, esto ultimo es lo q falta, aunque no se si este bien platiado lo que hize para obtener el nombre de los campos $this->tabla ($cadena)
Código PHP:
//como automatizo esto?
function agregar($campo1,$campo2){ 
  
    
$this->campo1 $campo1;
    
$this->campo2 $campo2;
//------>
VALUES('$this->campo1','$this->campo2'
Código PHP:
<?php
//declarar las variables al inicio no es necesario ó si, 
//aunque pense que era obligatorio en una clase

class Ejemploclase{
  
  function 
__construct($tabla){
    
$this->tabla $tabla;
  }
  
  function 
agregar($campo1,$campo2){ 
  
    
$this->campo1 $campo1;
    
$this->campo2 $campo2;
    
    
$link mysql_connect("localhost","root","");
    
mysql_select_db("db_ingreso");
    
    
//recupero el nombre de los campos de la tabla
    
$result mysql_query("select * from $this->tabla"); 
    
$i 1
    while(
$i mysql_num_fields($result)){ 
         
$meta mysql_fetch_field($result$i); 
         
$cadena .= $meta->name.","
         
$i++; 
         } 
    
$cadena substr ($cadena0, -1);
    
//
    
mysql_query("INSERT INTO $this->tabla ($cadena) 
                 VALUES('$this->campo1','$this->campo2')"
);
    }
}
$a=new Ejemploclase("noticias");
$a->agregar("titulo 34","contenido 34");
?>

Última edición por franko1809; 18/07/2008 a las 12:37