Foros del Web » Programando para Internet » PHP »

Eliminar registros duplicados con php - AYUDA por favor

Estas en el tema de Eliminar registros duplicados con php - AYUDA por favor en el foro de PHP en Foros del Web. Hola, estoy extrallendo una db de paises, estados, ciudades para mi uso y comprartirla aqui los paises me los estrae bien y los estados , ...
  #1 (permalink)  
Antiguo 14/07/2008, 12:55
Avatar de hawaiian050  
Fecha de Ingreso: junio-2007
Mensajes: 285
Antigüedad: 17 años, 5 meses
Puntos: 2
Eliminar registros duplicados con php - AYUDA por favor

Hola,

estoy extrallendo una db de paises, estados, ciudades para mi uso y comprartirla aqui los paises me los estrae bien y los estados , pero resulta que las ciudades me las duplica capas consume muchos recursos dejo el codigo haber si me pueden ayudar gracias, o si tienen algun codigo para eliminar los resultados duplicados:

Código PHP:
<?php
set_time_limit
(0);
require(
"configuracion.php");
$_MYSQL_CONNECT mysql_connect($_MYSQL['server'],$_MYSQL['user'],$_MYSQL['pass']) or exit(mysql_error());
mysql_select_db($_MYSQL['database'],$_MYSQL_CONNECT) or exit(mysql_error());

$Sql "SELECT * FROM estadoss ORDER BY id DESC";
$Query mysql_query($Sql) or die(mysql_error());
while(
$Data mysql_fetch_assoc($Query)){{

        
$url   "http://geo.fotolog.com/directory?state=".$Data["estado"]."&country=".$Data["relacion"]."";
        
$texto file_get_contents($url);        

}        
        
        
# tabla de estados
        
$parser='|<table id="listingTable">(.*?)</table>|is';
        if( 
preg_match_all($parser$texto$title) )
        {
            for (
$i=1;$i<count($title);$i++)
            {
                 for (
$j=0;$j<count($title[$i]);$j++)
                 {    
$texto2.=$title[$i][$j];
    
                 }
            }
        }
        
        
# links de estado
        
$parser='|<a href="http:\/\/geo.fotolog.com\/directory\?state\=(.*?)&city=(.*?)&country\=(.*?)">(.*?)</a>|is';
        if( 
preg_match_all($parser$texto2$title) )
        {
            for (
$j=0;$j<count($title[1]);$j++)
            {
            
                 
$title[1][$j] = utf8_decode($title[1][$j]);
                 
$title[2][$j] = utf8_decode($title[2][$j]);
                 
$title[3][$j] = utf8_decode($title[3][$j]);
                 
$title[4][$j] = utf8_decode($title[4][$j]);     


$query "REPLACE INTO ciudades (pais, ciudad, nombre, relacion) values ('" addslashes($title[3][$j]) . "', '" addslashes($title[2][$j]) . "', '" addslashes($title[4][$j]) . "', '" addslashes($title[1][$j]) . "')";
mysql_query($query) or die(mysql_error() . ": " $query);

                 }
            }
        }

?>
Código PHP:
print "state = ".$title[1][$j]." city = ".$title[2][$j]." country= ".$title[3][$j]." nombre =  ".$title[4][$j]."<br>"
Saludos gracias

Última edición por hawaiian050; 14/07/2008 a las 13:00
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 21:43.