Ver Mensaje Individual
  #5 (permalink)  
Antiguo 06/02/2006, 12:17
apuenco
 
Fecha de Ingreso: noviembre-2005
Mensajes: 139
Antigüedad: 18 años, 5 meses
Puntos: 0
he editado mi respuesta anterior para intentar explicarlo mejor, pero aqui pongo mi codigo:(quito todo lo que no sea necesario , como las funciones)
Código PHP:
<html>
   <head>
      <title>Untitled</title>
    <link rel="stylesheet" href="estiloindex.css" type="text/css">
   </head>
   <body class="CSSINDEX">
   <center>
<table width="75%" border="1" align="center">
  <tr>
    <td><img src="encabezadocremadegradado3.gif" width="800" height="78"></td>
  </tr>
</table>
<p>&nbsp;</p>



<?php

/////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////
//aqui trabajo con los archivos y meto las llamadas en la base

$host"localhost";
$user="root";
$password="";
$nombreBD="proyecto";
$tabla="llamadas";
$link=mysql_connect($host$user$password);
mysql_select_db($nombreBD,$link);

$consulta  "SELECT * FROM `llamadas`ORDER BY `n_desecuencia` DESC LIMIT 0 , 1 ;";//obtengo el n_secuencia del ultimo elemento, para evitar mirar los datos anteriores

$resultado mysql_query($consulta);
if(
mysql_num_rows($resultado)!=0){
while(
$row mysql_fetch_array($resultado)){
$max=$row['n_desecuencia'];//$max me da el identificador del ultimo registro de la base

}
}
//print("$max");
$archivo=fopen("datos.txt","r");
$temp=fopen("editor.txt","r+");
$solu=array();
$solu[0]=0;
$solu[1]=0;
$solu[2]=0;
$solu[3]=0;
$solu[4]=0;
$solu[5]=0;
$solu[6]=0;
$solu[7]=0;
while (!
feof($archivo))
{
$campos=array();//inicializo el array
$linea=fgets($archivo,2500);
$campos=rompelinea($linea);
switch (
$campos[6]){
case 
"16":
    
$solu[0]=$solu[0]+1;
    break;
case 
"17":
    
$solu[1]=$solu[1]+1;
    break;
case 
"18":
    
$solu[2]=$solu[2]+1;
    break;
case 
"28":
    
$solu[3]=$solu[3]+1;
    break;
case 
"31":
    
$solu[4]=$solu[4]+1;
    break;
case 
"34":
    
$solu[5]=$solu[5]+1;
    break;
case 
"49":
    
$solu[6]=$solu[6]+1;
    break;
case 
"-":
    
$solu[7]=$solu[7]+1;
    break;
default:
    
$solu[6]=$solu[6]+1;}
$llamo=metodatos($campos,$max);//introduzco los datos en la base de datos.

}


fclose($temp);
fclose($archivo);

//Hasta aqui he metido las llamadas en la base.
/////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////
//Aqui empieza la creacion del grafico

$total=0;
$numnormal=$solu[0];
$numocupado=$solu[1];
$numsinresp=$solu[2];
$numnumincor=$solu[3];
$numnoespe=$solu[4];
$numlinecan=$solu[5];
$numotros=$solu[6];
$numconec=$solu[7];

$total=$numnormal+$numocupado+$numsinresp+$numnumincor+$numnoespe+$numlinecan+$numotros+$numconec-1;
//print(",$total");

//porcentajes
$pornormal=($numnormal*100)/$total;
$porocupado=($numocupado*100)/$total;
$porsinresp=($numsinresp*100)/$total;
$pornumincor=($numnumincor*100)/$total;
$pornoespe=($numnoespe*100)/$total;
$porlineacan=($numlinecan*100)/$total;
$porotros=($numotros*100)/$total;
$porconec=($numconec*100)/$total;



header("Content-type: image/png");
$imgWidth=900;
$imgHeight=200;

// Creo image y define colores
$image=imagecreate($imgWidth$imgHeight);

$colorFondo=imagecolorallocate($image255255200);
$colorNormal=imagecolorallocate($image00255);//Color normal
$colorOcup=imagecolorallocate($image10019230);
$colorSinresp=imagecolorallocate($image1555034);
$colorNuminc=imagecolorallocate($image80255230);
$colorNoespe=imagecolorallocate($image255,255255);
$colorLincan=imagecolorallocate($image25500);
$colorOtros=imagecolorallocate($image2552550);
$colorConec=imagecolorallocate($image02550);
$colorNegro=imagecolorallocate($image000);

//titulo
imagestring($image35020"Finalización de llamadas"$colorNegro);
imagestring($image35045"Total llamadas: $total"$colorNegro);


//porcentajes encima de cada barra
$pornormal=number_format($pornormal,2,'.','');
$porocupado=number_format($porocupado,2,'.','');
$porsinresp=number_format($porsinresp,2,'.','');
$pornumincor=number_format($pornumincor,2,'.','');
$pornoespe=number_format($pornoespe,2,'.','');
$porlineacan=number_format($porlineacan,2,'.','');
$porotros=number_format($porotros,2,'.','');
$porconec=number_format($porconec,2,'.','');

$longnor=($pornormal*800)/100;
$longocu=($porocupado*800)/100;
$longsinresp=($porsinresp*800)/100;
$longnuminc=($pornumincor*800)/100;
$longnoesp=($pornoespe*800)/100;
$longlin=($porlineacan*800)/100;
$longotros=($porotros*800)/100;
$longcon=($porconec*800)/100;

