Foros del Web » Programando para Internet » PHP »

problema con cabeceras

Estas en el tema de problema con cabeceras en el foro de PHP en Foros del Web. Hola tengo un script que usa cabeceras pero me lanza el error: Cita: Warning: Cannot modify header information - headers already sent by (output started ...
  #1 (permalink)  
Antiguo 15/02/2011, 11:01
 
Fecha de Ingreso: enero-2010
Mensajes: 373
Antigüedad: 14 años, 3 meses
Puntos: 5
problema con cabeceras

Hola tengo un script que usa cabeceras pero me lanza el error:
Cita:
Warning: Cannot modify header information - headers already sent by (output started ...
He mirado varias manera de solucionarlo como lo de los espacios y texto en html antes del header pero no hay manera, ademas este problema solo me lo da en un servidor si lo pongo en otro distinto si fuinciona perfectamente.
Bueno aqui dejo el trozo de codigo que tira error:
Cita:
if ($_COOKIE['unvoto'] == "$id") {echo "";}else { setcookie("unvoto", "$id",time()+9500, "/","");


if(mysql_num_rows($res)==0){
@mysql_query("UPDATE casas SET num_votos=num_votos+1,ptos=ptos+".$_POST[valor]." WHERE id_c='" . $resultado['id_c'] . "'")or die ('ERROR AL INSERTAR REGISTRO: '.mysql_error());
}else{
@mysql_query("UPDATE casas SET num_votos=num_votos+1,ptos=ptos+".$_POST[valor]." WHERE id_c='" . $resultado['id_c'] . "'")or die ('ERROR AL MODIFICAR REGISTRO: '.mysql_error());
}
}

header('Location:'.$REQUEST_URI);

}
Saludos
  #2 (permalink)  
Antiguo 15/02/2011, 11:07
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: problema con cabeceras

si muestras el mensaje de error completo es mas fácil descifrar el origen del problema...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 15/02/2011, 11:11
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: problema con cabeceras

Cita:
Iniciado por kai89 Ver Mensaje
ademas este problema solo me lo da en un servidor si lo pongo en otro distinto si fuinciona perfectamente.
no crees que sea problema del servidor y no del código??
yo creo que si y lamentablemente alli no puedo ayudar, para mi desgracia no estoy tan involucrado en ese tema.

saludos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #4 (permalink)  
Antiguo 15/02/2011, 11:15
 
Fecha de Ingreso: enero-2010
Mensajes: 373
Antigüedad: 14 años, 3 meses
Puntos: 5
Respuesta: problema con cabeceras

Warning: Cannot modify header information - headers already sent by (output started at /homepages/41/d346258629/htdocs/jaen/index.php:10) in /homepages/41/d346258629/htdocs/jaen/casa_b1.php on line 67

Warning: Cannot modify header information - headers already sent by (output started at /homepages/41/d346258629/htdocs/jaen/index.php:10) in /homepages/41/d346258629/htdocs/jaen/casa_b1.php on line 77

Ese es el mensaje de error que muestra y las lineas de error son las que e mostrado antes:

linea 67
Cita:
if ($_COOKIE['unvoto'] == "$id") {echo "";}else { setcookie("unvoto", "$id",time()+9500, "/","");
linea 77
Cita:
header('Location:'.$REQUEST_URI);
  #5 (permalink)  
Antiguo 15/02/2011, 11:19
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: problema con cabeceras

eso me pasa por contestar a la ligera
por lo que veo el problema te lo esta mandando el 'echo' en esta linea
Código PHP:
Ver original
  1. if ($_COOKIE['unvoto'] == "$id") {echo "";}else { setcookie("unvoto", "$id",time()+9500, "/","");
ya que no debe de existir nada que haga que se envie código al navegador, como son el echo, print, codigo html, etc., antes del 'header'

saludos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #6 (permalink)  
Antiguo 15/02/2011, 11:27
 
Fecha de Ingreso: enero-2010
Mensajes: 373
Antigüedad: 14 años, 3 meses
Puntos: 5
Respuesta: problema con cabeceras

Si bueno ya lo mire lo del echo pero el problema no esta ahi, ya que lo da igual con el que si el, yo creo que el problema es del servidor, porque solo me sucede en un servidor, y lo probe en dos mas y en esos si funciona.
  #7 (permalink)  
Antiguo 15/02/2011, 11:53
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: problema con cabeceras

Cita:
Iniciado por kai89 Ver Mensaje
Si bueno ya lo mire lo del echo pero el problema no esta ahi, ya que lo da igual con el que si el, yo creo que el problema es del servidor, porque solo me sucede en un servidor, y lo probe en dos mas y en esos si funciona.
los mensajes de error son toda la ayuda que necesitas...

solo hay que leer bien y prestar atención:
Cita:
Warning: Cannot modify header information - headers already sent by (output started at /homepages/41/d346258629/htdocs/jaen/index.php:10) in /homepages/41/d346258629/htdocs/jaen/casa_b1.php on line 67
¿que hay en dicho script y linea?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #8 (permalink)  
Antiguo 15/02/2011, 12:02
 
Fecha de Ingreso: enero-2010
Mensajes: 373
Antigüedad: 14 años, 3 meses
Puntos: 5
Respuesta: problema con cabeceras

la linea es esta:
Cita:
if ($_COOKIE['unvoto'] == "$id") {echo "";}else { setcookie("unvoto", "$id",time()+9500, "/","");
Y el codigo es este lo e acortado porque no cabe entero:
Cita:
<?php
ob_start();
?>
<link rel="stylesheet" href="../css/galleriffic.css" type="text/css" />
<script type="text/javascript" src="../js/jquery-1.3.2.min.js"></script>
<script type="text/javascript" src="../js/jquery.galleriffic.js"></script>
<script type="text/javascript" src="../js/3jquery.galleriffic.js"></script>
<?
extract($_POST);
$sql = "SELECT * from casas
WHERE casas.id_c='".$casa."' ";

$res=mysql_query($sql,$db);
$nfilas = mysql_num_rows ($res);
if ($nfilas > 0)
{
$resultado = mysql_fetch_array ($res);
$valoracioN_total=@round($resultado[ptos]/$resultado[num_votos],2);
$titulo=$resultado['nombre'];

$id=$resultado['id_c'];
$email=$resultado['correo'];
$tipoalojamiento=$resultado['alojamiento'];

if ($resultado['imagen1'] != "") {
$img=$resultado['imagen1'];
list($ancho) = getimagesize("../imagenescasas/$img");
}


if ($resultado['imagen2'] != "") {
$img1=$resultado['imagen2'];
list($ancho1) = getimagesize("../imagenescasas/$img1");
}



if ($resultado['imagen3'] != "") {
$img2=$resultado['imagen3'];
list($ancho2) = getimagesize("../imagenescasas/$img2");
}



if ($resultado['imagen4'] != "") {
$img3=$resultado['imagen4'];
list($ancho3) = getimagesize("../imagenescasas/$img3");
}


if ($resultado['imagen5'] != "") {
$img4=$resultado['imagen5'];
list($ancho4) = getimagesize("../imagenescasas/$img4");
}


if ($resultado['imagen6'] != "") {
$img5=$resultado['imagen5'];
list($ancho5) = getimagesize("../imagenescasas/$img");
}






if(isset($_POST[valor])){


if ($_COOKIE['unvoto'] == "$id") {echo "";}else { setcookie("unvoto", "$id",time()+9500, "/","");


if(mysql_num_rows($res)==0){
@mysql_query("UPDATE casas SET num_votos=num_votos+1,ptos=ptos+".$_POST[valor]." WHERE id_c='" . $resultado['id_c'] . "'")or die ('ERROR AL INSERTAR REGISTRO: '.mysql_error());
}else{
@mysql_query("UPDATE casas SET num_votos=num_votos+1,ptos=ptos+".$_POST[valor]." WHERE id_c='" . $resultado['id_c'] . "'")or die ('ERROR AL MODIFICAR REGISTRO: '.mysql_error());
}
}

header('Location:'.$REQUEST_URI);

}

echo " <div style='padding-top:7px; padding-bottom:7px; padding-left:4px;'><a href='../'> Espa&ntilde;a</a> > <a href='./'>Ja&eacute;n</a> > <a href=''>" . $resultado['nombre'] . "</a> </div>
<table width='760' border='0' background='../images/fondotablabot.jpg'>
<tr>
<td valign='top' width='290'><font color='#CA4F04' size='5'> " . $resultado['nombre'] . "</font> </P>
<table border=0>
<tr><td height='20'><b></b></td><td height='20'></td></tr>\n";
if ($resultado['personas'] != "")
echo "
<tr><td><b>Capacidad:</b></td><td>" . $resultado['personas'] . " personas</td></tr>\n";
else
print ("\n");
if ($resultado['alojamiento'] != "")
echo "
<tr><td><b>Alojamiento:</b></td><td>" . $resultado['alojamiento'] . "</td></tr>\n";
else
print ("\n");
if ($resultado['alojamiento'] == "habitaciones")
echo "
<tr><td><b>Precio:</b></td><td>" . $resultado['precio'] . "&euro;/persona</td></tr>\n";
else
echo "
<tr><td><b>Precio:</b></td><td>" . $resultado['precio'] . "&euro;/dia</td></tr>\n";
if ($resultado['provincia'] != "")
echo "
<tr><td><b>Provincia:</b></td><td>" . $resultado['provincia'] . "</td></tr>\n";
else
print ("\n");
if ($resultado['localidad'] != "")
echo "
<tr><td><b>Localidad:</b></td><td>" . $resultado['localidad'] . "</td></tr>\n";
else
print ("\n");
if ($resultado['direccion'] != "")
echo "
<tr><td><b>Direccion:</b></td><td>" . $resultado['direccion'] . "</td></tr>\n";
else
print ("\n");
if ($resultado['telefono'] != "")
echo "
<tr><td><b>Teléfonos:</b></td><td>" . $resultado['telefono'] . "</td></tr>\n";
else
print ("\n");

if ($resultado['web'] != "")
echo "
<tr><td><b>Web:</b></td><td><a href='" . $resultado['web'] . "' target='_blank'>" . $resultado['web'] . "</td></tr> \n";
else
print ("\n");

echo " </table>
</td>
<td width='200'>";
if ($resultado['imagen1'] != "")
echo " <IMG width='220' height='180' BORDER='0' SRC='../imagenescasas/" . $resultado['imagen1'] . "' rel='lightbox' ALT=' '>";
else
print ("&nbsp;\n");
echo "</td><td>&nbsp;</td>";
if ($resultado['votos'] != "") {
echo '<td width="500" valing="top">';
echo '<table border=0>
<tr><td width="13">&nbsp;</td><td><div style="background-image:url(../images/stars2.jpg); background-repeat:no-repeat; width:95px"><img src="http://www.forosdelweb.com/f18/images/voto.png" width="'.($valoracioN_total*8).'" height="17" style="background-image:url(../images/stars.jpg);" ></td></tr>
<tr><td colspan=2>Valoración: <strong>'.$valoracioN_total.'/10</strong></td></tr>
';
echo "<tr><td colspan=2>Numero de votos: <strong>" . $resultado['num_votos'] . " </strong></span></td></tr></table>";

?>
<?
if ($identificador != "") { }

else { ?>
<form action="<? echo $REQUEST_URI;?>" method="post">
<br />Tu voto:
<select name="valor" id="valor">
<? for ($i=1; $i<=10 ; $i++) echo '<option value="'.$i.'">'.$i.'</option>';?>
</select><input type="submit" value="Votar">

</form>

<?php
ob_end_flush();
?>

Etiquetas: cabeceras
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:22.