Foros del Web » Programando para Internet » PHP »

No se por que me da el error

Estas en el tema de No se por que me da el error en el foro de PHP en Foros del Web. Hola amigos. Estoy poniendo el siguiente script en mi página web, que es un webmail llamado OneFile, le pones tu nombre de usuario, servidor y ...
  #1 (permalink)  
Antiguo 08/10/2008, 15:45
 
Fecha de Ingreso: octubre-2008
Mensajes: 13
Antigüedad: 15 años, 6 meses
Puntos: 0
No se por que me da el error

Hola amigos. Estoy poniendo el siguiente script en mi página web, que es un webmail llamado OneFile, le pones tu nombre de usuario, servidor y password y puedes checar tu correo dese esta página. El código está disponible en sinsamexico.com/codigo_original.txt (el sistema no me dejo ponerlo aqui porque son demasiados caracteres)

Mi problema es que no quiero que esta página esté disponible para usuarios no registrados, por lo que al igual que las demás páginas del sitio, encierro el código en este sencillo script:

Código:
if(session_is_registered("valid_user")) {

//AQUI PONGO EL CONTENIDO

}
else
{
echo '<p>ERROR: No has ingresado al sistema</p>';
}
Con lo que obtengo este nuevo código sinsamexico.com/codigo_nuevo.txt

El problema es que ahora me da este error:

Fatal error: Call to undefined function: getheadervalue() in /home/xxx/yyy/zzz/mail.php on line 333

Entiendo mas o menos cual es el error, pero no se como mover la funcion de lugar sin modificar el funcionamiento del código o como se puede hacer para que la reconozca, ¿Qué me sugieren hacer?

Gracias por su ayuda
  #2 (permalink)  
Antiguo 08/10/2008, 15:56
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Respuesta: No se por que me da el error

donde esta la funcion, la podria poner en un require() al principio del code si la funcion esta en otro archivo
  #3 (permalink)  
Antiguo 08/10/2008, 17:06
 
Fecha de Ingreso: octubre-2008
Mensajes: 13
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: No se por que me da el error

Cita:
Iniciado por jaronu Ver Mensaje
donde esta la funcion, la podria poner en un require() al principio del code si la funcion esta en otro archivo
Gracias jaronu pero la función está en el mismo archivo, dentro del if de este script:

if(session_is_registered("valid_user")) {

//AQUI PONGO EL CONTENIDO QUE TIENE LA FUNCION Y AQUI MISMO LO LLAMO

}
else
{
echo '<p>ERROR: No has ingresado al sistema</p>';
}

¿Alguna idea? Muchas gracias
  #4 (permalink)  
Antiguo 08/10/2008, 17:33
 
Fecha de Ingreso: febrero-2006
Ubicación: Quito
Mensajes: 68
Antigüedad: 18 años, 2 meses
Puntos: 0
Respuesta: No se por que me da el error

Que tal amigo si estas utilizando php 5 utiliza

if($_SESSION['valid_user'])




Espero te sirva
Saludos
Fernando
  #5 (permalink)  
Antiguo 08/10/2008, 18:24
 
Fecha de Ingreso: octubre-2008
Mensajes: 13
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: No se por que me da el error

Muchas gracias Fernando pero eso no quita el error.

No se que hacer! Saludos
  #6 (permalink)  
Antiguo 08/10/2008, 19:30
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: No se por que me da el error

Hola yenssen,

Mmmm muy raro, prueba mover todas las funciones al principio de tu código, aunque no es necesario, es muy raro que te de el error si la función esta definida en tu clase...

Saludos.
  #7 (permalink)  
Antiguo 14/10/2008, 15:22
 
Fecha de Ingreso: octubre-2008
Mensajes: 13
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: No se por que me da el error

gracias GatorV al final puse el script en un include dentro de un directorio protegido y funcionó. Quedó de esta manera:

if(session_is_registered("valid_user")) {

include ("carpeta_protegida/archivo.php");

}
else
{
echo '<p>ERROR: No has ingresado al sistema</p>';
}
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:30.