Sistema de busca de urls para Auto Surf
Autor: Marcelo E. Schinaecher | Publicado: 2012-08-30T14:48:00-03:00


Olá amiguinhos, neste artigo quero compartilhar com vocês uma ferramenta muito importante que o Kebra Gaio Auto Surf utiliza para pesquisar sites no painel de controle.
É um sistema de busca avançada que lhe auxiliará muito na administração de seu auto surf.
Nós administradores sabemos que quando aparece um site com problemas ou vírus em nosso banco de dados é sempre uma tremenda dor de cabeça achar o site, visto que o script de auto surf não possui buscador de urls.
Com esse script basta apenas você digitar um trecho da url que a pagina fará a busca com paginação de resultados, mostrando dados sobre o site, como status e créditos e link direto para edição do site.
O script deve ser inserido em sua pasta "control" de seu surf para funcionar corretamente.
Você pode escolher por baixar o script clicando aqui! ou copiando o código abaixo:
Obs: Dependendo do modelo de seu script algumas caracteristicas (estilos visuais precisam ser editados).

&lt;?
session_start();
session_register("asess_name");
session_register("asess_passwd");
session_register("asess_data");
include("../vars.php");
include("menu.php");
include("adminauth.incl.php");
mysql_connect($db_host, $db_user, $db_pwd);
mysql_select_db($db_name);
adminAuth();
$header = "&lt;img src=img/headeradmin.png width=1090 height=120 border=0&gt;\n";
echo("$header&lt;script language=\"JavaScript\" type=\"text/javascript\" src=\"/clock.js\"&gt;&lt;/script&gt;&lt;table border=1 width=1080 cellpadding=10 class=\"font-size: 10pt; font-family: $fontface\"&gt;&lt;tr&gt;&lt;td width=20% align=center valign=top style=\"border-right: thin solid black; font-size: 10pt; font-family: $fontface\" bgcolor=\"$admincolor\"&gt;&lt;hr color=\"$admincolor\" width=\"145\"&gt;");
while (list($key, $val) = each($menu2)) {
&nbsp;&nbsp;&nbsp; if ($key == $y) {echo("&lt;b&gt;&lt;img src=img/seta.png border=0&gt;&lt;br&gt;");}
&nbsp;&nbsp;&nbsp; echo($val);
&nbsp;&nbsp;&nbsp; if ($key == $y) {echo("&lt;br&gt;&lt;img src=img/seta.png border=0&gt;&lt;/b&gt;");}
&nbsp;&nbsp;&nbsp; echo("&lt;/a&gt;");
&nbsp;&nbsp;&nbsp; echo("&lt;br&gt;");
}
echo("&lt;br&gt;&lt;font face=\"Verdana\" size=1&gt;&lt;b&gt;Hora atual: ".date("H:i:s")."&lt;/b&gt;&lt;br&gt;&lt;span id=\"disp\"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/td&gt;&lt;td align=left valign=top width=80%&gt;");
?&gt;
&lt;title&gt;Busca avançada de sites&lt;/title&gt;
&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div style="color: #38761d;"&gt;
&lt;b&gt;Busca avançada de sites:&lt;/b&gt;&lt;/div&gt;
&lt;div style="color: #38761d;"&gt;
&lt;b&gt;Digite apenas o domínio sem (http:// ou www) Ex. nomedosite.com os resultados de sua busca serão exibidos abaixo.&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;

&lt;form method="GET" action="busca.php"&gt;
&lt;fieldset&gt;
&lt;label for="consulta"&gt;Buscar:&lt;/label&gt;
&lt;input type="text" id="consulta" name="consulta" size="90" maxlength="255" /&gt;
&lt;input type="submit" value="Pesquisar" /&gt;
&lt;/fieldset&gt;
&lt;/form&gt;

&lt;?php

// Configuração do script
// ========================
$_BS['PorPagina'] = 20; // NÃºmero de registros por pÃ¡gina
// Verifica se foi feita alguma busca
// Caso contrario, redireciona o visitante
if (!isset($_GET['consulta'])) {

exit;
}
// Salva o que foi buscado em uma variável
$busca = $_GET['consulta'];
// Usa a funÃ§Ã£o mysql_real_escape_string() para evitar erros no MySQL
$busca = mysql_real_escape_string($busca);

// ============================================

// Monta a consulta MySQL para saber quantos registros serão encontrados
$sql = "SELECT COUNT(*) AS total FROM `site` WHERE ((`url` LIKE '%".$busca."%') OR ('%".$busca."%'))";
// Executa a consulta
$query = mysql_query($sql);
// Salva o valor da coluna 'total', do primeiro registro encontrado pela consulta
$total = mysql_result($query, 0, 'total');
// Calcula o mÃ¡ximo de paginas
$paginas =&nbsp; (($total % $_BS['PorPagina']) &gt; 0) ? (int)($total / $_BS['PorPagina']) + 1 : ($total / $_BS['PorPagina']);

// ============================================

// Sistema simples de paginação, verifica se há algum argumento 'pagina' na URL
if (isset($_GET['pagina'])) {
$pagina = (int)$_GET['pagina'];
} else {
$pagina = 1;
}
$pagina = max(min($paginas, $pagina), 1);
$inicio = ($pagina - 1) * $_BS['PorPagina'];

// ============================================

// Monta outra consulta MySQL, agora a que fará a busca com paginação
$sql = "SELECT * FROM `site` WHERE ((`url` LIKE '%".$busca."%') OR ('%".$busca."%')) ORDER BY `id` LIMIT ".$inicio.", ".$_BS['PorPagina'];
// Executa a consulta
$query = mysql_query($sql);

// ============================================

// Começa a exibição dos resultados
echo "&lt;p&gt;Resultados ".min($total, ($inicio + 1))." - ".min($total, ($inicio + $_BS['PorPagina']))." de ".$total." resultados encontrados para '".$_GET['consulta']."'&lt;/p&gt;";
// &lt;p&gt;Resultados 1 - 20 de 138 resultados encontrados para 'minha busca'&lt;/p&gt;

echo "&lt;ul&gt;";
while ($resultado = mysql_fetch_assoc($query)) {
$titulo = $resultado['url'];
$texto = $resultado['id'];
$credits = $resultado['credits'];
$status = $resultado['state'];
$link = 'index.php?y=4&amp;u=' . $resultado['id'];
echo "&lt;li&gt;";
echo '&lt;p&gt;Site ID: '.$texto.' &amp;nbsp;&amp;nbsp;&amp;nbsp; Créditos: '.$credits.'&amp;nbsp;&amp;nbsp;&amp;nbsp; Status: '.$status.'';
echo '&lt;br&gt;&lt;a href="'.$link.'" title="'.$titulo.'"&gt;'.$titulo.'&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;';
echo "&lt;/li&gt;";
}
echo "&lt;/ul&gt;";

// ============================================

// Começa a exibição dos paginadores
if ($total &gt; 0) {
for($n = 1; $n &lt;= $paginas; $n++) {
echo '&lt;a href="?consulta='.$_GET['consulta'].'&amp;pagina='.$n.'"&gt;'.$n.'&lt;/a&gt;&amp;nbsp;&amp;nbsp;';
}
}

?&gt;



Obs: Este código original foi modificado e aperfeiçoado para este tipo de função:
o código original pode ser obtido abaixo:

Artigo originalmente publicado em 
12 de maio de 2009 por <a href="http://thiagobelem.net/" title="Thiago Belem, Desenvolvedor 
PHP">Thiago Belem: Sistema de 
busca em PHP e MySQL com paginação