Foros del Web » Programando para Internet » PHP »

problema con variables

Estas en el tema de problema con variables en el foro de PHP en Foros del Web. Hola a todos vereis tengo un problema a la hora de usar variables para saber que valor meter en el include (tipica pagina con includes). ...
  #1 (permalink)  
Antiguo 05/10/2006, 16:04
 
Fecha de Ingreso: octubre-2005
Mensajes: 10
Antigüedad: 18 años, 6 meses
Puntos: 0
problema con variables

Hola a todos
vereis tengo un problema a la hora de usar variables para saber que valor meter en el include (tipica pagina con includes). El caso es que en el servidor que tengo alojada la pagina funciona bien, pero en un IIS + php casero me da errores como que las variables no estan definidas y en un linux casero la pagina por defecto me la carga correctamente, solo que al hacer click en el menu que manda las variables al index para saber que página tiene que cargar, sigue cargando la pagina por defecto.
¿que opinais de esto? sabeis a que puede ser debido?

Un saludo

pd:por supuesto las paginas del servidor y las que yo he probado en casa son las mismas, no tienen diferencia de codigo
  #2 (permalink)  
Antiguo 05/10/2006, 16:28
Avatar de mauled  
Fecha de Ingreso: marzo-2005
Ubicación: Cd. de México.
Mensajes: 3.001
Antigüedad: 19 años, 1 mes
Puntos: 33
Si pudieras postear el código , te lo agradeceria mucho. De esta forma se podra observar cual es el problema con la declaración de las variables y se te podra proponer una mejor solución.

Saludillos.
  #3 (permalink)  
Antiguo 06/10/2006, 02:27
 
Fecha de Ingreso: octubre-2005
Mensajes: 10
Antigüedad: 18 años, 6 meses
Puntos: 0
por ejemplo en el index
<?php
switch ($pag)
{
case "jefe":
include ("includes/secciones/jefe.php");
break;
case "horoskopo":
include ("includes/secciones/horoskopo.php");
break;
?>

y las variables las mando asi
<a href="index.php?pag=jefe">
¿alguna idea? en el servidor que estan alojado funciona, pero en los que me monto yo me salenlos errores que comente anteriormente
Un saludo
  #4 (permalink)  
Antiguo 06/10/2006, 08:55
Avatar de mauled  
Fecha de Ingreso: marzo-2005
Ubicación: Cd. de México.
Mensajes: 3.001
Antigüedad: 19 años, 1 mes
Puntos: 33
Pues seguramente en tu php.ini tienes lo siguiente:

Código:
register_globals = Off
Te recomiendo que por seguridad y por una mejor programación lo dejes asi. Para cachar el valor de pag tienes que hacer lo siguiente

Código PHP:
$pag $_get['pag'];
switch (
$pag)
{
case 
"jefe":
include (
"includes/secciones/jefe.php");
break;
case 
"horoskopo":
include (
"includes/secciones/horoskopo.php");
break;

Saludillos.
  #5 (permalink)  
Antiguo 06/10/2006, 09:00
Avatar de ZydRick  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 750
Antigüedad: 19 años, 2 meses
Puntos: 4
Solo para no crear confusion en los usuarios, decir ke las variables superglobales como $_POST, $_GET, $_SERVER, etc. deben estar siempre escritas en mayusculas, entonces la primera linea del codigo ke postea nuestro amigo mauled deberia kedar asi:

Código PHP:
$pag $_GET['pag']; 
Saludos
  #6 (permalink)  
Antiguo 06/10/2006, 09:07
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 4 meses
Puntos: 89
Un alcance... Es algo que hago yo... Pues me acomoda...

Código PHP:
$get $_GET;
$pag $get['pag']; 
Pues quizá no es relevante, ni importante, pero me acomoda bastante :)
  #7 (permalink)  
Antiguo 06/10/2006, 17:27
 
Fecha de Ingreso: octubre-2005
Mensajes: 10
Antigüedad: 18 años, 6 meses
Puntos: 0
Ok gracias lo probare y posteare el resultado por si alguna vez alguien tiene el mismo problema. Por cierto, que no tengo ningun php.ini
Un saludo
  #8 (permalink)  
Antiguo 07/10/2006, 05:09
 
Fecha de Ingreso: octubre-2005
Mensajes: 10
Antigüedad: 18 años, 6 meses
Puntos: 0
Muchas gracias, al poner $pag = $_GET['pag']; ya funciona todo correctamente. Un saludo
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 22:35.