Con esta clase de php, te facilitará la tarea de conectarte a las bases de datos, resumiendo en unas pocas líneas de código la interconexión con la base de datos en mysql. La forma de uso es la siguiente:
//Parametros del constructor: host, user, pass, tabla
$bd = new datos("localhost","root","","bd");
//la función obtener uno extrae un string directamente con el primer resultado
$string = $bd->obtenerUno("SELECT MAX(columna) FROM tabla");
//La función obtener devuelve una matriz de mysql
$matriz = $bd->obtener("SELECT columna FROM tabla");
while($fila = mysql_fetch_array($matriz))
{
echo "
".$fila['columna'];
}
//La función insertar es para insertar o editar columnas, devuelve el numero de filas afectadas
$filasAfectadas = $bd->insertar("INSERT INTO tabla VALUES ('a','b')");
La clase de php en cuestión es la siguiente:
class datos
{
/* Clase de conexion a bases de datos con php
Creado por johandebruin.com en 02-01-2010 */
private $server;
private $user;
private $pass;
private $bd;
//Funcion generica que devuelve una conexion a la BD
private function conectar()
{
$idConexion = mysql_connect($this->server,$this->user,$this->pass)
or die("No fue posible conectar con la base de datos, intentelo más tarde");
mysql_select_db($this->bd,$idConexion);
@mysql_query("SET NAMES 'utf8'");
return $idConexion;
}
//Establecemos los parametros
public function __construct($servidor,$usuario,$contra,$baseDatos)
{
$this->server = $servidor;
$this->user = $usuario;
$this->pass = $contra;
$this->bd = $baseDatos;
}
//Obtenemos una matriz de datos, false si no existen
public function obtener($consulta)
{
$idConexion = $this->conectar();
$datos = mysql_query($consulta,$idConexion);
mysql_close($idConexion);
if (@mysql_num_rows($datos) < 1)
return false;
return $datos;
}
//Obtenemos un solo resultado, o en su mayorecto el primero, false en su defecto
public function obtenerUno($consulta)
{
$idConexion = $this->conectar();
$datos = mysql_query($consulta,$idConexion);
mysql_close($idConexion);
if (@mysql_num_rows($datos) < 1)
return false;
return mysql_result($datos,0,0);
}
//Devuelve el numero de filas afectadas
function insertar($consulta)
{
$idConexion = $this->conectar();
$respuesta = mysql_query($consulta,$idConexion);
$i = mysql_affected_rows($idConexion);
mysql_close($idConexion);
return $i;
}
}
?>
No Comments