Clase para administrar una base de datos

catarcid
09 de Junio del 2004
/*
Estoy creando una funci贸n para devolver registros. El problema es ... 驴c贸mo creo una funci贸n para devolver registros?.

Hab铆a pensado en devolverlos con un array de dos dimensiones. Por ejemplo, devolver铆a $array_devuelve[0] = "juan, pedro, omar, marcos" para el segundo campo.

脡sta es la funci贸n:

// Funci贸n para mostrar registros
function MostrarRegistros($servidor, $bd_usuario, $bd_contrasenia, $basededatos, $tabla, $campos) {
// Si se conecta al servidor de base de datos
if ($link = mysql_connect($servidor, $bd_usuario, $bd_contrasenia)) {
// Si se selecciona la base de datos
if ($sel_bd = mysql_select_db($basededatos, $link)) {
// Hace el query por todos los campos
$result = mysql_query("SELECT $campos FROM $tabla", $link);
$contador = 0;
// Por cada registro encontrado guardarlo en el array
while ($row = mysql_fetch_row($result)) {
$array_devuelve = array($contador => array($row[$contador]));
array_push($array_devuelve[$contador], $row[$contador]);
$contador++;
}
return $array_devuelve;
}
// Si no se pudo seleccionar la base de datos
else {
// Mostrar el mensaje de error
return "Error al seleccionar la base de datos";
}
}
// Si no se puede conectar al servidor de base de datos
else {
// Mostrar el mensaje de error
return "Error al conectar con el servidor de base de datos";
}
}

Y con 茅ste c贸digo se muestran los datos:

$datos = MostrarRegistros("localhost", "root", "", "STUDIOCELIS", "CLIENTES", "NOMBRE,APELLIDO,TELEFONO");

while (list($id, $nombre, $apellido, $telefono) = each($datos)) {
echo "NOMBRE:".$nombre."<br>";
echo "APELLIDO:".$apellido."<br>";
echo "TELEFONO:".$telefono."<br>";
echo "---------------------------------------------<BR>";
}


脡sto devuelve simple y dolorosamente:

NOMBRE:Array
APELLIDO:
TELEFONO:
---------------------------------------------


La pregunta es obviamente: 驴qu茅 tengo que modificar para que funcione? En otras palabras, ser铆a reproducir lo que hace mysql_fetch_row (o mysql_fetch_array) pero a partir de los datos que devuelven esas funciones.

El pr贸ximo paso en la evoluci贸n de 茅sta funci贸n ser铆a crear una clase. De 茅sta manera se crear铆a una nueva clase con una variable (para conectarse a la base de datos) y luego se apuntar铆a la variable a la funci贸n de mostrar el registro especificando los campos y la tabla. Y para retamar, se crear铆an funciones para modificar, borrar y agregar registros... que ya las tengo hecha.

Ej:

$cnx = new Conectar("localhost", "root", "");
$cnx->MostrarRegistros("STUDIOCELIS", "CLIENTES", "NOMBRE,APELLIDO,TELEFONO");
Y luego se mostrar铆an los registros con otra funci贸n o con el while.

驴Es dif铆cil de implementar porque parece f谩cil o es f谩cil de implementar porque parece dif铆cil?

Muchas gracias,
Leo.

P.D.: me niego rotundamente a robarle c贸digo a phpnuke... adem谩s no lo encuentro.
*/