Foros del Web » Programando para Internet » PHP »

Conección a MySql mediante una función

Estas en el tema de Conección a MySql mediante una función en el foro de PHP en Foros del Web. Quisiera saber si es posible crear una función para poder generar la conección a la base de datos y no tener que duplicar el código ...
  #1 (permalink)  
Antiguo 13/08/2008, 10:40
Avatar de lyoung  
Fecha de Ingreso: noviembre-2005
Ubicación: Montevideo, la gran capit
Mensajes: 139
Antigüedad: 18 años, 5 meses
Puntos: 0
Conección a MySql mediante una función

Quisiera saber si es posible crear una función para poder generar la conección a la base de datos y no tener que duplicar el código cada vez que lo necesite.

Ya tengo un archivo con las funciones al que llamé funciones.php y lo llamo desde cada página mediante
Código PHP:
php require_once('funciones.php'); 
Mi idea es poner en ese archivo la siguiente función

Código PHP:
function conectar()
{
$hostname_base "localhost";
$database_base "Nombre_de_la_base";
$username_base "Usuario";
$password_base "Contrasenia";
$base mysql_pconnect($hostname_base$username_base$password_base) or trigger_error(mysql_error(),E_USER_ERROR); 

Y mis dudas son:
¿Es posible?
¿Cómo llamo a la función?
¿Tengo que generar un return?
¿Cual?

Desde ya, muchas gracias.
__________________
Todo se ve mejor si le miramos el lado positivo.
  #2 (permalink)  
Antiguo 13/08/2008, 10:59
Avatar de Mort20  
Fecha de Ingreso: junio-2008
Ubicación: Roca Casterly
Mensajes: 141
Antigüedad: 15 años, 11 meses
Puntos: 2
Respuesta: Conección a MySql mediante una función

Claro que es posible, para los links de enlace y eso para hacer querys tienes 2 opciones: o haces un return con el link, o en el mismo fichero de funciones tienes una variable global que va invocando cada función, y tienes una función para query y otra para cerrar.
Aún y así, yo te aconsejaría que en vez de funciones uses una clase, en sí es lo mismo pero te ahorras conflictos de nombres con las variables (me refiero a que si lo haces con funciones y tú link se llama $link, y por lo que sea lo incluyes en otro fichero que ya había una variable $link te chocará y puedes perder el enlace, esto con clases no podría pasarte) y así la puedes ampliar e incluso derivar otras clases de ella para hacer funciones más específicas.
__________________
Un Lannister siempre cumple sus promesas
  #3 (permalink)  
Antiguo 13/08/2008, 11:11
Avatar de lyoung  
Fecha de Ingreso: noviembre-2005
Ubicación: Montevideo, la gran capit
Mensajes: 139
Antigüedad: 18 años, 5 meses
Puntos: 0
Respuesta: Conección a MySql mediante una función

Vas a notar que soy un tanto novato en esto.
El hecho es que no entiendo mucho el funcionamiento de las clases.
Está claro que es una herramienta poderosa pero...

Si pudieras darme una pista, o al menos un link donde leer algo, pero que sea claro, ya que lo que he leido hasta ahora o no profundiza suficiente, o es tan técnico que se me escapa.

Gracias
__________________
Todo se ve mejor si le miramos el lado positivo.
  #4 (permalink)  
Antiguo 13/08/2008, 12:13
Avatar de Mort20  
Fecha de Ingreso: junio-2008
Ubicación: Roca Casterly
Mensajes: 141
Antigüedad: 15 años, 11 meses
Puntos: 2
Respuesta: Conección a MySql mediante una función

Yo sólo sé de clases en PHP la web oficial: www.php.net que tiene un manual que está bastante bien.
Más manuales no me sé porqué yo aprendí primero el C++, y me di cuenta que el PHP es casi igual salvo la variación de cómo enfocar tus programas, así que realmente no te puedo ayudar mucho en eso.
__________________
Un Lannister siempre cumple sus promesas
  #5 (permalink)  
Antiguo 13/08/2008, 13:23
Avatar de lyoung  
Fecha de Ingreso: noviembre-2005
Ubicación: Montevideo, la gran capit
Mensajes: 139
Antigüedad: 18 años, 5 meses
Puntos: 0
Respuesta: Conección a MySql mediante una función

Y ya es bastante.
veré en el sitio de php.
Muchas gracias.
__________________
Todo se ve mejor si le miramos el lado positivo.
  #6 (permalink)  
Antiguo 13/08/2008, 15:39
 
Fecha de Ingreso: julio-2008
Mensajes: 91
Antigüedad: 15 años, 10 meses
Puntos: 6
Respuesta: Conección a MySql mediante una función

Yo uso algo parecido en mis archivos de PHP, espero absolver tus dudas:

Cita:
¿Es posible:?
Si es posible, pero no necesariamente con una funcion

Cita:
¿Cómo llamo a la función?
Como dije no es necesario crear una funcion:
En tu archivo funciones.php escribe lo siguiente:
Código PHP:
<?php
$hostname_base 
"localhost"
$database_base "Nombre_de_la_base"
$username_base "Usuario"
$password_base "Contrasenia"
$base mysql_pconnect($hostname_base$username_base$password_base) or trigger_error(mysql_error(),E_USER_ERROR);  
?>
En tu archivo php, agregas al inicio funciones.php
Código PHP:
<?php
require_once('funciones.php'); 
?>
Y en tu consulta, agregas la variable de conexion a la sentencia SQL:
Código PHP:
<?php
$sql
=mysql_query("Select * from empleados"$base) or die ("Problemas en el select: ".mysql_error());
?>


Cita:
¿Tengo que generar un return?
No es necesario.

Cita:
¿Cual?
No.


Sobre las clases no se como seria, ademas como digo arriba no es necesario utilzar funciones o clases, es algo simple y funcional.


Saludos.
  #7 (permalink)  
Antiguo 14/08/2008, 01:46
 
Fecha de Ingreso: agosto-2008
Mensajes: 218
Antigüedad: 15 años, 8 meses
Puntos: 7
Respuesta: Conección a MySql mediante una función

Un apunte, si sólo vas a usar esa conexión para todo el proceso no hace falta que al ejecutar mysql_query() icluyas dicha conexión ya que por defecto se tomará la última que hayas realizado. en el caso contrario sí sería aconsejable hacerlo.
  #8 (permalink)  
Antiguo 14/08/2008, 13:17
Avatar de lyoung  
Fecha de Ingreso: noviembre-2005
Ubicación: Montevideo, la gran capit
Mensajes: 139
Antigüedad: 18 años, 5 meses
Puntos: 0
Respuesta: Conección a MySql mediante una función

raul_romero:
Gracias por tu aporte, es más probable que logre hacerlo así que con clases, (aunque tarde o temprano tendré que meter mano en el tema)
De todos modos, es algo parecido a lo que estoy haciendo, solo que tengo el código un tanto desprolijo y creo que ahí está el principio de mis problemas.

ilie:
Gracias también por tu apunte, creo que tengo que detallar la conexión ya que utilizo en el sitio dos conexiones diferentes.

Gracias a todos

P.D. Ya les contaré de mis logros (y nuevas dudas)
__________________
Todo se ve mejor si le miramos el lado positivo.
  #9 (permalink)  
Antiguo 14/08/2008, 14:42
 
Fecha de Ingreso: julio-2008
Mensajes: 91
Antigüedad: 15 años, 10 meses
Puntos: 6
Respuesta: Conección a MySql mediante una función

Cita:
Iniciado por ilie Ver Mensaje
Un apunte, si sólo vas a usar esa conexión para todo el proceso no hace falta que al ejecutar mysql_query() icluyas dicha conexión ya que por defecto se tomará la última que hayas realizado. en el caso contrario sí sería aconsejable hacerlo.

Gracias ilie, no sabia ese. Es algo que no habia visto antes.

Saludos...
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:30.