La idea es fácil: centralizar todas las
consultas a MySQL en una función que pueda
generar informes y
detectar errores.
Las ventajas que ofrece son varias:
- Si una consulta o conexión a MySQL falla, se envia un informe por email al administrador del sitio (configurable).
- Evita mostrar mensajes de error de PHP en pantalla (por seguridad)
- Informa del tiempo que tarda en realizarse una consulta
- Implementación sencilla
Un Ejemplo:include 'class.db.php'; // incluimos la clase
// datos de conexión a mysql
$array = array("localhost","root","12345","web");
// creamos la conexión
db::con($array);
// hacemos una consulta
db::query("SELECT * FROM noticias");
// voilá...
echo mysql_num_rows(db::$sql);
El metodo
db::con
se encarga de crear la conexión. Debemos indicarle los datos de conexión y lo podemos hacer de tres modos distintos:
- Un array con los datos (tal y como se ve en el ejemplo)
- Podemos pasar por separado los 4 valores de conexión
db::con($server,$user,$pass,$db_name);
- O podemos pasar directamente una conexion ya existente: la declaramos (
$mysql_con = mysql_connect([...]);)
y creamos con ella el objeto db::con($mysql_con);
El método
db::query("SELECT * FROM noticias")
realiza la consulta, devuelve
false
si no hubo éxito o bien o bien una variable de tipo
resource
con la consulta. En el ejemplo podríamos haber empleado otra forma:
$sql = db::query([...]);
que nos hubiera permitido trabajar directamente con la variable
$sql
y hacer cosas como esta:
$result = mysql_fetch_assoc($sql);
Visita el projecto en Google Code
y esto? ...
ResponderEliminar