Foros del Web » Programando para Internet » PHP »

Conexion mysql php, en funcion

Estas en el tema de Conexion mysql php, en funcion en el foro de PHP en Foros del Web. Hola hola, una duda grande Estoy conectando a mysql mediante php, tengo Desde el archivo "principal.php" hago dos include, conexion.php y funciones.php si hago un ...
  #1 (permalink)  
Antiguo 02/03/2011, 19:30
 
Fecha de Ingreso: febrero-2008
Mensajes: 56
Antigüedad: 16 años, 2 meses
Puntos: 1
Pregunta Conexion mysql php, en funcion

Hola hola, una duda grande
Estoy conectando a mysql mediante php, tengo

Desde el archivo "principal.php" hago dos include, conexion.php y funciones.php
si hago un query desde principal.php funciona bien (como se ve en el ejemplo), pero si llamo a una funcion la query falla por que no tiene la referencia a la conexion

Código PHP:
//principal.php
include 'conexion.php';
include 
'funciones.php';
$conn=conectar(); //funcion en conexion.php

$query1"SELECT * FROM tabla";
$res1 mysql_query($query1$conexion) or die(mysql_error());
// impreme resultado Correcto....

unaQuery(); //funcion en funciones.php 
Código PHP:
//conexion.php
function conectar(){
      
$conexion mysql_connect("localhost""usuario""clave");
      
mysql_select_db("demo"$conexion);
      return 
$conexion;

Código PHP:
//funciones.php
function unaQuery(){
$query2"SELECT * FROM tabla";
$res2 mysql_query($query1$conexion) or die(mysql_error());
//Error de conexion

Como puedo hacer que la conexion funcione tambien dentro del archivo funciones.php
o cual sera la manera mas optima de hacer este tipo de acciones (no usar las funciones por separado, conectar en la misma funcion, o cual otra solucion?)

Se que podria enviar la variable $conn a la funcion "unaQuery" como un parametro y utilizarla en el query de la funcion, pero eso no creo que sea lo optimo.
Debe existir una menra de hacer la conexion mas "global" y sin riesgo.

Porfavor una ayudita aca.
Saludos!!
  #2 (permalink)  
Antiguo 02/03/2011, 19:33
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Conexion mysql php, en funcion

Cita:
Se que podria enviar la variable $conn a la funcion "unaQuery" como un parametro y utilizarla en el query de la funcion, pero eso no creo que sea lo optimo.
Debe existir una menra de hacer la conexion mas "global" y sin riesgo
Al menos ahora, no se me ocurre nada mas que la solución expuesta por ti mismo. A menos que no pongas la conexión en funciones, deberás hacer eso.
  #3 (permalink)  
Antiguo 02/03/2011, 19:50
 
Fecha de Ingreso: febrero-2008
Mensajes: 56
Antigüedad: 16 años, 2 meses
Puntos: 1
Respuesta: Conexion mysql php, en funcion

Entonces seria la forma "optima"??
te parece que la conexion esta bien realizada (al hacer el return y asignarla a la variable $conn).

Cuando dices que "no ponga la conexion en funciones" te refieres a ?? (que no haga querys en funciones?)

graciaas
  #4 (permalink)  
Antiguo 03/03/2011, 08:16
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años
Puntos: 101
Respuesta: Conexion mysql php, en funcion

En principio, estas usando una variable $conexion dentro de la funcion y es cierto que no la estas pasando por parametro. Pero de cualquier manera no es necesario disponer del nombre de la coneccion, porque mysql_query puede usar la ultima coneccion disponible si no le pasas ninguna coneccion:

$res2 = mysql_query($query1) or die(mysql_error());
  #5 (permalink)  
Antiguo 03/03/2011, 08:37
Usuario no validado
 
Fecha de Ingreso: mayo-2005
Ubicación: Benicàssim
Mensajes: 56
Antigüedad: 18 años, 10 meses
Puntos: 0
Respuesta: Conexion mysql php, en funcion

Hola Zhampy!
Probaste cambiando el Include por requiere sólo para la función?

Etiquetas: conexion, funcion, mysql
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 16:00.