PHP - Error al usar el header, AYUDA!!!

 
Vista:

Error al usar el header, AYUDA!!!

Publicado por Daniel Mendez (11 intervenciones) el 11/06/2007 15:23:49
Holass, mi problema es que necesito abrir una página despues de llenar un formulario con nomuser y password, mi codigo es el siguiente:

<?php
if ($nomadmin == ""){?>
<p align="center" class="Estilo2"><?php echo "Digite el nombre de usuario del Administrador.";?></p><?php
}else{
if ($pswadmin == ""){?>
<p align="center" class="Estilo2"> <?php echo "Digite la contraseña del Administrador.";?></p><?php
}else{
$link = mysql_connect("localhost", "root", "1234");
mysql_select_db("mensaje", $link);
$nomadm = mysql_query("SELECT nombre from root", $link);
$passadm = mysql_query("SELECT passwrd from root", $link);
$na = mysql_fetch_row($nomadm);
$pa = mysql_fetch_row($passadm);
if ($na[0] == $nomadmin){
if ($pa[0] == $pswadmin){
$pa[0] = "";
$pa[1] = "";
echo "Listos, se cumple esta condicion";

header ("Location: ./menuprincipal.php");

}else{?>
<p align="center" class="Estilo2"> <?php echo "Nombre de usuario o contraseña incorrecta, reintente.";?></p><?php
}
}else{?>
<p align="center" class="Estilo2"> <?php echo "Nombre de usuario o contraseña incorrecta, reintente.";?></p><?php
}
}
}
?>

El error que se genera es el siguiente:
Warning: Cannot modify header information - headers already sent by (output started at C:\AppServ\www\IEJEG\Paginas\Administradorc.php:5) in C:\AppServ\www\IEJEG\Paginas\Administradorc.php on line 74

Porfavor si me pueden ayudar de inmediato, mucho mejor. Porfa expliquenmen con plastilina para que pueda entender bien. Gracias!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Error al usar el header, AYUDA!!!

Publicado por Jaterli (48 intervenciones) el 11/06/2007 15:38:49
La función header se ejecuta cuando ya se han mandado datos en la respuesta al cliente, por tanto, si escribiste algo en el documento con un echo u otra función, header te dará error.

Elimina los echo anteriores al header() y asegurarse que no se esta mandando el contenido de la pagina antes de enviarse todas las headers correspondientes.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Otravez yo para Jaterli

Publicado por Daniel Mendez (11 intervenciones) el 11/06/2007 15:42:46
Como vez en el codigo, me aseguro de no tener ningun echo o algun otro dato que se envie antes del header.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Otravez yo para Jaterli

Publicado por Jaterli (48 intervenciones) el 11/06/2007 15:49:47
Hay varias lineas de código que estan provocando el error. Puede que las primeras al estar condicionadas por if() sean descartadas y no afecten al header() pero si está afectando el echo "Listos, se cumple esta condicion";

A continuación te pongo las líneas que pienso están afectando:

<p align="center" class="Estilo2"><?php echo "Digite el nombre de usuario del Administrador.";?></p>

<p align="center" class="Estilo2"> <?php echo "Digite la contraseña del Administrador.";?></p><?php

echo "Listos, se cumple esta condicion";

header ("Location: ./menuprincipal.php");
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Otravez yo para Jaterli

Publicado por Daniel Mendez (11 intervenciones) el 11/06/2007 15:56:19
Ya comentarie todos los echo pero de todos modos me sigue generando error.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Otravez yo para Jaterli

Publicado por Jaterli (48 intervenciones) el 11/06/2007 16:01:52
Sustituye header ("Location: ./menuprincipal.php"); por echo "Aqui va el header()";
Delante de "Aquí va el header"; no debería mostrarte nada. Si se imprime algo, ahí está el error.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Otravez yo para Jaterli

Publicado por Daniel Mendez (11 intervenciones) el 11/06/2007 16:13:40
lo sustitui
//header ("Location: menuprincipal.php");
echo "Aqui va el header()";
Si me imprime pero no entiendo el error
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Otravez yo para Jaterli

Publicado por Jaterli (48 intervenciones) el 11/06/2007 16:15:12
vuelve a pegarme el código tal como lo tienes ahora, con los echo comentados, a ver si hay algo que se te haya escapado.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Otravez yo para Jaterli

Publicado por Daniel Mendez (11 intervenciones) el 11/06/2007 16:18:21
<?php

if ($nomadmin == ""){?>
<p align="center" class="Estilo2"><?php /*echo "Digite el nombre de usuario del Administrador.";*/?></p><?php
}else{
if ($pswadmin == ""){?>
<p align="center" class="Estilo2"> <?php /*echo "Digite la contraseña del Administrador.";*/?></p><?php
}else{

$link = mysql_connect("localhost", "root", "1234");

mysql_select_db("mensaje", $link);

$nomadm = mysql_query("SELECT nombre from root", $link);

$passadm = mysql_query("SELECT passwrd from root", $link);

$na = mysql_fetch_row($nomadm);

$pa = mysql_fetch_row($passadm);

if ($na[0] == $nomadmin){

if ($pa[0] == $pswadmin){

$pa[0] = "";

$pa[1] = "";

//$sql = "UPDATE root SET passwrd='$clavenueva' WHERE passwrd='$claveanterior'";

//echo "listojjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjs";
echo "Aqui va el header()";
//header ("Location: menuprincipal.php");

//header("Location: http://www.example.com/");

}else{?>

<p align="center" class="Estilo2"> <?php /*echo "Nombre de usuario o contraseña incorrecta, reintente.";*/?></p><?php

}

}else{?>

<p align="center" class="Estilo2"> <?php /*echo "Nombre de usuario o contraseña incorrecta, reintente.";*/?></p><?php
}
}
}
?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Otravez yo para Jaterli

Publicado por Daniel (11 intervenciones) el 11/06/2007 16:36:49
ke paso??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Otravez yo para Jaterli

Publicado por Jaterli (48 intervenciones) el 11/06/2007 16:52:57
No lo veo y tampoco puedo hacer aquí las pruebas oportunas.
Si el error del header es el primero que aparece en la página dale a "ver código fuente de la página" y asegurate de que antes de la impresion del error no aparece ningún texto ni directiva html, ya que cualquier texto que se imprima por pantalla impide que se envien las cabeceras (el header).
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Otravez yo para Jaterli

Publicado por Daniel (11 intervenciones) el 11/06/2007 17:00:23
Bueno, pues muchas gracias de todos modos. chauuiiii
Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar