Foros del Web » Programando para Internet » PHP »

Problemas para cambiar color de fondo

Estas en el tema de Problemas para cambiar color de fondo en el foro de PHP en Foros del Web. buenas a todo/as, Tengo varias paginas echas en php, y al intentar meter un <style> para variar el el color de fondo o bien hacerlo ...
  #1 (permalink)  
Antiguo 11/03/2005, 09:56
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Pregunta Problemas para cambiar color de fondo

buenas a todo/as,
Tengo varias paginas echas en php, y al intentar meter un <style> para variar el el color de fondo o bien hacerlo desde el body, me reporta el error de: Cannot modify header information - headers already sent by.
Ponga donde ponga el codigo para poder modificar el color de fondo me reporta el warning este.
Gracias
  #2 (permalink)  
Antiguo 11/03/2005, 10:05
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 19 años, 5 meses
Puntos: 34
Eso es un error producido por enviar info a las cabeceras luego de estas haber cargado, no tiene nada que ver con el color de fondo.
Leete un poco sobre esto en http://ar2.php.net/manual/en/function.header.php o mostra tu codigo.
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #3 (permalink)  
Antiguo 11/03/2005, 10:15
 
Fecha de Ingreso: agosto-2002
Ubicación: Colón - Entre Rios - Argentina
Mensajes: 647
Antigüedad: 21 años, 8 meses
Puntos: 8
estas usando header() en algun momento, porque ese error por lo general se debe al mal uso de esa funcion.... Por ejemplo usar header() despues de algun echo.
Y tantos otros casos mas.... que por el buscador del foro vas a encontrar.
Tambien esto puede ser por alguna cookie que envias mediante PHP.

Postea al codigo y te decimos exactamente donde puede estar el problema.

Saludos!
  #4 (permalink)  
Antiguo 11/03/2005, 10:19
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Código PHP:
<?php
$data_passada
=($_GET['data_passada']);
$data_usuari=($_GET['data_usuari']);
//connexio a la BD
$link mysql_connect("ruta""user","user");
mysql_select_db("Bd",$link);
//Include codi phplot
include('./phplot.php');

//Definim objecte
$graph = new PHPlot(700,400);

//Definim els Titols
$graph->SetTitle("La Panera del Pa\n\rComparatiu Diari");
$graph->SetXTitle('Tendes');
$graph->SetYTitle('Clients');

     
$sql="SELECT tendes,fecha,Count(numero) AS clients
            FROM tendes,tickets 
            WHERE id_tenda = tienda AND fecha='"
.$data_usuari."' 
            GROUP BY tendes,fecha 
            ORDER BY id_tenda"

    
$res=mysql_query($sql); 

    
$sql="SELECT tendes,fecha,Count(numero) AS clients
            FROM tendes,tickets 
            WHERE id_tenda = tienda AND fecha='"
.$data_passada."' 
            GROUP BY tendes,fecha 
            ORDER BY id_tenda"

    
$res2=mysql_query($sql); 
    
$numeroRegistros=mysql_num_rows($res);
    
$numeroRegistros2=mysql_num_rows($res2); 
    if(
$numeroRegistros<=0)
    { 
        echo 
"<div align='center'>"
        echo 
"<font face='verdana' size='-2'>No s'han trobat resultats</font>"
        echo 
"</div>"
    }
    elseif (
$numeroRegistros2<=0)
    {  
           
            
$data = array(); 
            while(
$row mysql_fetch_row($res)) 
                { 
                    
$data[] = array($row[0],$row[2]); 
                }
    }
    else
    {    
        
$data = array();
        while(
$row mysql_fetch_row($res))
        {          
            while(
$row2 mysql_fetch_row($res2)) 
                if(
$row2[0]==$row[0])
                { 
                    
$dato $row2[2]; 
                    break; 
                } 
                
$data[] = array($row[0],$row[2],$dato); 
        }    
              
    }
    
$graph->SetDataValues($data);
    
//Llegenda
    
$graph->SetLegend("Actual");
    
$graph->SetLegend("Passat");
    
$graph->SetLegendPixels(500,25);
    
//Dibuixem la gràfica
    
$graph->DrawGraph();
?>
es esta pagina donde intento cambiar el color de fondo
  #5 (permalink)  
Antiguo 11/03/2005, 10:30
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Pero .. ese código como pretendes usarlo o como lo usas?

Recuerda que si ese código (al parecer lo hace en alguno de sus métodos -que no vemos-) estará usando header() para componer ese gráfico .. Si es así .. ese código no se puede mezclar con nada más de HTML por médio ..

A lo sumo .. la llamada de ese código tendrá que ser desde una página HTML común y bajo un tag de imagen:

Código PHP:
<html>
<
head>
</
head>
<
body>
<
img src="ese_codigo.php">
</
body>
</
html
Un saludo,
  #6 (permalink)  
Antiguo 11/03/2005, 10:35
 
Fecha de Ingreso: agosto-2002
Ubicación: Colón - Entre Rios - Argentina
Mensajes: 647
Antigüedad: 21 años, 8 meses
Puntos: 8
Aparentemente haces un grafico con esa clase del include no?

No conozco en especial ese script, pero por lo general lo que hacen es enviar al navegador una imagen, y para "avisarle" que es tal utilizan header().

A este archivo tendrias que llamargo desde otro. Ese "otro" va a ser tu php con el html que muestras al usuario. Por ejemplo
Código PHP:
<html>
<title>la imagen</title>
<body>
<img src="<?php echo "http://www.pagina.com/escripquegeneralaimagen.php?data_passada=$data_passada&data_usuari=$data_usuari" ?>">
</body>
</html>
Lo que necesitas entender es que el codigo que vos posteaste lo que hace es dibujar una imagen (en binario), por lo tanto no puedes "mezclarlo" con echos y salida HTML.
  #7 (permalink)  
Antiguo 11/03/2005, 10:40
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
El codigo q os he posteado pasa parametros a otra pagina q esta contiene una clase q crea el grafico, sino lo he posteado es porque ocupa cerca de las 4000 linias.Es un codigo q encontre persiguiendo el modo de generar graficos rapida y sencillamente.
He probado de hacerlo como me habeis comentado pero no me genera el grafico y me pone todo de simbolos:
é’HA €óÜÚ}Ó÷ýáÅD§ÊƒBt¼È»4çåýß
  #8 (permalink)  
Antiguo 11/03/2005, 10:51
 
Fecha de Ingreso: agosto-2002
Ubicación: Colón - Entre Rios - Argentina
Mensajes: 647
Antigüedad: 21 años, 8 meses
Puntos: 8
Eso que ves seguro que es la imagen, solo que el mavegador no sabe que es tal cosa.
Prueba poner..
header('Content-Type: image/jpeg');
o
header('Content-Type: image/png');

antes de llamar a
$graph->DrawGraph();

Si no funcionn postea la funcion DrawGraph() que debe estar dentro de la clase que incluyes.

Tenes razon 4000 lineas un un poco bastante!

Saludos!
  #9 (permalink)  
Antiguo 11/03/2005, 10:52
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Ya esta solucionado! Habia copiado mal una cosa. Gracias a los 2 por contestar tant rapidamente!

Saludos
  #10 (permalink)  
Antiguo 11/03/2005, 10:53
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Bueno .. si usas una "classe" ya predefinida . .no sé de donde lo habras sacada .. pero ejemplo completo tendrá que tener ..

La técnica es la que te hemos descrito .. debes llamar a tu script que actualmente pueda generar tu gráfico al llamarlo por si solo (sin nada más de HTML ni espacios ni nada más por médio antes o despues de tus <? ?> ..) para poder usar más HTML por médio en otra página aparte.

Esto:
é’HA €óÜÚ}Ó÷ýáÅD§ÊƒBt¼È»4çåýß

sucede cuando no envias las cabeceras HTTP adecuadas via header("content-type .....") que tendrá que hacer ya algún método de esa classe si es que lo permite.
(supongo que lo hará: $graph->DrawGraph(); )

Un saludo,

Un saludo,
  #11 (permalink)  
Antiguo 11/03/2005, 10:56
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
el archivo q contiene la clase se llama phplot. Si alguien quiere echarle un vistazo solo teneis q pedirla!
Gracias de nuevo.

Saludos
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 01:23.