Foros del Web » Programando para Internet » PHP »

Warning: Cannot modify header information - headers already sent by (output started a

Estas en el tema de Warning: Cannot modify header information - headers already sent by (output started a en el foro de PHP en Foros del Web. Hola: Tengo un problema: Estoy tratando de hacer que cuando un usuario coloque el usuario y contraseña correctos te mande a la página de resultados. ...
  #1 (permalink)  
Antiguo 17/01/2013, 10:18
 
Fecha de Ingreso: diciembre-2008
Mensajes: 738
Antigüedad: 16 años
Puntos: 15
Warning: Cannot modify header information - headers already sent by (output started a

Hola:

Tengo un problema:

Estoy tratando de hacer que cuando un usuario coloque el usuario y contraseña correctos te mande a la página de resultados. Pero en el hosting que tengo (En localhost funciona bien) me tira este error.

Este es el código que estoy usando. ¿Qué tengo que hacer?

Saludos

Código PHP:
Ver original
  1. <?php
  2. ?>
  3. <?php include ('connect.php'); ?>
  4. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  5. <html xmlns="http://www.w3.org/1999/xhtml">
  6. <head>
  7. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  8. <link href="style.css" rel="stylesheet" type="text/css" />
  9. <title>Historial de Compras</title>
  10. <style>
  11.     #contenido{
  12.         width:700px;
  13.         margin:0 auto;
  14.     }
  15. </style>
  16. </head>
  17.  
  18. <body>
  19. <div id="cabezal">
  20.         <div id="logo">
  21.         </div>
  22.     </div>
  23. <div id="contenido">
  24.     <h1>Ingresa tus datos</h1>
  25.         <?php
  26.             $aceptar=$_POST['aceptar'];
  27.             if ($aceptar=="") // SI EL BOTON DE ACEPTAR NO HA SIDO PRESIONADO
  28.              {
  29.         ?>  
  30.         <form method="post" action="<?php $PHP_SELF ?>">
  31.         Usuario: <br /><input type="text" name="login"> <br>
  32.         Password: <br /><input type="password" name="password"><br>
  33.        <input type="submit" name="aceptar" value="aceptar">&nbsp&nbsp
  34.        <input type="reset" name="borrar" value="Borrar">
  35.         </form>
  36.        
  37.         <?php
  38.           } // CERRAMOS EL IF($ACEPTAR=="" )
  39.           else // EN CASO CONTRARIO, EN EL QUE SE HAYA PRESIONADO ACEPTAR
  40.           {
  41.             //password
  42.             $login=$_POST['login'];
  43.             $password=$_POST['password'];
  44.             $encriptado=md5($password);
  45.             $nombre = "cong13cruz";
  46.             $contraseña = md5("daridaiaa1");
  47.                 if (($nombre!=$login)||($contraseña!=$encriptado)) {
  48.         ?>
  49.         <h2>Alguno de los datos que ingresaste es incorrecto</h2>
  50.        
  51.         <form method="post" action="<?php $PHP_SELF ?>">
  52.         Usuario: <br /><input type="text" name="login"> <br>
  53.         Password: <br /><input type="password" name="password"><br>
  54.  
  55.        <input type="submit" name="aceptar" value="aceptar">&nbsp&nbsp
  56.        <input type="reset" name="borrar" value="Borrar">
  57.         </form>
  58.        
  59.         <?php  
  60.                 } else {
  61.                     $_SESSION['login']=$login;
  62.                     $_SESSION['password']=$encriptado;
  63.                     header('Location: resultados.php');
  64.                 }
  65.         ?>
  66.         <?php  } ?>
  67.  
  68. </div>
  69. </body>
  70. </html>
  #2 (permalink)  
Antiguo 17/01/2013, 10:23
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 8 meses
Puntos: 2534
Respuesta: Warning: Cannot modify header information - headers already sent by (outpu

Lee esto:

PHP:¿Por qué me sale "Warning: Cannot modify header information - headers already sent by (output started at 1:2) in 3 on line 4"?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 17/01/2013, 10:24
Avatar de gogupe  
Fecha de Ingreso: octubre-2006
Ubicación: Mallorca
Mensajes: 897
Antigüedad: 18 años, 1 mes
Puntos: 32
Respuesta: Warning: Cannot modify header information - headers already sent by (outpu

Ese error te da porque la linea
Código:
header('Location: resultados.php');
Tiene que estar al principio del todo, no puede mostrar ninguna información en pantalla, como por ejemplo echo, print...

Saludos.
  #4 (permalink)  
Antiguo 17/01/2013, 10:36
 
Fecha de Ingreso: diciembre-2008
Mensajes: 738
Antigüedad: 16 años
Puntos: 15
Respuesta: Warning: Cannot modify header information - headers already sent by (outpu

Cita:
Iniciado por gogupe Ver Mensaje
Ese error te da porque la linea
Código:
header('Location: resultados.php');
Tiene que estar al principio del todo, no puede mostrar ninguna información en pantalla, como por ejemplo echo, print...

Saludos.
¿No hay una forma de que pueda estar donde está? Porque necesito que ejecute el código de arriba y en base a eso que haga la redirección
  #5 (permalink)  
Antiguo 17/01/2013, 12:03
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: Warning: Cannot modify header information - headers already sent by (outpu

Lee el mensaje que te dejo @pateketrueke, sí puedes poner el header en ese lugar pero tienes que asegurarte que no exista salida de texto antes del header.

Saludos.

Etiquetas: header, headers, html, information, modify, output, resultados, warning
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 20:15.