Jump to content


Photo

Paginação Código Google


  • Faça o login para participar
5 replies to this topic

#1 jkennedyjr

jkennedyjr

    Novato no fórum

  • Usuários
  • 16 posts
  • Sexo:Não informado

Posted 26/03/2005, 01:44

ae galera.... desculpem eu estar postanto novamente eh q naum obtive respostas no meu post anterior.... bom no mais eu peguei um script que faz busca na base de dados do google em um site que disponibiliza scripts em php.... só q o sistema de paginação deste script não está funcionando... alguém sabe concertar este bug ou me dar algumas sugestões??

este é o código:

<? include"head.htm";?><?
/*

meta.php

Pequeno sistema de metabusca escrito em PHP que busca resultados no Google e na te respondo.

Escrito por: Samuel de sousa Santos

http://buscas.br5.com.br
*/


function busca($search,$pg) {

// Essa função conecta ao Google e retorna os resultados da busca

global $tr;

$fp    = fsockopen ("www.google.com", 80, $errno);

if ($fp) {

  $conectar =  "Get /search?num=30&hl=pt&q=$search&btnG=Pesquisa+Google&lr=lang_pt&start=$pg HTTP/1.0\r\nHost: www.google.com\r\n\r\n";

  fputs ($fp, $conectar);

  $resultado = "";

  while (!feof($fp)) {

  $resultado .= fgets ($fp,128);

}
  fclose ($fp);

$resultado = ereg_replace("\n","",$resultado);

$eng      = "/<p class=g><a href=(.*?)>(.*?)<\/a><br><font size=-1>(.*?)<br>/";

  preg_match_all($eng,$resultado,$matches);


  $exp_reg_total_resultados = "/<\/b> de <b>(.*?)<\/b>. A pesquisa/";

  preg_match_all($exp_reg_total_resultados,$resultado,$total_resultados);

  $tr  = formata_valor($total_resultados[1][0]) * 1;

}

return $matches;

}


function formata_valor($valor) {

// funcao usada para formatar o valor dos resultados

$valor    = str_replace(".","",$valor);

$valor    = str_replace(",","",$valor);

return $valor;
}


/*

Início do código
*/


$search = substr($q,0,255); // limitar a 255 caracteres a busca

$search = urlencode(stripslashes($search));

$tr    = 0; // total de resultados

$pg    = ($pg * 5); // páginas

$matches= busca($search,$pg); // resultados da pesquisa

$num    = count($matches[0]); // número de resultados da pesquisa na página


echo '


<form>

<input type="text" size="15" maxlength="255" name="q" value="">

<input type="submit" value="Buscar">

</form>

';


// Imprime os resultados
// inclui a pesquisa da te respondo
echo " <center><a href:'formulario.php'>Incluir seu site</a></center><br>";
for($x=0;$x<$num;$x++) {

  $url = $matches[1][$x];

  $title = $matches[2][$x];

  $description = $matches[3][$x];
 
  echo "<br><a href=$url>$title<br></a>$description<br>$url<br>\n";

}


$numero_paginas = ceil($tr / 30); // arredonda o número de páginas


echo "<br><br>";


if (($numero_paginas > 1) && ($pg > 0)) {

echo '<a href="busca.php?q='.$search.'&pg='.($pg - 30).'"> << Anterior </a> &nbsp;';
}

if (($numero_paginas > 1) && ($pg < $numero_paginas)) {

echo '&nbsp; <a href="busca.php?q='.$search.'&pg='.($pg + 30).'"> Próxima >> </a>';
}


?><? include"footer.htm";?>


desde já agradeço :D

#2 together

together

    AFCweb

  • Usuários
  • 282 posts
  • Sexo:Masculino
  • Localidade:Araraquara - SP
  • Interesses:aaaa

Posted 26/03/2005, 02:08

eu tb quero saber isso ae!!!
e tb tenho otra duvida... qdo busco po hospedagem, host, rock
num aparece nada... sera q eh soh aqui??

#3 jkennedyjr

jkennedyjr

    Novato no fórum

  • Usuários
  • 16 posts
  • Sexo:Não informado

Posted 26/03/2005, 16:27

olá together... eu busquei por host e apareceu direitinho aqui mas demorou para aparecer os resultados... já o hospedagem e host não concigui ver....

se descobrir algo sobre a paginação posta ai ok??

obrigado (y)

#4 together

together

    AFCweb

  • Usuários
  • 282 posts
  • Sexo:Masculino
  • Localidade:Araraquara - SP
  • Interesses:aaaa

Posted 26/03/2005, 21:17

eu vo da uma analizada do codigo e tenta faze a paginação se eu consegui eu te mando por mp!!

#5 jkennedyjr

jkennedyjr

    Novato no fórum

  • Usuários
  • 16 posts
  • Sexo:Não informado

Posted 26/03/2005, 21:49

blz... eu vou ver o que eu posso fazer também.... eu sou iniciante em php não sei nada :( ... to tentando migrar do asp para php.... vai ser um pouco complicado :D

valew... se algum membro do fórum souber o erro do código poste aqui também.. blz??

falowz (y)

#6 together

together

    AFCweb

  • Usuários
  • 282 posts
  • Sexo:Masculino
  • Localidade:Araraquara - SP
  • Interesses:aaaa

Posted 26/03/2005, 22:06

if($q != "") {
if($_GET['pg'] != 0){
$a = $_GET['pg'] - 30;
echo "<a href=\"busca.php?q=$search&pg=$a\"> << Anterior </a> &nbsp;";
} else { echo " << Anterior &nbsp;"; }
}


olha a parte dp << Anterior eu consegui!!
agora ta complicado a parte do Proximo >>
pq eu num sei qtos resultados foram gerado
alguem ae sabe como vejo qtos resultados foram gerados com "tal" palavra chave???
vlw!!

Edição feita por: together, 26/03/2005, 22:07.





1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq