Ya deberías saber que este no es un sitio para PHP, y hay listas
especializads
sobre este lenguaje. Aún así respondo brevemente:

Como bien te dice el mensaje de error: "No puedes modificar las cabeceras
(de
la petición HTTP) porque ya han sido enviadas."

Lo que quiere decir es que estás intentando hacer la redirección demasiado
tarde.
Cuando algo del HTML ya es ha escrito (o bien usando echo/print de PHP) o
bien código HTML que hay previo al script PHP.

Solución 1: hacer la redirección antes que todo esto.
Solución 2: usar javascript (u otro método) para hacer la redirección.

saludos

2011/11/18 Jose María Jareño García <construyetunegocioeninter...@gmail.com>

>     Hola hola hola.
>
>     Voy al grano. Tratando de redirigir una validación de usuario con PHP
> que se contrasta con una BD, me da un error que no acierto a resolver. La
> idea es cargar una web almacenada en un campo de la BD que ha guardado
> previamente el propio usuario. Esa URL está en los datos que devuelve la
> consulta *mysql_result($datos, 0, 3)*. Este es el código PHP:
>
> <?php
> //session_start();
> if (!isset( $_POST['usuario'] )) {
>  header("Location: login.php");
> } else {
>  $id = mysql_connect("localhost", "mi_usuario", "mi_password");
>  mysql_select_db("afiliados", $id);
>  $consulta = "SELECT * FROM Usuarios WHERE usuario = '{$_POST['usuario']}'
> AND contrasenia = '{$_POST['contrasenia']}'";
>  $datos = mysql_query($consulta, $id);
>  $numDatos = @mysql_num_rows($datos);
>  if ($numDatos <= 0) {
>    echo "Error: usuario o contraseña incorrectos. O usuario no dado de
> alta.<br>";
>  } else {
>    $_SESSION['User'] = $_POST['usuario'];
>    *header("Location: http://"; . mysql_result($datos, 0, 3));*
>  }
> }
> ?>
>
>     La línea en rojo hace saltar el siguiente error:
> *
> Warning*: Cannot modify header information - headers already sent by
> (output started at /home/miespacio/public_html/validar.php:6) in *
> /home/miespacio/public_html/validar.php* on line *15*
>
>
>     Al parecer es un problema frecuente y tedioso de resolver porque no
> hay buenas referencias de ayuda. ¿Qué puedes aconsejarme, tú que leíste mi
> consulta?
>
> Gracias por la atención.
> _______________________________________________
> Lista de distribución Ovillo
> Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org
> Puedes modificar tus datos o desuscribirte en la siguiente dirección:
> http://lists.ovillo.org/mailman/listinfo/ovillo
>
_______________________________________________
Lista de distribución Ovillo
Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org
Puedes modificar tus datos o desuscribirte en la siguiente dirección: 
http://lists.ovillo.org/mailman/listinfo/ovillo

Responder a