
07/02/2005, 17:57
|
| | Fecha de Ingreso: febrero-2005
Mensajes: 28
Antigüedad: 20 años, 1 mes Puntos: 1 | |
Respecto a la propuesta de jpinedo,
¿por que no poner las propiedades públicas directas?
Public $id;
Public $nick;
y despues un método Update que actualice la base de datos a partir de las propiedades píblicas.
Otro tema por la expriencia que tengo, un objeto lo vamos a necesitar inicizalizar de 2 maneras, con el código de forma directa o conm e lrecordset cuandop estamos construyendo una clase, ¿que tal este construct y select?:
function __construct($CodigoPelicula = 0)
{
$NumeroParametros = func_num_args();
/* Si hay parametros es que se está construyendo la clase
poniendo el código en la sentencia new */
if ($NumeroParametros >0)
{
$this->Select($CodigoPelicula);
}
}
function Select($CodigoPelicula)
{
// Determinar el tipo de Variable que se recibe
/*Control 1º: Se pasa un recordset porque externamente se
está creando una colección */
/* Control 2ª: Se pasa como valor el codigo del registro
y se debe acceder en ufnción del mismo */
if (is_numeric($CodigoPelicula) )
{
// Tratamiento de Acceso para números
$sql = "Select * From Elementos ";
$sql.= "Where ElementoID=".$CodigoPelicula;
}
elseif (is_string($CodigoPelicula))
{
// Tratamiento de Acceso para String
$sql = "Select * From Elementos ";
$sql.= "Where ElementoID='".$CodigoPelicula."'";
}
else
{
{
$this->RellenarPropiedades($CodigoPelicula);
return; // Se sale de la función
}
}
// Crear objeto Database
$db = new AuxDB();
$db->conectar();
/* Sentencia Select para leer el registro en la tabla
elementos correspondiente a una película determinada */
$rst = $db->ejecutarSQL($sql);
// Desconexión con el servidor de bases de datos
$db->desconectar();
// Obtener la fila de datos
$reg =$db->siguienteFila($rst);
$this->RellenarPropiedades($reg);
}
private function RellenarPropiedades($Registro) {
// Se rellenan las propiedades de esta clase
$this->AñoEstreno = $Registro['AñoEstreno'];
$this->GeneroCinematograficoID = $Registro['generocinematograficoid'];
} |