Jump to content


Photo

Script De Paginação Funcionado, Mas Não Cria Os Links


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

#1 F.R - Desenvolvimentos

F.R - Desenvolvimentos

    Novato no fórum

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

Posted 29/05/2007, 08:32

Bom Dia galera !

Venho mais uma vez pedir a ajuda de vocês...

Estou usando um script de paginação de noticias, está paginando normalmente, tudo parece estar beleza nos script, mas tem um problema ele não cria os links para acessar as notícias aparece a lista das notícias. mas não dá para clicar em alguma e ir para a notícia.

Como resolver este problema que parece estar fácil de ser resolvido, mas não tenho mais idéias para colocar no script e fazer ele criar os links.
Se alguém puder me ajudar segue o código da páginação e uma imagem de como esta funcionando o script abaixo:

<? 
// bloco 1 - conecte-se ao banco de dados
$con = mysql_pconnect('localhost','citynews','jornal'); // host, usuário, senha
mysql_select_db('citynews'); // banco de dados


// bloco 2 - defina o número de registros exibidos por página
$num_por_pagina = 6;

// bloco 3 - descubra o número da página que será exibida
// se o numero da página não for informado, definir como 1
if (!$pagina) {
   $pagina = 1;
}


// bloco 4 - construa uma cláusula SQL "SELECT" que nos retorne somente os registros desejados
// definir o número do primeiro registro da página. Faça a continha na calculadora que você entenderá minha fórmula.
$primeiro_registro = ($pagina*$num_por_pagina) - $num_por_pagina;

// consulta apenas os registros da página em questão utilizando como auxílio a definição LIMIT. Ordene os registros pela quantidade de pontos, começando do maior para o menor DESC.
$consulta = "SELECT data, titulo FROM noticias ORDER BY data DESC LIMIT $primeiro_registro, $num_por_pagina";
// executar query
$res = mysql_query($consulta,$con);


// bloco 5 - exiba os registros na tela
echo "<ul>"; while (list($data, $titulo) = mysql_fetch_array($res)) {
echo "<li> $data - $titulo";
}
echo "</ul>";


// bloco 6 - construa e exiba um painel de navegabilidade entre as páginas
$consulta = "SELECT COUNT(*) FROM noticias";
list($total_noticias) = mysql_fetch_array(mysql_query($consulta,$con));

$total_paginas = $total_noticias/$num_por_pagina;

$prev = $pagina - 1;
$next = $pagina + 1;
// se página maior que 1 (um), então temos link para a página anterior
if ($pagina > 1) {
$prev_link = "<a href=\"$PHP_SELF?pagina=$prev\">Anterior</a>";
} else { // senão não há link para a página anterior
$prev_link = "Anterior";
}

// se número total de páginas for maior que a página corrente, então temos link para a próxima página
if ($total_paginas > $pagina) {
$next_link = "<a href=\"$PHP_SELF?pagina=$next\">Próxima";
} else { // senão não há link para a próxima página
$next_link = "Próxima";
}

// vamos arredondar para o alto o número de páginas que serão necessárias para exibir todos os registros. Por exemplo, se temos 20 registros e mostramos 6 por página, nossa variável $total_paginas será igual a 20/6, que resultará em 3.33. Para exibir os 2 registros restantes dos 18 mostrados nas primeiras 3 páginas (0.33), será necessária a quarta página. Logo, sempre devemos arredondar uma fração de número real para um inteiro de cima e isto é feito com a função ceil().
$total_paginas = ceil($total_paginas);
$painel = "";
for ($x=1; $x<=$total_paginas; $x++) {
  if ($x==$pagina) { // se estivermos na página corrente, não exibir o link para visualização desta página
	$painel .= " [$x] ";
  } else {
	$painel .= " <a href=\"$PHP_SELF?pagina=$x\">[$x]</a>";
  }
}


// exibir painel na tela
echo "$prev_link | $painel | $next_link";
?>


Attached File  not2.GIF   20.81KB   13 downloads

#2 silici0

silici0

    ?

  • Usuários
  • 902 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP
  • Interesses:PHP, MySQL, XHTML, CSS, AJAX, JavaScript, Objective-C, Python, Games ... #geek

Posted 29/05/2007, 08:59

echo "<li> $data - $titulo";

Ai é o local onde deve estar o link: <a href="pagina_do_link.php" >$titulo</a>

Abraços
Procurando freelancer
***********************************************
Bachelor of Technology in Technology of Information, with great knowledge in Windows operating systems and Unix-Like (BSD, Ubuntu and Slackware), languages (PHP, JavaScript and MySQL), semantic (DHTML, Tableless, Ajax, MVC, OO) and analysis (manages projects based on PMI).
Developer in PHP, JAVA, Python, Objective-c MySQL, DHTML, CSS, JAVASCRIPT, JQUERY, JSON, SMARTY, MDB2, DOCTRINE, CAKEPHP. Linux desktop for work and MacOS. E-commerces, CRM and bussiness strategys
Love-me and be FREE use UniCes-Like .

#3 rockeiroarck

rockeiroarck

    12 Horas

  • Usuários
  • 137 posts
  • Sexo:Não informado
  • Interesses:artes, programação, linux, php, baladas, diversão, e muito rock and roll!!

Posted 11/08/2008, 20:49

echo "<li> $data - $titulo";

Ai é o local onde deve estar o link: <a href="pagina_do_link.php" >$titulo</a>

Abraços



Conseguiu resolver brother??
--
Brimages - Hospedagem de Imagem Gratis - PSD, GIF, JPG, PNG
www.brimages.com.br




0 user(s) are reading this topic

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

IPB Skin By Virteq