Foros del Web » Programando para Internet » PHP »

Funcion dentro de otra funcion...

Estas en el tema de Funcion dentro de otra funcion... en el foro de PHP en Foros del Web. Hola a todos: Tengo un prolemita a ver si me puede apoyar. Resulta que tengo un segmento de codigo el cual quiero que se repita ...
  #1 (permalink)  
Antiguo 19/06/2008, 11:07
Avatar de indy1508  
Fecha de Ingreso: mayo-2007
Ubicación: Monterrey, N.L. México.
Mensajes: 212
Antigüedad: 17 años
Puntos: 0
Pregunta Funcion dentro de otra funcion...

Hola a todos:

Tengo un prolemita a ver si me puede apoyar.

Resulta que tengo un segmento de codigo el cual quiero que se repita "n" numero de veces, lo primero que hice es que se ejecute una sola vez para checar resultados y todo sal bien. En ese segmento de codigo hago llamadas a varias funciones donde hago un enlace a la base de datos para extraer valores y retornarlos.

Ahora, una vez probado el codigo, lo pongo como otra función mas, y ahi es donde empiezan las broncas, al momento que hago la llamada a una funcion con enlace a la base de datos me envía este warning:

Cita:
Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in C:\Inetpub\wwwroot\ISR\solo_terr_result.php on line 21

Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in C:\Inetpub\wwwroot\ISR\solo_terr_result.php on line 23
Y la llamada que hago es:

Cita:
linea 21 mysql_select_db($base,$usuario);
linea 23 $inpc = mysql_query($query_inpc, $usuario) or die(mysql_error());
Como comento, estas lineas están dentro de una funcion, cuando hago el llamado de esta funcion desde otra funcion me marca el error, si quito la funcion y dejo el codigo en la parte de body trabaja sin ningun problema.
  #2 (permalink)  
Antiguo 19/06/2008, 11:31
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Funcion dentro de otra funcion...

Hola indy1508,

Es muy probable que sobre-escribas tu variable $usuario, y con eso rompes el link a la base de datos, te recomiendo analices muy bien tu código y veas que no estas usando $usuario para otra cosa que no sea el link de conexión a tu BDD.

Saludos.
  #3 (permalink)  
Antiguo 19/06/2008, 12:12
Avatar de indy1508  
Fecha de Ingreso: mayo-2007
Ubicación: Monterrey, N.L. México.
Mensajes: 212
Antigüedad: 17 años
Puntos: 0
Respuesta: Funcion dentro de otra funcion...

Hola GatorV:

Ya lo estuve checando e hice unos cambios:

Cita:
function busqueda_dato($valor)
{
mysql_select_db($database_isr, $isr);
// mysql_select_db($base,$usuario);
$query_tabla = "SELECT hasta, factor FROM tabla WHERE hasta = $valor";
$tabla = mysql_query($query_tabla, $isr) or die(mysql_error());
$row_tabla = mysql_fetch_assoc($tabla);
$totalRows_tabla = mysql_num_rows($tabla);

$valor2=$row_tabla['factor'];

mysql_free_result($tabla);
return $valor2;
}
Le pasé las variables de las conexciones directamente y ya no como variables de paso, pero me sigue marcando el mismo error tanto al seleccionar la base y en hacer el query.

Como comento, si el fragmento de codigo lo dejo en el body, trabaja bien, si lo meto en otra funcion es cuando hace esto.

Saludos.
  #4 (permalink)  
Antiguo 19/06/2008, 12:16
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Funcion dentro de otra funcion...

Hola indy1508,

Agrega global $isr; al principio de tu función para que tome las variables como globales.

Saludos.
  #5 (permalink)  
Antiguo 19/06/2008, 12:25
Avatar de indy1508  
Fecha de Ingreso: mayo-2007
Ubicación: Monterrey, N.L. México.
Mensajes: 212
Antigüedad: 17 años
Puntos: 0
Respuesta: Funcion dentro de otra funcion...

Hola GatorV:

Ya quedó, muchas gracias.

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 05:17.