function limit_query_topicos() { // globals ------------------------------------------------ global $limite_resultados_pagina_topicos; // numero de limite // -------------------------------------------------------- // pagina atual ------------------------------------------- $pagina_atual = pagina_atual_get(); // pagina atual // -------------------------------------------------------- // calcula limit ------------------------------------------ $pagina_atual = $pagina_atual * $limite_resultados_pagina_topicos; // calcula limit // -------------------------------------------------------- // limite ------------------------------------------------- $limite = "order by id desc limit {$pagina_atual}, {$limite_resultados_pagina_topicos}"; // limite // -------------------------------------------------------- // retorno ------------------------------------------------ return $limite; // retorno // -------------------------------------------------------- }
function limit_query_geral_sem_id() { // globals ------------------------------------------------ global $numero_maximo_resultados_pagina_busca_inteligente; // numero de limite // -------------------------------------------------------- // pagina atual ------------------------------------------- $pagina_atual = pagina_atual_get(); // pagina atual // -------------------------------------------------------- // calcula limit ------------------------------------------ $pagina_atual *= $numero_maximo_resultados_pagina_busca_inteligente; // calcula limit // -------------------------------------------------------- // limite ------------------------------------------------- $limite = "limit {$pagina_atual}, {$numero_maximo_resultados_pagina_busca_inteligente}"; // limite // -------------------------------------------------------- // retorno ------------------------------------------------ return $limite; // retorno // -------------------------------------------------------- }
function retorna_query_pesquisa($termo_pesquisa) { // globals ------------------------------------------------------------------ global $tamanho_limite_busca_inteligente_query; // este e o tamanho limite na busca query, isto evita uma busca desnecessaria em todo o banco de dados $pagina_numero = pagina_atual_get(); // numero da pagina atual // ------------------------------------------------------------------------------ // tabela --------------------------------------------------------------------- $tabela = retorne_tabela_salvar_site(); // tabela // ------------------------------------------------------------------------------ // pega pagina atual ---------------------------------------------------- $pagina_atual = $pagina_numero; // pega pagina atual // ------------------------------------------------------------------------------ // verifica se pagina atual e valida ---------------------------------- if ($pagina_atual == null or is_numeric($pagina_atual) == false or $pagina_atual < 0) { // zera contadores de pagina ------------------------------------------ $pagina_atual = 0; // zera contadores de pagina $pagina_numero = 0; // zera contadores de pagina // ------------------------------------------------------------------------------ } // ------------------------------------------------------------------------------ // calculando limite de query ------------------------------------------ $query_limite_inicio = $pagina_numero * $tamanho_limite_busca_inteligente_query; // inicio de query $query_limite_fim = $tamanho_limite_busca_inteligente_query; // fim de query // ------------------------------------------------------------------------------ // condicao de limite ------------------------------------------------------ $condicao_limite = "LIMIT {$query_limite_inicio}, {$query_limite_fim}"; // condicao de limite // ------------------------------------------------------------------------------ // array com termos de pesquisa ------------------------------------ $array_termos_pesquisa = retorne_array_termos_pesquisa($termo_pesquisa); // array com termos de pesquisa // ------------------------------------------------------------------------------ // numero de termos de pesquisa ---------------------------------- $numero_termos_pesquisa = count($array_termos_pesquisa); // numero de termos de pesquisa // ------------------------------------------------------------------------------ // contador de termos de pesquisa -------------------------------- $contador_termos_pesquisa = 1; // contador de termos de pesquisa // ------------------------------------------------------------------------------ // campos de pesquisa geral ----------------------------------------- if (retorne_modo_pesquisa() == 1) { // links ------------------------------------------------------------------------ $campos_tabela_pesquisar[0] .= "host_site like '%{$termo_pesquisa}%' "; // campos de pesquisa $campos_tabela_pesquisar[0] .= "or url_pagina like '%{$termo_pesquisa}%' "; // campos de pesquisa $campos_tabela_pesquisar[0] .= "or titulo_site like '%{$termo_pesquisa}%' "; // campos de pesquisa $campos_tabela_pesquisar[0] .= "or keywords_site like '%{$termo_pesquisa}%' "; // campos de pesquisa $campos_tabela_pesquisar[0] .= "or description_site like '%{$termo_pesquisa}%' "; // campos de pesquisa $campos_tabela_pesquisar[0] .= "or links_internos_site like '%{$termo_pesquisa}%' "; // campos de pesquisa $campos_tabela_pesquisar[0] .= "or links_externos_site like '%{$termo_pesquisa}%' "; // campos de pesquisa $campos_tabela_pesquisar[0] .= "or conteudo_site like '%{$termo_pesquisa}%' "; // campos de pesquisa // ------------------------------------------------------------------------------ } else { // imagens ------------------------------------------------------------------ $campos_tabela_pesquisar[0] .= "host_site like '%{$termo_pesquisa}%' "; // campos de pesquisa $campos_tabela_pesquisar[0] .= "or url_pagina like '%{$termo_pesquisa}%' "; // campos de pesquisa $campos_tabela_pesquisar[0] .= "or titulo_site like '%{$termo_pesquisa}%' "; // campos de pesquisa $campos_tabela_pesquisar[0] .= "or keywords_site like '%{$termo_pesquisa}%' "; // campos de pesquisa $campos_tabela_pesquisar[0] .= "or description_site like '%{$termo_pesquisa}%' "; // campos de pesquisa $campos_tabela_pesquisar[0] .= "or imagens_site_geral like '%{$termo_pesquisa}%' "; // campos de pesquisa $campos_tabela_pesquisar[0] .= "or conteudo_site like '%{$termo_pesquisa}%' "; // campos de pesquisa // ------------------------------------------------------------------------------ } // ------------------------------------------------------------------------------ // campos de pesquisa geral ----------------------------------------- if (retorne_modo_pesquisa() == 1) { // links ------------------------------------------------------------------------ $campos_tabela_pesquisar[1] .= "links_internos_site like '%{$termo_pesquisa}%' "; // campos de pesquisa // ------------------------------------------------------------------------------ } else { // imagens ------------------------------------------------------------------ $campos_tabela_pesquisar[1] .= "imagens_site_geral like '%{$termo_pesquisa}%' "; // campos de pesquisa // ------------------------------------------------------------------------------ } // ------------------------------------------------------------------------------ // campos de pesquisa ------------------------------------------------ if ($numero_termos_pesquisa == 1) { // campos de pesquisa ------------------------------------------------ if (retorne_busca_exata() == 1) { // links ------------------------------------------------------------------------ $campos_pesquisa = $campos_tabela_pesquisar[1]; // exata // ------------------------------------------------------------------------------ } else { // imagens ------------------------------------------------------------------ $campos_pesquisa = $campos_tabela_pesquisar[0]; // todos // ------------------------------------------------------------------------------ } // ------------------------------------------------------------------------------ } else { // obtendo termos de pesquisa de array -------------------------- foreach ($array_termos_pesquisa as $termo_pesquisa_array) { // verifica se termo pesquisa possui conteudo ------------------ if ($termo_pesquisa_array != null) { // campos de pesquisa ------------------------------------------------ if (retorne_busca_exata() == 1) { // modo de pesquisa --------------------------------------------------- if (retorne_modo_pesquisa() == 1) { // link -------------------------------------------------- if ($contador_termos_pesquisa == 1) { // atualiza contador ------------------------------- $contador_termos_pesquisa++; // atualiza contador // ------------------------------------------------------- // campos de pesquisa -------------------------- $campos_pesquisa = " links_internos_site like '%{$termo_pesquisa_array}%' "; // campos de pesquisa // ------------------------------------------------------- } else { // campos de pesquisa -------------------------- $campos_pesquisa .= "or links_internos_site like '%{$termo_pesquisa_array}%' "; // campos de pesquisa // ------------------------------------------------------- } // -------------------------------------------------------- } else { // imagem -------------------------------------------- if ($contador_termos_pesquisa == 1) { // atualiza contador ------------------------------- $contador_termos_pesquisa++; // atualiza contador // -------------------------------------------------------- // campos de pesquisa -------------------------- $campos_pesquisa = " imagens_site_geral like '%{$termo_pesquisa_array}%' "; // campos de pesquisa // -------------------------------------------------------- } else { // campos de pesquisa -------------------------- $campos_pesquisa .= "or imagens_site_geral like '%{$termo_pesquisa_array}%' "; // campos de pesquisa // -------------------------------------------------------- } // -------------------------------------------------------- } // -------------------------------------------------------- } else { // modo de pesquisa --------------------------------------------------- if (retorne_modo_pesquisa() == 1) { // aplica une tabelas ------------------------------ if ($contador_termos_pesquisa == 1) { // atualiza contador ------------------------------- $contador_termos_pesquisa++; // atualiza contador // ------------------------------------------------------- // codigo unir tabelas ---------------------------- $une_tabelas = "or "; // codigo unir tabelas // ------------------------------------------------------- } else { // codigo unir tabelas ---------------------------- $une_tabelas = null; // codigo unir tabelas // ------------------------------------------------------- } // -------------------------------------------------------- // campos de pesquisa -------------------------- $campos_pesquisa .= "host_site like '%{$termo_pesquisa_array}%' "; // campos de pesquisa $campos_pesquisa .= "or url_pagina like '%{$termo_pesquisa_array}%' "; // campos de pesquisa $campos_pesquisa .= "or titulo_site like '%{$termo_pesquisa_array}%' "; // campos de pesquisa $campos_pesquisa .= "or keywords_site like '%{$termo_pesquisa_array}%' "; // campos de pesquisa $campos_pesquisa .= "or description_site like '%{$termo_pesquisa_array}%' "; // campos de pesquisa $campos_pesquisa .= "or links_internos_site like '%{$termo_pesquisa_array}%' "; // campos de pesquisa $campos_pesquisa .= "or links_externos_site like '%{$termo_pesquisa_array}%' "; // campos de pesquisa $campos_pesquisa .= "or conteudo_site like '%{$termo_pesquisa_array}%' {$une_tabelas}"; // campos de pesquisa // ------------------------------------------------------- } else { // aplica une tabelas ------------------------------ if ($contador_termos_pesquisa == 1) { // atualiza contador ------------------------------- $contador_termos_pesquisa++; // atualiza contador // ------------------------------------------------------- // codigo unir tabelas ---------------------------- $une_tabelas = "or "; // codigo unir tabelas // ------------------------------------------------------- } else { // codigo unir tabelas ---------------------------- $une_tabelas = null; // codigo unir tabelas // ------------------------------------------------------- } // -------------------------------------------------------- // campos de pesquisa -------------------------- $campos_pesquisa .= "host_site like '%{$termo_pesquisa_array}%' "; // campos de pesquisa $campos_pesquisa .= "or url_pagina like '%{$termo_pesquisa_array}%' "; // campos de pesquisa $campos_pesquisa .= "or titulo_site like '%{$termo_pesquisa_array}%' "; // campos de pesquisa $campos_pesquisa .= "or keywords_site like '%{$termo_pesquisa_array}%' "; // campos de pesquisa $campos_pesquisa .= "or description_site like '%{$termo_pesquisa_array}%' "; // campos de pesquisa $campos_pesquisa .= "or imagens_site_geral like '%{$termo_pesquisa_array}%' "; // campos de pesquisa $campos_pesquisa .= "or conteudo_site like '%{$termo_pesquisa_array}%' {$une_tabelas}"; // campos de pesquisa // -------------------------------------------------------- } // -------------------------------------------------------- } // ------------------------------------------------------------------------------ } // ------------------------------------------------------------------------------ } // ------------------------------------------------------------------------------ } // ------------------------------------------------------------------------------ // querys de retorno ----------------------------------------------------- $querys_retorno[0] = "select *from {$tabela} where {$campos_pesquisa} {$condicao_limite};"; // limite $querys_retorno[1] = "select *from {$tabela} where {$campos_pesquisa};"; // completa // ------------------------------------------------------------------------------ // retorno ------------------------------------------------------------------- return $querys_retorno; // retorno // ------------------------------------------------------------------------------ }
function monta_pagina_inicial() { $modo_pesquisa = retorne_modo_pesquisa(); // modo de pesquisa $pagina_numero = pagina_atual_get(); // pagina atual $busca_exata = retorne_busca_exata(); // busca exata global $nome_do_sistema; // nome do sistema global $url_do_servidor; // url de servidor global $resultados_busca_termos; // resultados de pesquisa global $opcoes_busca_site; // opcoes de busca global $descricao_basica_site_meta_tag; // descricao do site global $nome_desenvolvedor_projeto; // nome do desenvolvedor global $tags_site; // tags do site global $endereco_url_arquivos; // endereco url de arquivos $termo_pesquisa = termo_pesquisa_get(); // termo de pesquisa $titulo_pagina = $nome_do_sistema; // titulo da pagina $url_pesquisa_completa[1] = "index.php?termo_pesquisa={$termo_pesquisa}&modo_pesquisa=1&busca_exata={$busca_exata}"; // url de pesquisa completa $url_pesquisa_completa[2] = "index.php?termo_pesquisa={$termo_pesquisa}&modo_pesquisa=2&busca_exata={$busca_exata}"; // url de pesquisa completa if ($termo_pesquisa != null) { $pesquisa_atual .= "<div class='div_modos_pesquisa'>"; // pesquisa atual $pesquisa_atual .= "<a href='{$url_pesquisa_completa['1']}' class='classe_links_opcoes_busca' title='Web'>{$opcoes_busca_site['1']}</a>"; // pesquisa atual $pesquisa_atual .= "<a href='{$url_pesquisa_completa['2']}' class='classe_links_opcoes_busca' title='Imagens'>{$opcoes_busca_site['2']}</a>"; // pesquisa atual $pesquisa_atual .= "</div>"; // pesquisa atual $pesquisa_atual .= "<br>"; // pesquisa atual $pesquisa_atual .= "<div class='div_termo_pesquisa_atual'>"; // pesquisa atual $pesquisa_atual .= "Pesquisando por "; // pesquisa atual $pesquisa_atual .= "<a href='{$url_pesquisa_completa['1']}' title='{$termo_pesquisa}'>"; // pesquisa atual $pesquisa_atual .= "<b>"; // pesquisa atual $pesquisa_atual .= $termo_pesquisa; // pesquisa atual $pesquisa_atual .= "</b>"; // pesquisa atual $pesquisa_atual .= "</a>"; // pesquisa atual $pesquisa_atual .= "</div>"; // pesquisa atual $pesquisa_atual .= $resultados_busca_termos; // pesquisa atual } $codigo_html_pagina .= "<html>"; // codigo html da pagina inicial $codigo_html_pagina .= "<head>"; // codigo html da pagina inicial $codigo_html_pagina .= "<meta charset='UTF-8'>"; // codigo html da pagina inicial $codigo_html_pagina .= "<meta name='description' content='{$descricao_basica_site_meta_tag}'>"; // codigo html da pagina inicial $codigo_html_pagina .= "<meta name='author' content='{$nome_desenvolvedor_projeto}'>"; // codigo html da pagina inicial $codigo_html_pagina .= "<meta name='keywords' content='{$tags_site}'>"; // codigo html da pagina inicial $codigo_html_pagina .= "<link rel='stylesheet' type='text/css' href='{$endereco_url_arquivos['3']}'>"; // codigo html da pagina inicial $codigo_html_pagina .= "<link rel='stylesheet' type='text/css' href='{$endereco_url_arquivos['1']}'>"; // codigo html da pagina inicial $codigo_html_pagina .= ""; // codigo html da pagina inicial $codigo_html_pagina .= ""; // codigo html da pagina inicial $codigo_html_pagina .= "<meta name='viewport' content='width=device-width'/>"; // codigo html da pagina inicial $codigo_html_pagina .= "<title>"; // codigo html da pagina inicial $codigo_html_pagina .= $titulo_pagina; // codigo html da pagina inicial $codigo_html_pagina .= "</title>"; // codigo html da pagina inicial $codigo_html_pagina .= "</head>"; // codigo html da pagina inicial $codigo_html_pagina .= "<body>"; // codigo html da pagina inicial $codigo_html_pagina .= "<div class='div_corpo_pagina'>"; // codigo html da pagina $codigo_html_pagina .= barra_topo_pagina_inicial(); // codigo html da pagina inicial $codigo_html_pagina .= "<div id='div_painel_principal_pagina_inicial'>"; // codigo html da pagina inicial $codigo_html_pagina .= barra_pesquisa_pagina_inicial(); // codigo html da pagina inicial $codigo_html_pagina .= $pesquisa_atual; // codigo html da pagina inicial $codigo_html_pagina .= "</div>"; // codigo html da pagina inicial $codigo_html_pagina .= barra_rodape_pagina_inicial(); // codigo html da pagina inicial $codigo_html_pagina .= "</div>"; // codigo html da pagina $codigo_html_pagina .= "</body>"; // codigo html da pagina inicial $codigo_html_pagina .= "<script type='text/javascript' src='{$endereco_url_arquivos['0']}'></script>"; // codigo html da pagina inicial $codigo_html_pagina .= "<script type='text/javascript' src='{$endereco_url_arquivos['2']}'></script>"; // codigo html da pagina inicial $codigo_html_pagina .= "</html>"; // codigo html da pagina inicial return $codigo_html_pagina; // retorno }
function proximas_paginas_busca_inteligente($numero_resultados) { // globals ---------------------------------------------------------------------------- global $numero_maximo_resultados_pagina_busca_inteligente; // numero maximo de resultados por paginas global $numero_proximas_pagina_mudar_index; // numero de paginas proximas paginas que podem ser exibidas $modo_pesquisa = retorne_modo_pesquisa(); // modo de pesquisa $pagina_numero = pagina_atual_get(); // pagina atual $busca_exata = retorne_busca_exata(); // busca exata // ---------------------------------------------------------------------------------------- // termo de pesquisa -------------------------------------------------- $termo_pesquisa = termo_pesquisa_get(); // termo de pesquisa // ---------------------------------------------------------------------------- // calcula numero de paginas pode formar ------------------------------ $numero_paginas = $numero_resultados / $numero_maximo_resultados_pagina_busca_inteligente; // calculando $numero_paginas = round($numero_paginas); // arredonda // ---------------------------------------------------------------------------------------- // se o numero de paginas for apenas 1 ou menos 0 retorne nulo -- if ($numero_paginas <= 1) { return null; // retorno nulo } // ---------------------------------------------------------------------------------------- // contador -------------------------------------------------------------------------- $contador[0] = $pagina_numero - 5; // contador $contador[1] = 1; // subcontador de numero de links por pagina // ---------------------------------------------------------------------------------------- // links para proximas paginas ------------------------------------------------ for ($contador[0] == $contador[0]; $contador[0] <= $numero_paginas; $contador[0]++) { // proxima pagina ------------------------------------------------------------------ $proxima_pagina_numero = $contador[0]; // proxima pagina // ---------------------------------------------------------------------------------------- // texto de link indicando numero de proxima pagina ------------------ $proxima_pagina_numero_texto = $proxima_pagina_numero + 1; // texto de link // ---------------------------------------------------------------------------------------- // atualiza subcontador de links ---------------------------------------------- if ($proxima_pagina_numero >= 0) { $contador[1]++; // atualiza subcontador de links } // ---------------------------------------------------------------------------------------- // verifica se atingiu o limite de links proximas pagina por pesquisa if ($contador[1] > $numero_proximas_pagina_mudar_index) { break; // saindo de for } // ---------------------------------------------------------------------------------------- // url de pagina -------------------------------------------------------------------- if ($pagina_numero != $proxima_pagina_numero) { // link para proxima pagina ------------------------------------------------------ $url_pagina .= "<a href='index.php?termo_pesquisa={$termo_pesquisa}&modo_pesquisa={$modo_pesquisa}&pagina_numero={$proxima_pagina_numero}&busca_exata={$busca_exata}' class='btn btn-primary btn-xs'>"; // url de pagina $url_pagina .= $proxima_pagina_numero_texto; // url de pagina $url_pagina .= "</a>"; // url de pagina $url_pagina .= " "; // url de pagina $url_pagina .= " "; // url de pagina // ---------------------------------------------------------------------------------------- } else { // informa a pagina que esta -------------------------------------------------- $url_pagina .= "<font size='7'><b>"; // url de pagina $url_pagina .= "<a href='index.php?termo_pesquisa={$termo_pesquisa}&modo_pesquisa={$modo_pesquisa}&pagina_numero={$proxima_pagina_numero}&busca_exata={$busca_exata}'>"; // url de pagina $url_pagina .= $proxima_pagina_numero_texto; // url de pagina $url_pagina .= "</a>"; // url de pagina $url_pagina .= " "; // url de pagina $url_pagina .= " "; // url de pagina $url_pagina .= "</b></font>"; // url de pagina // ---------------------------------------------------------------------------------------- } // ---------------------------------------------------------------------------------------- // se o numero de proxima pagina for negativo url e nula ------------ if ($proxima_pagina_numero < 0) { $url_pagina = null; // url de pagina } // ---------------------------------------------------------------------------------------- } // ---------------------------------------------------------------------------------------- // pagina anterior e proxima -------------------------------------------------- $pagina_anterior = $pagina_numero - 1; // pagina anterior $pagina_posterior = $proxima_pagina_numero + 1; // proxima pagina // ---------------------------------------------------------------------------------------- // link pagina anterior ------------------------------------------------------------ if ($pagina_anterior > -1) { $links[0] = "<a href='index.php?termo_pesquisa={$termo_pesquisa}&modo_pesquisa={$modo_pesquisa}&pagina_numero={$pagina_anterior}&busca_exata={$busca_exata}'>Anterior</a>"; // primeiro link } // ---------------------------------------------------------------------------------------- // link para proxima pagina ------------------------------------------------------ if ($pagina_posterior < $numero_paginas) { $links[1] = "<a href='index.php?termo_pesquisa={$termo_pesquisa}&modo_pesquisa={$modo_pesquisa}&pagina_numero={$pagina_posterior}&busca_exata={$busca_exata}'>Mais</a>"; // ultimo link } // ---------------------------------------------------------------------------------------- // lista com links de retorno ---------------------------------------------------- $lista_links_retorno .= "<div class='div_lista_links_retorno'>"; // lista com links de retorno $lista_links_retorno .= $links[0]; // lista com links de retorno $lista_links_retorno .= " "; // lista com links de retorno $lista_links_retorno .= " "; // lista com links de retorno $lista_links_retorno .= $url_pagina; // lista com links de retorno $lista_links_retorno .= " "; // lista com links de retorno $lista_links_retorno .= " "; // lista com links de retorno $lista_links_retorno .= $links[1]; // lista com links de retorno $lista_links_retorno .= "</div>"; // lista com links de retorno // ---------------------------------------------------------------------------------------- // retorno ------------------------------------------------------------------------------ return $lista_links_retorno; // retorno // ---------------------------------------------------------------------------------------- }