Foros del Web » Programando para Internet » PHP »

Se duplican los datos 2 veces

Estas en el tema de Se duplican los datos 2 veces en el foro de PHP en Foros del Web. Hola a todos Tengo un problema, lo que pasa es que tengo un archivo php que se actualiza cada hora, y cada vez que actualize ...
  #1 (permalink)  
Antiguo 31/08/2012, 13:56
 
Fecha de Ingreso: marzo-2012
Ubicación: Bogota
Mensajes: 177
Antigüedad: 12 años, 1 mes
Puntos: 2
Se duplican los datos 2 veces

Hola a todos

Tengo un problema, lo que pasa es que tengo un archivo php que se actualiza cada hora, y cada vez que actualize sube la informacion correspondiene a esa hora, pero la base de datos por cada actualizacion me genera dos registros en mi base de datos totalmente idénticos, no he podido solucionar ese problema no se que genera ese problema para que se dupliquen los datos cada vez que actualize, espero me puedan ayudar gracias :) Adjunto mi código
Código HTML:
<html>
<head>
<meta http-equiv="refresh" content="3600">
    <title>Actualizador BD</title>
    <script>
        /*
* Parametros mandatorios
*/
    var seconds = 3600; // el tiempo en que se refresca
    var divid = "tabla"; // el div que quieres actualizar!
    var nocacheurl = 'Resumen_mccf.php';
   // var url = "tiempo.php"; // el archivo que ira en el div
 
    function refreshdiv(){
 
        // The XMLHttpRequest object
 
        var xmlHttp;
        try{
            xmlHttp=new XMLHttpRequest(); // Firefox, Opera 8.0+, Safari
        }
        catch (e){
            try{
                xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); // Internet Explorer
            }
            catch (e){
                try{
                    xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
                }
                catch (e){
                    alert("Tu explorador no soporta AJAX.");
                    return false;
                }
            }
        }
 
        // Timestamp for preventing IE caching the GET request
        var timestamp = parseInt(new Date().getTime().toString().substring(0, 10));
        
 
        // The code...
 
        xmlHttp.onreadystatechange=function(){
            if(xmlHttp.readyState== 4 && xmlHttp.readyState != null){
                document.getElementById(divid).innerHTML=xmlHttp.responseText;
                setTimeout('refreshdiv()',seconds*1000);
            }
        }
        xmlHttp.open("GET",nocacheurl,true);
        xmlHttp.send(null);
    }
 
    // Empieza la función de refrescar
 
    window.onload = function(){
        refreshdiv(); // corremos inmediatamente la funcion
    }
  
    
</script>   
 
 
</head>
<body> 
Código PHP:
<?php  
    
include("conexion.php");  
$link=conexion();  
    