$c1=number_format($longnor,0,'.','');
$c2=number_format($longocu,0,'.','');
$c3=number_format($longsinresp,0,'.','');
$c4=number_format($longnuminc,0,'.','');
$c5=number_format($longnoesp,0,'.','');
$c6=number_format($longlin,0,'.','');
$c7=number_format($longotros,0,'.','');
$c8=number_format($longcon,0,'.','');


imagefilledrectangle($image,50,70,50+$c1,130,$colorNormal);//barra de normal
imagefilledrectangle($image,50+$c1,70,50+$c1+$c2,130,$colorOcup);//barra de us.ocupado
imagefilledrectangle($image,50+$c1+$c2,70,50+$c1+$c2+$c3,130,$colorSinresp);//barra sin respuesta
imagefilledrectangle($image,50+$c1+$c2+$c3,70,50+$c1+$c2+$c3+$c4,130,$colorNuminc);//barra num incorrecto
imagefilledrectangle($image,50+$c1+$c2+$c3+$c4,70,50+$c1+$c2+$c3+$c4+$c5,130,$colorNoespe);//barra sin especif
imagefilledrectangle($image,50+$c1+$c2+$c3+$c4+$c5,70,50+$c1+$c2+$c3+$c4+$c5+$c6,130,$colorLincan);//barra linea/canal
imagefilledrectangle($image,50+$c1+$c2+$c3+$c4+$c5+$c6,70,50+$c1+$c2+$c3+$c4+$c5+$c6+$c7,130,$colorOtros);//barra otros
imagefilledrectangle($image,50+$c1+$c2+$c3+$c4+$c5+$c6+$c7,70,50+$c1+$c2+$c3+$c4+$c5+$c6+$c7+$c8,130,$colorConec);//barra conectada


imagefilledrectangle($image,50,155,60,165,$colorNormal);// normal
imagestring($image265155"Normal: $pornormal%" $colorNegro);

imagefilledrectangle($image,230,155,240,165,$colorOcup);//us.ocupado
imagestring($image2245155"Usuario Ocupado: $porocupado%" $colorNegro);

imagefilledrectangle($image,420,155,430,165,$colorSinresp);//sin respuesta
imagestring($image2435155"Sin Respuesta: $porsinresp%" $colorNegro);

imagefilledrectangle($image,615,155,625,165,$colorNuminc);// num incorrecto
imagestring($image2630155"Numero Incorrecto: $pornumincor%" $colorNegro);

imagefilledrectangle($image,50,185,60,195,$colorNoespe);// sin especif
imagestring($image265185"Sin Especificar: $pornoespe%" $colorNegro);

imagefilledrectangle($image,230,185,240,195,$colorLincan);//linea/canal
imagestring($image2245185"Linea/canal ocupado: $porlineacan%" $colorNegro);

imagefilledrectangle($image,420,185,430,195,$colorOtros);//otros
imagestring($image2435185"Otros: $porotros%" $colorNegro);

imagefilledrectangle($image,615,185,625,195,$colorConec);//conectada
imagestring($image2630185"Conectada: $porconec%" $colorNegro);

imagepng($image,"imagen.png");
imagedestroy($image);

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//genero el grafico con los datos de hoy
link =mysql_connect($host$user$password);
mysql_select_db($nombreBD,$link);
$ult_hora "SELECT * FROM llamadas WHERE iniciollamada > DATE_SUB(NOW(), INTERVAL 1 day)";
$sol=array();
$sol[0]=0;
$sol[1]=0;
$sol[2]=0;
$sol[3]=0;
$sol[4]=0;
$sol[5]=0;
$sol[6]=0;
$sol[7]=0;
$busq mysql_query($ult_hora);
if(
mysql_num_rows($busq)!=0){
while(
$row mysql_fetch_array($busq)){
switch (
$row['causadesconexion']){
case 
"Normal":
    
$sol[0]=$sol[0]+1;
    break;
case 
"Usuario Ocupado":
    
$sol[1]=$sol[1]+1;
    break;
case 
"Sin Respuesta":
    
$sol[2]=$sol[2]+1;
    break;
case 
"Numero Incorrecto":
    
$sol[3]=$sol[3]+1;
    break;
case 
"Sin Especificar":
    
$sol[4]=$sol[4]+1;
    break;
case 
"Linea/Canal No Disponible":
    
$sol[5]=$sol[5]+1;
    break;
case 
"Otros":
    
$sol[6]=$sol[6]+1;
    break;
case 
"Conectada":
    
$sol[7]=$sol[7]+1;
    break;}
}
/////y aqui creo otro grafico como el de antes pero con los datos de hoy.
//////a partir de aqui es el formulario en el que se lo paso a muestra.php

?>

<form action="muestra.php" method=post>
       

 <input type="submit" value="MOSTRAR" name="submit" />
      </p>
          </td>
  </tr>
</table>
</center>
<table width="75%" border="0" align="center">
  <tr> 
    <td width="61%" height="30"> 
      <div align="center"></div>
    </td>
  </tr>
  <tr> 
    <td width="61%"> 
      <div align="center"> </div>
    </td>
  </tr>
  <tr> 
    <td width="61%">&nbsp;</td>
  </tr>
</table>
</body>
</html>