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>";