$gestor = @fopen("REPORTES/report_list_bcms_skill_13_time_00-00.txt""r");//tarificacion04202012.txt  
if ($gestor) {  
$i=  
$cod=0;  
 
$index=0;

    echo 
"<table border='1' align='center'>";  
    echo 
"<tr>";  
    echo 
"<td>Dia</td><td>Total_llamadas</td><td>Promedio_respuesta</td><td>Total_abandonadas</td><td>Promedio_abandono</td><td>Promedio_duracion</td><td>Total_otro_estado</td><td>Promedio_agentes</td><td>Nivel_servicio</td><td>Fecha</td>";  
    echo 
"</tr>";  
    while ((
$buffer fgets($gestor999)) !== false) { 
$index++;
/*if($index>=7){
exit();
}    */
//$nuevacadena=preg_split("/SUMMARY/",$buffer,2);
    
$texto strtolower($buffer);
    
$arr = array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","%","_","-","*");

echo 
"<br>";
$texto_nuevo str_replace($arr""$texto);
//echo $texto_nuevo;
    
$Dia=substr($texto_nuevo0,11);  
    
$Total_llamadas=substr($texto_nuevo,  14,3);  
    
$Promedio_respuesta=substr($texto_nuevo18,5); 
    
$Total_abandonadas=substr($texto_nuevo27,3);      
    
$Promedio_abandono=substr($texto_nuevo30,5);  
    
$Promedio_duracion=substr($texto_nuevo36,5);  
    
$Total_otro_estado=substr($texto_nuevo60,8);  
    
$Promedio_agentes=substr($texto_nuevo69,4);  
    
$Nivel_servicio =substr($texto_nuevo74,3);  
    
$Fechasubstr($texto_nuevo,  40,2);
    
    
    
$Dia=trim($Dia);//Dia     
    
$Total_llamadas=trim($Total_llamadas);//Total_llamadas 
    
$Promedio_respuesta=trim($Promedio_respuesta);//Promedio_respuesta  
    
$Total_abandonadas=trim($Total_abandonadas);//Total_abandonadas 
    
$Promedio_abandono=trim($Promedio_abandono);//Promedio_abandono  
    
$Promedio_duracion=trim($Promedio_duracion);//Promedio_duracion  
    
$Total_otro_estado=trim($Total_otro_estado);//Total_otro_estado  
    
$Promedio_agentes=trim($Promedio_agentes);//Promedio_agentes  
    
$Nivel_servicio=trim($Nivel_servicio);//Nivel_servicio  
    
$Fecha=trim($Fecha);
    
    
$Fecha1date("d-m" ,time());
$Hora1date("h am/pm" ,time());
$Hora_n =substr($Hora10,5);
//echo $Hora_n;
if ($Hora_n=='01 am' && $index==11){echo "la 1 AM";
    
    echo 
"<tr>";  
    echo 
"<td>".$Dia."</td>";  
    echo 
"<td>".$Total_llamadas."</td>";  
    echo 
"<td>".$Promedio_respuesta."</td>";  
    echo 
"<td>".$Total_abandonadas."</td>";  
    echo 
"<td>".$Promedio_abandono."</td>";  
    echo 
"<td>".$Promedio_duracion."</td>";  
    echo 
"<td>".$Total_otro_estado."</td>";  
    echo 
"<td>".$Promedio_agentes."</td>";  
    echo 
"<td>".$Nivel_servicio."</td>";
    echo 
"<td>".$Fecha1."</td>";    
    echo 
"</tr>";
    if (!
mysql_query("INSERT INTO Hora_mccf (Hora,Total_llamadas,Promedio_respuesta,Total_abandonadas,Promedio_abandono,Promedio_duracion,Total_otro_estado,Promedio_agentes,Nivel_servicio,Fecha)  
    VALUES ('$Dia','$Total_llamadas','$Promedio_respuesta','$Total_abandonadas','$Promedio_abandono','$Promedio_duracion', '$Total_otro_estado','$Promedio_agentes','$Nivel_servicio','$Fecha1')"
) )
die(
"Error: ".mysql_error());  
    }
if (
$Hora_n=='02 am' && $index==12){echo "Las 2 AM";
    
    echo 
"<tr>";  
    echo 
"<td>".$Dia."</td>";  
    echo 
"<td>".$Total_llamadas."</td>";  
    echo 
"<td>".$Promedio_respuesta."</td>";  
    echo 
"<td>".$Total_abandonadas."</td>";  
    echo 
"<td>".$Promedio_abandono."</td>";  
    echo 
"<td>".$Promedio_duracion."</td>";  
    echo 
"<td>".$Total_otro_estado."</td>";  
    echo 
"<td>".$Promedio_agentes."</td>";  
    echo 
"<td>".$Nivel_servicio."</td>";
    echo 
"<td>".$Fecha1."</td>";    
    echo 
"</tr>";
    if (!
mysql_query("INSERT INTO Hora_mccf (Hora,Total_llamadas,Promedio_respuesta,Total_abandonadas,Promedio_abandono,Promedio_duracion,Total_otro_estado,Promedio_agentes,Nivel_servicio,Fecha)  
    VALUES ('$Dia','$Total_llamadas','$Promedio_respuesta','$Total_abandonadas','$Promedio_abandono','$Promedio_duracion', '$Total_otro_estado','$Promedio_agentes','$Nivel_servicio','$Fecha1')"
) )
die(
"Error: ".mysql_error());  
    }
if (
$Hora_n=='03 am' && $index==13){echo "Las 3 AM";
    
    echo 
"<tr>";  
    echo 
"<td>".$Dia."</td>";  
    echo 
"<td>".$Total_llamadas."</td>";  
    echo 
"<td>".$Promedio_respuesta."</td>";  
    echo 
"<td>".$Total_abandonadas."</td>";  
    echo 
"<td>".$Promedio_abandono."</td>";  
    echo 
"<td>".$Promedio_duracion."</td>";  
    echo 
"<td>".$Total_otro_estado."</td>";  
    echo 
"<td>".$Promedio_agentes."</td>";  
    echo 
"<td>".$Nivel_servicio."</td>";
    echo 
"<td>".$Fecha1."</td>";    
    echo 
"</tr>";
    if (!
mysql_query("INSERT INTO Hora_mccf (Hora,Total_llamadas,Promedio_respuesta,Total_abandonadas,Promedio_abandono,Promedio_duracion,Total_otro_estado,Promedio_agentes,Nivel_servicio,Fecha)  
    VALUES ('$Dia','$Total_llamadas','$Promedio_respuesta','$Total_abandonadas','$Promedio_abandono','$Promedio_duracion', '$Total_otro_estado','$Promedio_agentes','$Nivel_servicio','$Fecha1')"
) )
die(
"Error: ".mysql_error());  
    }
    if (
$Hora_n=='04 am' && $index==14){echo "Las 4 AM";
    
    echo 
"<tr>";  
    echo 
"<td>".$Dia."</td>";  
    echo 
"<td>".$Total_llamadas."</td>";  
    echo 
"<td>".$Promedio_respuesta."</td>";  
    echo 
"<td>".$Total_abandonadas."</td>";  
    echo 
"<td>".$Promedio_abandono."</td>";  
    echo 
"<td>".$Promedio_duracion."</td>";  
    echo 
"<td>".$Total_otro_estado."</td>";  
    echo 
"<td>".$Promedio_agentes."</td>";  
    echo 
"<td>".$Nivel_servicio."</td>";
    echo 
"<td>".$Fecha1."</td>";    
    echo 
"</tr>";
}
    
$i++;  
   }  

    echo 
"</table>";          

    if (!
feof($gestor)) {  
        echo 
"Error: fallo inesperado de fgets()\n";  

    }  
    
fclose($gestor); 

mysql_close($link);  



?>
Código HTML:
</body>

</html> 
  #2 (permalink)  
Antiguo 31/08/2012, 18:38
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Se duplican los datos 2 veces

Para aclarar un poco, al decir que se duplican, te refieres sólo a lo que ves en pantalla o a lo que se guarda en archivo (o base de datos, o lo que sea)?

Si sólo aparece doble en pantalla, entonces la fuente del problema es Javascript y no PHP.

Por cierto, tienes var divid = "tabla";, que es la id del elemento HTML que se supone vas a actualizar, pero en el código no veo un <div id="tabla">, lo que debería generar un error de Javascript y detener la ejecución sin mostar un sólo registro.
__________________
- León, Guanajuato
- GV-Foto

Etiquetas: html, mysql, registro, tabla, veces
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:41.