Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/11/2010, 14:35
dragon0083
 
Fecha de Ingreso: abril-2010
Mensajes: 2
Antigüedad: 14 años
Puntos: 0
Acerca de mi aplicacion web

Hola a todos chicos (as), tengo un problemita con la bd, miren estoy desarrollando una app que escanea los links de la web o de un sitio en general y para ello guardo los links en una tabla, ahora bien, para que no existan repetidos, el unico mecanismo que encuentro es verificar nuevamente que no exista dicho link en "TODA LA BD", me podrian decir alguna forma de optimizar esto.

aqui esta el codigo:
for ($i = 0; $i <= $level; $i++) {

$padres = $this->Link->Get_LinksAtLevel($i);
// var_dump($padres);
for ($j = 0; $j < count($padres); $j++) {
$padre = $padres[$j]['Url'];

$childrens = $this->webtool->Get_All_Links_On($padre);

foreach ($childrens as $child) {
$result = $child->Get_Url();
$ISOUT = '';
if (intval($this->webtool->EsLinkExterno($this->root_url, $child->Get_Url())) > 0)
$ISOUT = 1; else
$ISOUT = 0;
if ($ISOUT == 0) {

//Buscando la verdadera url

if ($result != '')
if (strpos($result, '/') == 0)
$result = $this->root_url . substr($result, 1);
else if (gettype(strpos($result, '://')) == 'boolean')
$result = $this->root_url . $result;

// $INFO_ROOT = $this->webtool->Get_Info_Url($result);
if (!$this->Link->Find_Link($result)) //verifico que no se encuentre
$this->Link->Add_Link($result, $ISOUT, $child->Get_Tag(), '', '', $i + 1, '', $padre);
} else if(!$this->Link->Find_Link($result)) //verifico que no se encuentre
{
$this->Link->Add_Link($result, $ISOUT, $child->Get_Tag(), '', '', $i + 1, '', $padre);
}
}
}//for

Saludos y gracias