PHP - error con header

 
Vista:

error con header

Publicado por unai (108 intervenciones) el 30/08/2007 12:03:22
Al utilizar Header me da el siguiente error:

Warning: Cannot modify header information - headers already sent by (output started at ... \recien_publicadas.php:5) in ... recien_publicadas.php on line 288

¿Alguna pista de porqué este error y de como poder solucionarlo?

Gracias compas.
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 con header

Publicado por Nicolás (154 intervenciones) el 30/08/2007 15:52:25
Este error se genera al haber algo antes de la funcion header.
La funcion header modifica los headers de respuesta del servidor web hacia el cliente, por lo tanto debe ser utilizado antes de mostrar cualquier otra cosa.
Probablemente estes imprimiendo algo antes de la utilización del header. Fijate también que no tengas una linea vacia antes de <?php. Un error así me tubo varias horas sudando la gota gorda. Ten en cuenta que si haces un include del archivo recien_publicadas.php, en el archivo desde donde lo llamas, tampoco tienes que mostrar nada.
Avisame si lo arreglaste.
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:error con header

Publicado por Unai (108 intervenciones) el 30/08/2007 17:04:20
Te entiendo lo que me dices pero no sé como solucionarlo. Te explico como funciona el script. Accedemos a la BD y obtenemos noticias con enlaces externos. Quiero un contador de noticias externas visitadas. Para eso utilizo el header.

...

<?php
$idnoticia=$reg['Idnoticia'];
echo "<a href=\"recien_publicadas.php?pos=$num&idnoticia=$idnoticia\">";
echo $reg['Titular'];
echo "</a>";
if ($click==$reg['Idnoticia'])
{
mysql_query("UPDATE noticia_salsera SET Click=Click+1 WHERE Idnoticia=$click");
$noticia=$reg['Enlace'];
header ("Location:$noticia");
}
?>

El usuario al hacer click en la noticia, suma 1 pero aparece el error en la correspondiente noticia. Espero haberme explicado.
Gracias por todo.
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:error con header

Publicado por Nicolás (154 intervenciones) el 30/08/2007 17:13:48
Tendrías que separar el script en dos:

uno con el link a la noticia externa, pero pasando primero por el otro script... algo asi (a ver si me explico)

muestra_link.php:

<?php
$idnoticia=$reg['Idnoticia'];
echo "<a href=\"redirect.php?pos=$num&idnoticia=$idnoticia\" target=\"_blank\">";
echo $reg['Titular'];
echo "</a>";
?>

redirect.php:

<?php
mysql_query("UPDATE noticia_salsera SET Click=Click+1 WHERE Idnoticia=$click");
$noticia=$reg['Enlace'];
header ("Location:$noticia");
?>

La idea es en un pequeño script llamado redirect.php, actualizar la cantidad de visitas a la noticia externa.
De esta manera, al tener el este script que solo se encarga de actualizar la base de datos y redirigir, no vas a tener problemas con la funcion header.
Avisame si lo solucionas o si no se entiende bien.
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:error con header

Publicado por unai (108 intervenciones) el 30/08/2007 18:12:53
No me ha servido, de todos modos gracias por todo. Lo seguiré intentando.
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:error con header

Publicado por vixtor (48 intervenciones) el 30/08/2007 16:27:37
Otra ocpion puede ser la version de tu sevirdor, ya que hace un tiempo atras tuve el mismo problema y tuve que actualizar el AppServer a una version mas actualizada. Espero que te sirva
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