Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/08/2004, 10:31
Avatar de Kriminal
Kriminal
 
Fecha de Ingreso: julio-2004
Ubicación: Buenos Aires
Mensajes: 19
Antigüedad: 19 años, 10 meses
Puntos: 0
header("location: ... no funciona

Gente:
Tengo un problema cuando quiero redirigir con header("location
En mi servidor de prueba (localhost) funciona perfecto, pero en la ubicación remota se queda la página en blanco y no hace nada. Probé subir un archivo que solamente tuviera header("location:www.google.com") y funciona perfecto, así que el error está en el script; pero no puedo encontrarlo.
Ya leí toda la documentación en estos foros, y no encuentro que nadie haya tenido un problema similar. Les copio parte del código, a ver si pueden ver algo raro
¿Hay alguna configuración en el php.ini que se deba realizar? Más allá de que no pueda modificar la configuración del php remoto, sabiendo que es quizás puede encontrar una forma de salvar el error.

El sistema usa templates, con TemplatePower, pero el resto de las páginas me funciona bien; así que no viene por ahí.
Otra cosa que probé es poner a mano la url de destino en el navegador, y también funciona.

Código PHP:

<?php
global $db;

$tpl = new TemplatePowerTEMPLATES."examenes.tpl" );
$tpl->prepare();

$tpl->assign"TITULO""Exámenes Online" );

$p $_GET['p'];

switch(
$p){

default:
        
session_write_close ();
        
header("location:$PHP_SELF?s=examenes&p=login");
        exit;
        break;

case 
login:
        
session_start();
        
$tpl->assign"SUBTITULO""Ingreso" );
        
$tpl->assign"TEXTO""Por favor, ingrese el nombre de usuario y la contraseña para continuar.");
        
$tpl->newBlock"login" );
        if (
$_POST['logon']==1){
        if (
$_POST['usuario']==""$msg "Debe completar el nombre de usuario";
        elseif (
$_POST['password']==""$msg "Debe completar la contraseña";
        else{
            
$usuario trim(strtolower($_POST['usuario']));
            
$password trim(strtolower($_POST['password']));
            
$nivelingreso($usuario$password);
            switch(
$nivel){
            case 
0$msg ="Usuario no existente"; break;
            case 
1$msg ="La contraseña es incorrecta"; break;
            default: 
$_SESSION['nivel'] = $nivel;
                     
session_write_close ();
                     
header("location:$PHP_SELF?s=examenes&p=i");
                     exit;
                     break;
          }
        }
        
$tpl->assign"NIVEL"$msg );
        }
break;
Desde ya, muchísimas gracias !

Última edición por Kriminal; 17/08/2004 a las 10:34