Foros del Web » Programando para Internet » PHP »

Include y funciones

Estas en el tema de Include y funciones en el foro de PHP en Foros del Web. Buenas esoty haciendo una web modular desde 0 y tengo la siguiente estructura. Archivo index.php (donde hago un include de un archivo llamado conf.php , ...
  #1 (permalink)  
Antiguo 17/06/2008, 14:28
 
Fecha de Ingreso: enero-2004
Ubicación: here I Am
Mensajes: 437
Antigüedad: 20 años, 3 meses
Puntos: 1
Include y funciones

Buenas esoty haciendo una web modular desde 0 y tengo la siguiente estructura.

Archivo index.php (donde hago un include de un archivo llamado conf.php , en el cual guardo variables diversas)

Entonces al archivo index.php le paso un parametro y cargo esa pagina / modulo dentro

Es decir http://url/index.php?mod=listarusuarios

Hasta aquí todo correcto , funciona perfecto.

Pero ahora he creado otro archivo llamado perfil.php y dentro tengo algo parecido a esto



Código PHP:
<?

function verPerfil($id)
{
//.....
}

function 
editarPerfil($id)
{
// ...
}


switch(
$op
{
case 
"ver":
    
verPerfil($id);
    break;
case 
"editar":
    
editarPerfil($id);
    break;
}

?>
Y llamo a esta pagina con algo parecido a esto

http://url/index.php?mod=perfil&op=editar&id=2 y me abre la pagina perfectamente

Lo que no me funciona es lo siguiente , en el archivo perfil.php dentro de las 2 funciones que tengo no puedo recuperar las variables que tengo en el archivo conf.php que he cargado previamente en el index.php

Espero vuestra ayuda

salu2 radge
__________________
Nuevo foro sobr el mundo del motor - Renault foro
http://www.renaultforo.com
  #2 (permalink)  
Antiguo 17/06/2008, 15:05
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Include y funciones

lo que pasa es que al asignar las variables en la raíz del script, (no dentro de funciones) se consideran de ámbito global.... para usarlas dentro de funciones/metodos debes usar la clausula global antes de usar la variable... solo una ves, antes de...

Código PHP:
$var 'foo';

function 
bar()
{
  global 
$var;
  echo 
$var;
}

bar(); // imprimiria "foo" 
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 17/06/2008, 15:15
 
Fecha de Ingreso: enero-2004
Ubicación: here I Am
Mensajes: 437
Antigüedad: 20 años, 3 meses
Puntos: 1
Respuesta: Include y funciones

Yo el archivo conf.php tengo esto

Código PHP:
$link mysql_connect("localhost""user","pass"); 
mysql_select_db("mi_bd"$link); 

$bd['server'] = "localhost";
$bd['user'] = "miusuario";
$bd['pass'] = "mipassword";
$bd['bd'] = "mi_bd"
Y en el archivo que os decia


Código PHP:
function verPerfil($id)
{
// aqui dentro quiero usar por ejemplo
// la variable $link para crear conexiones mysql
}

function 
editarPerfil($id)
{
// ...

__________________
Nuevo foro sobr el mundo del motor - Renault foro
http://www.renaultforo.com
  #4 (permalink)  
Antiguo 17/06/2008, 15:20
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Include y funciones

apoco mi ejemplo no es claro???

y no se porque pierdes tu tiempo copiando tus scripts, en ves de entender lo que explique.... es muy simple

Código PHP:
function verPerfil($id)
{
// pues si la quieres usar aca... usa global :|
global $link;

// y ya.... a usarla!!!

PDTA: sin palabras
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 17/06/2008, 15:21
 
Fecha de Ingreso: enero-2004
Ubicación: here I Am
Mensajes: 437
Antigüedad: 20 años, 3 meses
Puntos: 1
Respuesta: Include y funciones

Cita:
Iniciado por pateketrueke Ver Mensaje
apoco mi ejemplo no es claro???

y no se porque pierdes tu tiempo copiando tus scripts, en ves de entender lo que explique.... es muy simple

Código PHP:
function verPerfil($id)
{
// pues si la quieres usar aca... usa global :|
global $link;

// y ya.... a usarla!!!

PDTA: sin palabras
Gracias no entendí tu otro mensaje !!!

Ahora si gracia s!
__________________
Nuevo foro sobr el mundo del motor - Renault foro
http://www.renaultforo.com
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 21:03.