function puxa_links_host_diferente($site_url, $link_site, $titulo_link_site)
{
    // array com links de hosts diferentes ------------------------------
    global $array_links_host_diferente;
    // array com links de hosts diferentes
    // ----------------------------------------------------------------------------
    // obtendo host de endereco de site e link ------------------------
    $host[0] = retorna_host_url($site_url);
    // host de site
    $host[1] = retorna_host_url($link_site);
    // host de link
    // ----------------------------------------------------------------------------
    // endereco de host diferente ----------------------------------------
    $host_diferente = $host[1];
    // endereco de host diferente
    // ----------------------------------------------------------------------------
    // verifica se hosts sao iguais ----------------------------------------
    if ($host[0] != $host[1]) {
        // atualiza array ----------------------------------------------------------
        if (retorne_elemento_array_existe($array_links_host_diferente, $host_diferente) == false) {
            // atualiza array ----------------------------------------------------------
            $array_links_host_diferente[$host_diferente] = $titulo_link_site;
            // atualiza array
            // ----------------------------------------------------------------------------
            // cadastra proximos hosts a serem indexados no futuro ---
            cadastra_novo_host_indexar($host_diferente);
            // cadastrando hosts
            // ----------------------------------------------------------------------------
        }
        // ----------------------------------------------------------------------------
    }
    // ----------------------------------------------------------------------------
}
function retorna_links_endereco_url($codigo_html_site, $endereco_url_site)
{
    // globals ----------------------------------------------------------------
    global $numero_maximo_links_pagina;
    // numero maximo de links por pagina
    // --------------------------------------------------------------------------
    // host principal ------------------------------------------------------
    $host_site = retorna_host_url($endereco_url_site);
    // host do site
    // --------------------------------------------------------------------------
    // array com dados de retorno ----------------------------------
    $array_dados_retorno = array();
    // array com dados de retorno
    $array_dados_buffer = array();
    // dados de array de buffer temporario
    // --------------------------------------------------------------------------
    // dom com objetos do codigo html ----------------------------
    $dom = new domDocument();
    // dom com objetos do codigo html
    // --------------------------------------------------------------------------
    // obtendo codigo html de site ------------------------------------
    @$dom->loadHTML($codigo_html_site);
    // obtendo codigo html de site
    // --------------------------------------------------------------------------
    // representa documento html por completo ----------------
    $dom->preserveWhiteSpace = false;
    // representa documento html por completo
    // --------------------------------------------------------------------------
    // obtendo dom por tag --------------------------------------------
    $endereco_sites = $dom->getElementsByTagName('a');
    // obtendo dom por tag
    // --------------------------------------------------------------------------
    // obtendo links da pagina ----------------------------------------
    foreach ($endereco_sites as $url_link_principal) {
        // endereco url --------------------------------------------------------
        $endereco_url = $url_link_principal->getAttribute('href');
        // endereco url
        // --------------------------------------------------------------------------
        // endereco url normal, sera usado para verificar se a url nao e null
        // ---- usado apenas para comparacao de valor nulo!
        $endereco_url_normal = $url_link_principal->getAttribute('href');
        // endereco url normal
        // --------------------------------------------------------------------------
        // verifica se o link esta completo --------------------------------
        if (retorna_host_url($endereco_url) == null) {
            // adiciona protocolo e host de link ------------------------------
            $endereco_url = "http://{$host_site}" . $endereco_url;
            // completa link
            // ----------------------------------------------------------------------------
        }
        // --------------------------------------------------------------------------
        // titulo do link ----------------------------------------------------------
        $titulo_link = $url_link_principal->childNodes->item(0)->nodeValue;
        // titulo do link
        // --------------------------------------------------------------------------
        // endereco host de url de link --------------------------------------
        $host_url_link = retorna_host_url($endereco_url);
        // endereco host de url de link
        // --------------------------------------------------------------------------
        // puxa links de host diferentes ----------------------------------
        puxa_links_host_diferente($endereco_url_site, $endereco_url, $titulo_link);
        // puxa links de host diferentes
        // ------------------------------------------------------------------------
        // atualiza array de retorno ----------------------------------------
        if (retorne_elemento_array_existe($array_dados_retorno, $endereco_url) == false and $endereco_url_normal != null and $titulo_link != null and $host_site == $host_url_link) {
            // atualizando array com links de pagina ----------------------
            $array_dados_retorno[$endereco_url] = $titulo_link;
            // atualizando array com links de pagina
            // ------------------------------------------------------------------------
        }
        // --------------------------------------------------------------------------
        // tamanho do array --------------------------------------------------
        $tamanho_array = count($array_dados_retorno);
        // tamanho do array
        // --------------------------------------------------------------------------
        // verifica se atingiu o tamanho de alocacao maximo ------
        if ($tamanho_array > $numero_maximo_links_pagina) {
            break;
            // saindo de foreach
        }
        // --------------------------------------------------------------------------
    }
    // --------------------------------------------------------------------------
    // aloca resultados no buffer --------------------------------------
    $array_dados_buffer = $array_dados_retorno;
    // aloca resultados no buffer
    // --------------------------------------------------------------------------
    // varrendo array de buffer ------------------------------------------
    foreach ($array_dados_buffer as $endereco_url_buffer => $titulo_buffer) {
        // urls de url principal ------------------------------------------------
        $sublinks_array = puxar_sublinks($endereco_url_buffer);
        // urls de url principal
        // --------------------------------------------------------------------------
        // obtendo sublinks e atualizando array de retorno --------
        foreach ($sublinks_array as $url_sublink) {
            // titulo de sublink ----------------------------------------------------
            $titulo_sublink = basename($url_sublink);
            // titulo de sublink
            // ------------------------------------------------------------------------
            // endereco host de url de link --------------------------------------
            $host_url_link = retorna_host_url($url_sublink);
            // endereco host de url de link
            // --------------------------------------------------------------------------
            // puxa links de host diferentes ----------------------------------
            puxa_links_host_diferente($endereco_url_site, $url_sublink, $titulo_sublink);
            // puxa links de host diferentes
            // ------------------------------------------------------------------------
            // atualiza array de retorno ----------------------------------------
            if (retorne_elemento_array_existe($array_dados_retorno, $url_sublink) == false and $url_sublink != null and $host_site == $host_url_link) {
                // atualizando array com links de pagina ------------------------
                $array_dados_retorno[$url_sublink] = $titulo_sublink;
                // atualizando array com links de pagina
                // ------------------------------------------------------------------------
            }
            // --------------------------------------------------------------------------
        }
        // --------------------------------------------------------------------------
        // tamanho do array --------------------------------------------------
        $tamanho_array = count($array_dados_retorno);
        // tamanho do array
        // --------------------------------------------------------------------------
        // verifica se atingiu o tamanho de alocacao maximo ------
        if ($tamanho_array > retorne_tamanho_pode_indexar_site()) {
            break;
            // saindo de foreach
        }
        // --------------------------------------------------------------------------
    }
    // --------------------------------------------------------------------------
    // retorno ----------------------------------------------------------------
    return $array_dados_retorno;
    // retorno
    // --------------------------------------------------------------------------
}
function retorne_primeiro_link_array_pesquisa_inteligente($lista_links, $termo_pesquisa, $host_site)
{
    // globals ----------------------------------------------------------------------------
    global $separador_dados_tabela;
    // separador de dados na tabela
    $busca_exata = retorne_busca_exata();
    // busca exata
    // ----------------------------------------------------------------------------------------
    // link de retorno --------------------------------------------------------------------
    $link_retorno = null;
    // link de retorno
    // ----------------------------------------------------------------------------------------
    // array com termos de pesquisa ------------------------------------
    $array_termos_pesquisa = retorne_array_termos_pesquisa($termo_pesquisa);
    // array com termos de pesquisa
    // ------------------------------------------------------------------------------
    // cria array de links --------------------------------------------------------------
    $array_links = explode($separador_dados_tabela, $lista_links);
    // cria array de links
    // ----------------------------------------------------------------------------------------
    // remove duplicatas se houver ------------------------------------------------
    $array_links = array_unique($array_links);
    // remove duplicatas se houver
    // ----------------------------------------------------------------------------------------
    // verifica se a busca e exata ou parcial ------------------------
    if ($busca_exata == 1) {
        $procurar_ocorrencia_termo = true;
        // busca exata
    } else {
        $procurar_ocorrencia_termo = false;
        // busca nao exata
    }
    // ----------------------------------------------------------------------------
    // varrendo links ------------------------------------------------------------------
    foreach ($array_links as $url_link) {
        // retorna o host da url ----------------------------------------------------------
        $host_url_link = retorna_host_url($url_link);
        // retorna o host da url
        // ----------------------------------------------------------------------------------------
        // termo encontrado dentro de array de links ------------------------------
        if ($host_url_link == $host_site) {
            $resposta_array_contem_link = retorne_array_site_contem_termo_pesquisa($array_termos_pesquisa, $url_link);
            // resposta se o array contem o primeiro link
            $termo_encontrado_resposta = $resposta_array_contem_link[0];
            // termo encontrado dentro de array de links
        } else {
            $termo_encontrado_resposta = false;
            // termo nao encontrado
        }
        // ----------------------------------------------------------------------------------------
        // verifica se o link tem o termo de pesquisa ----------------------------
        if ($termo_encontrado_resposta == $procurar_ocorrencia_termo) {
            // link de retorno ----------------------------------------------------------------
            $link_retorno = $url_link;
            // link de retorno
            // ------------------------------------------------------------------------------------
            // parando laco foreach ------------------------------------------------------
            break;
            // parando laco foreach
            // ------------------------------------------------------------------------------------
        }
        // ----------------------------------------------------------------------------------------
    }
    // ----------------------------------------------------------------------------------------
    // retorno com link ----------------------------------------------------------------
    return $link_retorno;
    // retorno com link
    // ----------------------------------------------------------------------------------------
}
function separa_imagens_busca($imagens_site_geral, $host_site)
{
    global $separador_dados_tabela;
    // separador de dados em tabela
    global $numero_maximo_imagens_host_busca_inteligente;
    // numero maximo de imagens a exibir por host de pesquisa no modo imagens
    $busca_exata = retorne_busca_exata();
    // busca exata
    $termo_pesquisa = termo_pesquisa_get();
    // termo de pesquisa
    $array_termos_pesquisa = retorne_array_termos_pesquisa($termo_pesquisa);
    // array com termos de pesquisa
    $array_imagens = explode($separador_dados_tabela, $imagens_site_geral);
    // array de dados de imagens
    $array_imagens = array_unique($array_imagens);
    // removendo duplicatas
    $contador = 0;
    // contador de resultados encontrados
    if ($busca_exata == 1) {
        $procurar_ocorrencia_termo = true;
        // busca exata
    } else {
        $procurar_ocorrencia_termo = false;
        // busca nao exata
    }
    foreach ($array_imagens as $url_imagem) {
        $host_imagem = retorna_host_url($url_imagem);
        // host de imagem
        if ($host_imagem == null) {
            $url_imagem = "http://" . $host_site . "/" . $url_imagem;
            // completa url de imagem em caso de host nulo
        }
        $titulo_imagem = basename($url_imagem);
        // titulo da imagem
        if ($host_imagem != null) {
            $imagem_encontrada .= "<a href='{$url_imagem}' target='_blank'>";
            // imagem encontrada
            $imagem_encontrada .= "<img class='imagem_resposta_busca_inteligente' src='{$url_imagem}' alt='{$titulo_imagem}' title='{$titulo_imagem}'>";
            // imagem encontrada
            $imagem_encontrada .= "</a>";
            // imagem encontrada
        }
        $titulo_imagem = strtolower($titulo_imagem);
        // converte titulo de imagem para minusculo
        $termo_encontrado_resposta = retorne_array_site_contem_termo_pesquisa($array_termos_pesquisa, $url_imagem);
        // termo encontrado dentro de array de links
        $termo_encontrado_resposta = $termo_encontrado_resposta[0];
        // verifica se encontrou o link da imagem
        if ($termo_encontrado_resposta == $procurar_ocorrencia_termo) {
            $imagem_completa .= $imagem_encontrada;
            // imagem completa
            $contador++;
            // atualiza o contador
            if ($contador >= $numero_maximo_imagens_host_busca_inteligente) {
                return $imagem_completa;
                // retorno
            }
        }
        $imagem_encontrada = null;
        // limpando
    }
    return $imagem_completa;
    // retorno
}
function puxar_sublinks($endereco_url_principal)
{
    // globals --------------------------------------------------------------
    global $numero_maximo_sublinks_pagina;
    // numero maximo de sublinks por pagina
    global $busca_sublinks_ativada;
    // informa se a busca por subpaginas esta ativada ou desativada
    // --------------------------------------------------------------------------
    // array de retorno com links ----------------------------------------
    $array_retorno_links = array();
    // array de retorno com links
    // ----------------------------------------------------------------------------
    // verifica se o modo de subpaginas esta ativado ----------
    if ($busca_sublinks_ativada == false) {
        return $array_retorno_links;
        // retorno nulo
    }
    // --------------------------------------------------------------------------
    // host principal ------------------------------------------------------
    $host_site = retorna_host_url($endereco_url_principal);
    // host do site
    // --------------------------------------------------------------------------
    // cria sessao http ------------------------------------------------------
    $requisicao_http = curl_init();
    // cria sessao http
    // ----------------------------------------------------------------------------
    // define parametros --------------------------------------------------
    curl_setopt($requisicao_http, CURLOPT_URL, $endereco_url_principal);
    // The url to get links from
    curl_setopt($requisicao_http, CURLOPT_RETURNTRANSFER, true);
    // We want to get the respone
    // ----------------------------------------------------------------------------
    // resultados --------------------------------------------------------------
    $resultados_requisicao = curl_exec($requisicao_http);
    // resultados
    // ----------------------------------------------------------------------------
    // codigo para pegar epanas link ----------------------------------
    $regex = '|<a.*?href="(.*?)"|';
    // codigo para pegar epanas link
    // ----------------------------------------------------------------------------
    // pegando links --------------------------------------------------------
    preg_match_all($regex, $resultados_requisicao, $parts);
    // pegando links
    // ----------------------------------------------------------------------------
    // links encontrados ----------------------------------------------------
    $links_encontrados = $parts[1];
    // links encontrados
    // ----------------------------------------------------------------------------
    // contador ----------------------------------------------------------------
    $contador = 0;
    // contador
    // ----------------------------------------------------------------------------
    // separando links ------------------------------------------------------
    foreach ($links_encontrados as $url_link) {
        // atualiza array de retorno ------------------------------------------
        if ($url_link != null) {
            // verifica se o link esta completo --------------------------------
            if (retorna_host_url($url_link) == null) {
                $url_link = "http://{$host_site}" . $url_link;
                // completa link
            }
            // ----------------------------------------------------------------------------
            // atualiza array de retorno ------------------------------------------
            $array_retorno_links[] = $url_link;
            // atualiza array de retorno
            // ----------------------------------------------------------------------------
            // atualizando contador ----------------------------------------------
            $contador++;
            // atualizando contador
            // ----------------------------------------------------------------------------
            // verifica se ja atingiu o limite --------------------------------------
            if ($contador > $numero_maximo_sublinks_pagina) {
                break;
                // parando laco
            }
            // ----------------------------------------------------------------------------
        }
        // ----------------------------------------------------------------------------
    }
    // ----------------------------------------------------------------------------
    // fecha requisicao ------------------------------------------------------
    curl_close($requisicao_http);
    // fechando
    // ----------------------------------------------------------------------------
    // retorno ------------------------------------------------------------------
    return $array_retorno_links;
    // retorno
    // ----------------------------------------------------------------------------
}
function retorne_array_site_contem_termo_pesquisa($array_termos_pesquisa, $url_link)
{
    // retorna o host da url ----------------------------------------------------------
    $host_url_link = retorna_host_url($url_link);
    // retorna o host da url
    // ----------------------------------------------------------------------------------------
    // titulo do link ----------------------------------------------------------------------
    $titulo_link = basename($url_link);
    // titulo do link
    // ----------------------------------------------------------------------------------------
    // converte titulo para minusculo --------------------------------------------
    $titulo_link = strtolower($titulo_link);
    // converte titulo para minusculo
    // --------------------------------------------------------------------------------------
    // array de retorno ----------------------------------------------------------------
    $array_retorno = array();
    // array de retorno
    // --------------------------------------------------------------------------------------
    // obtendo termos de pesquisa de array ----------------------------------
    foreach ($array_termos_pesquisa as $termo_pesquisa_array) {
        // retorna url de imagem -------------------------
        if (retorne_modo_pesquisa() == 2) {
            $url_link = retorna_url_imagem_string($url_link);
            // url de imagem
        }
        // --------------------------------------------------------
        // valida link ------------------------------------------
        if ($url_link == null) {
            return null;
            // retorno nulo
        }
        // --------------------------------------------------------
        // verifica se a busca e exata -------------------
        if (retorne_busca_exata() == 1) {
            // verifica se termo existe em array ------------
            if (strpos($url_link, $termo_pesquisa_array) == true) {
                // atualizando array --------------------------------
                $array_retorno[0] = true;
                // retorno verdadeiro
                $array_retorno[1] = $url_link;
                // endereco de link
                // --------------------------------------------------------
                // parando foreach --------------------------------
                break;
                // parando foreach
                // --------------------------------------------------------
            } else {
                // atualizando array --------------------------------
                $array_retorno[0] = false;
                // retorno falso
                $array_retorno[1] = $url_link;
                // sem link
                // --------------------------------------------------------
                // parando foreach --------------------------------
                break;
                // parando foreach
                // --------------------------------------------------------
            }
            // --------------------------------------------------------
        } else {
            // verifica se termo existe em array ------------
            if (strpos($url_link, $termo_pesquisa_array) == true or strpos($url_link, $termo_pesquisa_array) == false) {
                // atualizando array --------------------------------
                $array_retorno[0] = false;
                // retorno verdadeiro
                $array_retorno[1] = $url_link;
                // endereco de link
                // --------------------------------------------------------
                // parando foreach --------------------------------
                break;
                // parando foreach
                // --------------------------------------------------------
            }
            // --------------------------------------------------------
        }
        // --------------------------------------------------------
    }
    // --------------------------------------------------------------------------------------
    // retorna array --------------------------------------
    return $array_retorno;
    // retorna array
    // --------------------------------------------------------
}
function puxar_subimagens($endereco_url_principal)
{
    // globals --------------------------------------------------------------
    global $numero_maximo_subimagens_pagina;
    // numero maximo de subimagens por pagina
    // --------------------------------------------------------------------------
    // host principal ------------------------------------------------------
    $host_site = retorna_host_url($endereco_url_principal);
    // host do site
    // --------------------------------------------------------------------------
    // array de retorno com imagens ----------------------------------------
    $array_retorno_imagens = array();
    // array de retorno com imagens
    // ----------------------------------------------------------------------------
    // cria sessao http ------------------------------------------------------
    $requisicao_http = curl_init();
    // cria sessao http
    // ----------------------------------------------------------------------------
    // define parametros --------------------------------------------------
    curl_setopt($requisicao_http, CURLOPT_URL, $endereco_url_principal);
    // The url to get imagens from
    curl_setopt($requisicao_http, CURLOPT_RETURNTRANSFER, true);
    // We want to get the respone
    // ----------------------------------------------------------------------------
    // resultados --------------------------------------------------------------
    $resultados_requisicao = curl_exec($requisicao_http);
    // resultados
    // ----------------------------------------------------------------------------
    // codigo para pegar epanas imagem ----------------------------------
    $regex = '|<img.*?src="(.*?)"|';
    // codigo para pegar epanas imagem
    // ----------------------------------------------------------------------------
    // pegando imagens --------------------------------------------------------
    preg_match_all($regex, $resultados_requisicao, $parts);
    // pegando imagens
    // ----------------------------------------------------------------------------
    // imagens encontrados ----------------------------------------------------
    $imagens_encontrados = $parts[1];
    // imagens encontrados
    // ----------------------------------------------------------------------------
    // contador ----------------------------------------------------------------
    $contador = 0;
    // contador
    // ----------------------------------------------------------------------------
    // separando imagens ------------------------------------------------------
    foreach ($imagens_encontrados as $url_imagem) {
        // titulo da imagem --------------------------------------------------------
        $titulo_imagem = basename($url_imagem);
        // titulo da imagem
        // --------------------------------------------------------------------------------
        // atualiza array de retorno ------------------------------------------------
        if ($url_imagem != null) {
            // verifica se o imagem esta completo --------------------------------
            if (retorna_host_url($url_imagem) == null) {
                $url_imagem = "http://{$host_site}" . $url_imagem;
                // completa imagem
            }
            // ----------------------------------------------------------------------------
            // atualiza array de retorno ------------------------------------------
            $array_retorno_imagens[$url_imagem] = $titulo_imagem;
            // url de imagem
            // ----------------------------------------------------------------------------
            // atualizando contador ----------------------------------------------
            $contador++;
            // atualizando contador
            // ----------------------------------------------------------------------------
            // verifica se ja atingiu o limite --------------------------------------
            if ($contador > $numero_maximo_subimagens_pagina) {
                break;
                // parando laco
            }
            // ----------------------------------------------------------------------------
        }
        // ----------------------------------------------------------------------------
    }
    // ----------------------------------------------------------------------------
    // fecha requisicao ------------------------------------------------------
    curl_close($requisicao_http);
    // fechando
    // ----------------------------------------------------------------------------
    // retorno ------------------------------------------------------------------
    return $array_retorno_imagens;
    // retorno
    // ----------------------------------------------------------------------------
}
function adicionar_novo_host($endereco_url_site)
{
    // globals --------------------------------------------------------------------------
    global $nome_banco;
    // nome do banco de dados a salvar
    global $numero_maximo_registros_busca_inteligente;
    // numero maximo de registros por banco de dados
    global $banco_dados_atingiu_limite_resposta;
    // informa se para ou continua adicao de novos sites
    global $array_links_host_diferente;
    // array com links de hosts diferentes
    // --------------------------------------------------------------------------------------
    // nao permite continuar se url nao for valida ------------------------------
    if ($endereco_url_site == null) {
        return false;
        // retorna falso
    }
    // --------------------------------------------------------------------------------------
    // dados de cabecalho de host, url --------------------------------------------
    $dados_cabecalho_host_url = parse_url($endereco_url_site);
    // dados
    // --------------------------------------------------------------------------------------
    // protocolo do host do site ------------------------------------------------------
    $protocolo_host_site = $dados_cabecalho_host_url['scheme'];
    // protocolo do host do site
    // --------------------------------------------------------------------------------------
    // adiciona protocolo http ao host do site ------------------------------------
    if ($protocolo_host_site == null) {
        $endereco_url_site = "http://" . $endereco_url_site;
        // adiciona protocolo http ao host do site
    }
    // --------------------------------------------------------------------------------------
    // seleciona banco de dados ----------------------------------------------------
    mysql_select_db($nome_banco);
    // seleciona banco de dados
    // ------------------------------------------------------------------------------------------
    // retorna o numero de registros no banco de dados --------------------
    $numero_registros_banco_dados = retorne_numero_registros_banco_dados($nome_banco);
    // retorna o numero de registros no banco de dados
    // --------------------------------------------------------------------------------------
    // verifica se o banco atintiu o limite de dados ----------------------------
    if ($numero_registros_banco_dados > $numero_maximo_registros_busca_inteligente) {
        $banco_dados_atingiu_limite_resposta = true;
        // informa para parar
    }
    // --------------------------------------------------------------------------------------
    // codigo html do site ----------------------------------------------------------
    $codigo_html_site = url_get_contents($endereco_url_site);
    // codigo html do site
    // --------------------------------------------------------------------------------------
    // codifica para unicode se necessario --------------------------------------------------
    $codigo_html_site = codificacao_unicode($codigo_html_site);
    // codificando
    // --------------------------------------------------------------------------------------
    // dados gerais do site --------------------------------------------------------
    $dados_gerais_site = retorne_dados_gerais_site($codigo_html_site, $endereco_url_site);
    // dados gerais do site
    // --------------------------------------------------------------------------------------
    // enderecos url de site --------------------------------------------------------
    $enderecos_url_site_array = retorna_links_endereco_url($codigo_html_site, $endereco_url_site);
    // enderecos url de site
    // --------------------------------------------------------------------------------------
    // array com imagens do site ------------------------------------------------
    $imagens_site_array_url = retorna_imagens_endereco_url($codigo_html_site, $endereco_url_site);
    // imagens do site
    // --------------------------------------------------------------------------------------
    // dados de links ----------------------------------------------------------------
    $dados_links = separa_dados_obtidos_links_salvar($enderecos_url_site_array);
    // dados de links
    // --------------------------------------------------------------------------------------
    // valida numero de links do site ---------------------------------------------
    if (count($dados_links) == 0) {
        return null;
        // retorno nulo
    }
    // --------------------------------------------------------------------------------------
    // contador --------------------------------------------------------------------------
    $contador = 0;
    // contador
    // ----------------------------------------------------------------------------------------
    // separando dados de links de site ------------------------------------------
    for ($contador == $contador; $contador <= count($dados_links); $contador++) {
        // obtendo listas de links --------------------------------------------------------
        $titulo_link_lista .= $dados_links[$contador][0];
        // titulos de links
        $url_link_lista .= $dados_links[$contador][1];
        // titulos de links
        // ----------------------------------------------------------------------------------------
    }
    // ----------------------------------------------------------------------------------------
    // contador --------------------------------------------------------------------------
    $contador = 0;
    // contador
    // ----------------------------------------------------------------------------------------
    // separando dados de links de site ------------------------------------------
    for ($contador == $contador; $contador <= count($array_links_host_diferente); $contador++) {
        // obtendo listas de links --------------------------------------------------------
        $titulo_link_host_diferente_lista .= $dados_links[$contador][0];
        // titulos de links
        $url_link_host_diferente_lista .= $dados_links[$contador][1];
        // titulos de links
        // ----------------------------------------------------------------------------------------
    }
    // ----------------------------------------------------------------------------------------
    // dados array de imagens ------------------------------------------------------
    $dados_imagens = $imagens_site_array_url;
    // dados array de imagens
    // ------------------------------------------------------------------------------------------
    // contador ----------------------------------------------------------------------------
    $contador = 0;
    // contador
    // ------------------------------------------------------------------------------------------
    // separando dados de imagem ----------------------------------------------
    for ($contador == $contador; $contador <= count($dados_imagens); $contador++) {
        // obtendo dados da imagem --------------------------------------------------
        $dados_array_imagem = $dados_imagens[$contador];
        // dados
        // ------------------------------------------------------------------------------------------
        // separando dados da imagem ------------------------------------------------
        $imagem_url_lista .= $dados_array_imagem[$contador][0];
        // url
        $imagem_titulo_lista .= $dados_array_imagem[$contador][1];
        // titulo
        $imagem_alt_lista .= $dados_array_imagem[$contador][2];
        // alt
        // ------------------------------------------------------------------------------------------
    }
    // ------------------------------------------------------------------------------------------
    // dados basicos do site ----------------------------------------------------------
    $titulo_site = $dados_gerais_site['title'];
    // titulo do site
    $url_pagina = $endereco_url_site;
    // url da pagina
    $descricao_site = $dados_gerais_site['description'];
    // descricao do site
    $palavras_chave_site = $dados_gerais_site['keywords'];
    // palavras chave do site
    $host_site = retorna_host_url($endereco_url_site);
    // host do site
    $tabela_salvar_site = retorne_tabela_salvar_site();
    // tabela para salvar o site
    $data = date('d:m:y');
    // data
    // ------------------------------------------------------------------------------------------
    // remove codificacao especial de dados ------------------------------------
    $host_site = remove_html($host_site);
    // remove codigo especial
    $url_pagina = remove_html($url_pagina);
    // remove codigo especial
    $titulo_site = remove_html($titulo_site);
    // remove codigo especial
    $palavras_chave_site = remove_html($palavras_chave_site);
    // remove codigo especial
    $descricao_site = remove_html($descricao_site);
    // remove codigo especial
    $url_link_lista = remove_html($url_link_lista);
    // remove codigo especial
    $url_link_host_diferente_lista = remove_html($url_link_host_diferente_lista);
    // remove codigo especial
    $imagem_url_lista = remove_html($imagem_url_lista);
    // remove codigo especial
    $conteudo_site = remove_html($codigo_html_site);
    // remove codigo especial
    $data = remove_html($data);
    // remove codigo especial
    // ------------------------------------------------------------------------------------------
    // query para atualizar tabela ----------------------------------------------------
    $query_atualizar_tabela .= "'null', ";
    // query para atualizar tabela
    $query_atualizar_tabela .= "'{$url_pagina}', ";
    // query para atualizar tabela
    $query_atualizar_tabela .= "'{$host_site}', ";
    // query para atualizar tabela
    $query_atualizar_tabela .= "'{$titulo_site}', ";
    // query para atualizar tabela
    $query_atualizar_tabela .= "'{$palavras_chave_site}', ";
    // query para atualizar tabela
    $query_atualizar_tabela .= "'{$descricao_site}', ";
    // query para atualizar tabela
    $query_atualizar_tabela .= "'{$url_link_lista}', ";
    // query para atualizar tabela
    $query_atualizar_tabela .= "'{$url_link_host_diferente_lista}', ";
    // query para atualizar tabela
    $query_atualizar_tabela .= "'{$imagem_url_lista}', ";
    // query para atualizar tabela
    $query_atualizar_tabela .= "'{$conteudo_site}', ";
    // query para atualizar tabela
    $query_atualizar_tabela .= "'{$data}'";
    // query para atualizar tabela
    // ------------------------------------------------------------------------------------------
    // resposta se o host esta cadastrado ou e novo --------------------------
    $host_cadastrado_resposta = retorne_host_cadastrado_existe($host_site);
    // resposta se o host esta cadastrado ou e novo
    // ------------------------------------------------------------------------------------------
    // salvando no banco de dados --------------------------------------------------
    if ($host_site != null) {
        // query ----------------------------------------------------------------------------------
        $query[1] = "delete from {$tabela_salvar_site} where host_site='{$host_site}';";
        // query para remover dados
        $query[2] = "insert into {$tabela_salvar_site} values({$query_atualizar_tabela});";
        // query
        // --------------------------------------------------------------------------------------------
        // executa o comando query ------------------------------------------------------
        if ($host_cadastrado_resposta == false) {
            // novo host ------------------------------------------------------------------------------
            comando_executa($query[2]);
            // executa o comando query
            // --------------------------------------------------------------------------------------------
        } else {
            // atualiza host existente ----------------------------------------------------------
            comando_executa($query[1]);
            // executa o comando query
            comando_executa($query[2]);
            // executa o comando query
            // --------------------------------------------------------------------------------------------
        }
        // --------------------------------------------------------------------------------------------
    }
    // --------------------------------------------------------------------------------------------
    // mensagem de sucesso ----------------------------------------------------------
    $mensagem_sucesso .= "{$host_site}";
    // mensagem de sucesso
    $mensagem_sucesso .= "&nbsp;";
    // mensagem de sucesso
    $mensagem_sucesso .= "adicionado com sucesso.";
    // mensagem de sucesso
    // --------------------------------------------------------------------------------------------
    // mensagem de sucesso ------------------------------------------------------------
    echo $mensagem_sucesso;
    // mensagem de sucesso
    // --------------------------------------------------------------------------------------------
}