FUNCIONES PARA BASES DE DATOS.Una
Base de Datos es una herramienta que permite almacenar informacion y gestionar dicha informacion mediante algun gestor de base de datos, alguna aplicacion o directamente mediante funciones especificas de algun lenguaje de programacion.
Las bases de datos estan conformadas por tablas, estas a su vez contienen campos los cuales guardan informacion en cada campo segun el tipo de campo, existen diversion tipos de campos, algunos podrian se: Cierto numero de caracteres (varchar), texto (text), numeros cortos (int), numeros grandes (bigint), etc, etc.. Estos valores pueden ser insertados, actualizados o eliminados, de igual forma se pueden realizar busquedas extensas o cortas mediante algun campoa que coincida con una muestra o una determinada palabra.
INTRODUCCION.Las funciones que se mostraran a continuacion presentan principalmente varios valores establecidos por defecto, los cuales son
Variables Definidas, estas variables podran ser utilizadas en cualquier parte del codigo fuente que realizemos y pueden ser utilizadas con toda confianza, ya que estas variables estaran solo a disposicion de nuestro interprete PHP y jamas para el usuario que esta realizando consultas, busquedas o bien navegando en nuestro sitio web.
Tambien es importante saber cual es la configuracion que posee nuestro servicio php (php.ini), ya que estas funciones trabajan en la siguiente configuracion de php:
Las
Variables Definidas que utilizaremos son:
variable_username,
variable_password,
variable_base y
variable_hosting, estas variables sirven para conectarse (username, password) a una base de datos del host (hosting) y utilizar una Base de Datos (base) en especifico.
Conexion a la Base de Datos.Esta funcion nos permite conectarnos a una base de datos (ya establecida) utilizando 4
variables definidas que son:
- SERVER
Variable definida que posee la direccion del hosting. - BASE_USR
Variable definida que posee el nombre de usuario para conectarse a la base de datos. - BASE_PASS
Variable definida que posee el password para conectarse a la base de datos. - BASE
Variable definida que posee el nombre de la base de datos a utilizar.
Una vez realizada la llamada a esta funcion, realizara la conexion al hosting, seleccionara la base de datos y retornara el enlace de conexion ($link) para manipular nuestra base de datos.
Por lo general muchos programadores optan por hacer la llamada directamente cada vez antes que quieran manipular la base de datos, pero en este caso (en mis funciones), no se realizaran llamadas a
conectar() directamente por nosotros, sino que nos dedicaremos unicamente a realizar la llamada a la funcion de manipulacion a la base de datos (insertar, actualizar, eliminar, listar, etc...) y que esta misma funcion realize la llamada a
conectar() para ahorrar codigo
.
//realiza conexion a la Base de Datos
function conectar()
{
if( !($link= mysql_connect( "". SERVER
. "", "". BASE_USR
. "", "". BASE_PASS
. "" )) ) {
echo "<span id=\"letras_error\">Error 01: Error para Conectarse a MySQL.<br>";
echo "Error en Usuario y/o Contraseña.<br>";
$link= "INSTALL";
}
{
echo "<span id=\"letras_error\">Error 02: Problemas para Tomar la Base de Datos.<br>";
echo "No se Encuentra la Base de Datos.<br>";
$link= "INSTALL";
}
return $link;
}
Inserciones.Ya que conocimos la funcion de
conectar(), nos centraremos en la funcion de
insertar.
Esta funcion nos servira para insertar datos a una tabla de la base de datos, utiliza dos argumentos los cuales son:
- $base
Es del tipo caracteres (char) y posee el nombre de la tabla que vamos a manipular. - $valores
Es un arreglo (array), el cual recorre para divir su contenido en dos variables mas: $vars (variables o campos) y $datos (contenido que se les insertara a los campos)
Para llamar eficasmente a esta funcion, es necesario primero generar un arreglo con los campos y valores que contendra cada campo, despues realizar la llamada pasandole como argumento el nombre de la base de datos y el arreglo, en caso de
error retorna un 0 .
//insercion de valores a una tabla
function insertar_bdd( $base_t, $valores )
{
$link= conectar();
if( count($valores)>0 ) //entonces existen valores en el array {
$vars="";
$datos="";
$i=0;
{
$i++;
$vars .= $a;
$datos .= $b;
if( $i!=count($valores) ) {
$datos .= ", ";
$vars .= ", ";
}
}
if( !($resp= mysql_query( "insert into ". $base_t. " ( ". $vars. " ) values( ". $datos. " );", $link )) ) {
echo "<span id=\"letras_error\">Error 03: Problema para Realizar Movimiento/Consulta.";
}
else
{
return $resp;
}
}
else
echo "<span id=\"letras_error\">Error 04: Problema para descifrar Datos para Realizar Consulta.</span>";
return "ERROR";
}
Este es un ejemplo de implementacion en codigo:
"nombre"=>"juan",
"edad"=>"20",
"sexo"="desconocido" );
if( !insertar_bdd( "AGENDA", $trama )
echo "<br>Error al Insertar";
else echo "<br>Datos insertados con exito.";
Actualizaciones.Esta funcion nos permitira actualizar datos de una tabla de la base de datos, utiliza dos argumentos los cuales son:
- $base
Es del tipo caracteres (char) y posee el nombre de la tabla que vamos a manipular. - $valores
Es un arreglo (array), el cual recorre para divir su contenido en dos variables mas: $vars (variables o campos) y $datos (contenido que se les insertara a los campos)
Para llamar eficasmente a esta funcion, es necesario primero generar un arreglo con los campos y valores que contendra cada campo, despues realizar la llamada pasandole como argumento el nombre de la base de datos y el arreglo, en caso de
error retorna un 0 .
Tambien es importante tomar muy en cuenta el primer valor del arreglo, ya que este valor no sera actualizado, sino que se utilizara como valor para identificar el campo de la tabla que se actualizara.
//actualizar valores existentes de un campos de la tabla
function actualizar_bdd( $base_t, $valores )
{
$link= conectar();
if( count($valores)>0 ) //existen valores en el array {
$condicion= "";
$datos="";
$i=0;
{
$i++;
if( $i==1 )
$condicion .= $a. "=". $b;
else
{
$datos .= $a. "=". $b;
if( $i!=count($valores) ) $datos .= ", ";
}
}
if( !($resp= mysql_query( "update ". $base_t. " set ". $datos. " where ". $condicion. ";", $link )) ) {
echo "<span id=\"letras_error\">Error 03: Problema para Realizar Movimiento/Consulta.";
}
else
{
return $resp;
}
}
else
echo "<span id=\"letras_error\">Error 04: Problema para descifrar Datos para Realizar Consulta.</span>";
return "ERROR";
}
Este es un ejemplo de implementacion en codigo:
"ID"=>"'4'",
"nombre"=>"juan",
"edad"=>"20",
"sexo"="desconocido" );
if( !actualizar_bdd( "AGENDA", $trama )
echo "<br>Error al Actualizar";
else echo "<br>Datos insertados con exito.";
Eliminacion.Esta funcion nos permitira eliminar datos de una tabla de la base de datos, utiliza dos argumentos los cuales son:
- $base
Es del tipo caracteres (char) y posee el nombre de la tabla que vamos a manipular. - $valores
Es un arreglo (array), el cual recorre para divir su contenido en dos variables mas: $vars (variables o campos) y $datos (contenido que se les insertara a los campos)
Para llamar eficasmente a esta funcion, es necesario primero generar un arreglo con los campos y valores que contendra cada campo, despues realizar la llamada pasandole como argumento el nombre de la base de datos y el arreglo, en caso de
error retorna un 0 .
Tambien es importante tomar muy en cuenta que solo es necesario un valor para eliminar de la base de datos, y para tener una mayor eficacia, se recomienda siempre utilizar valores
unicos que ningun usuario pueda repetir, esto son valores de
identificacion (ID).
//elimina una celda de la tabla
function eliminar_bdd( $base_t, $valores )
{
$link= conectar();
if( strchr( $valores, "=" ) ) //si existe el : tons ahi mas de 1 valor {
$resp= mysql_query( "select * from ". $base_t. " where ". $valores. ";", $link ); return 0;
if( !(mysql_query( "delete from ". $base_t. " where ". $valores. ";", $link )) ) {
echo "<span id=\"letras_error\">Error 03: Problema para Realizar Movimiento/Consulta.";
}
else
{
return 1;
}
}
else
echo "<span id=\"letras_error\">Error 04: Problema para descifrar Datos para Realizar Consulta.</span>";
return 0;
}
Este es un ejemplo de implementacion en codigo:
if( !eliminar_bdd( "AGENDA", "ID=5" )
echo "<br>Error al Eliminar";
else echo "<br>Datos insertados con exito.";