Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
<ul class="view-crud">
<?php
include"includes/config.php";
Conectar();
//infos. da query
$campos_query = "*";
$final_query = "FROM galerias ORDER BY id DESC";
//limite de resultados por página
$maximo = 12;
//declara a página inicial
$pagina = $_GET["pagina"];
if($pagina == "") {
$pagina = "1";
}
//calcula o registro inicial
$inicio = $pagina - 1;
$inicio = $maximo * $inicio;
//conta todos os resultados da query
$strCount = "SELECT COUNT(*) AS 'num_registros' $final_query";
$query = mysql_query($strCount);
$row = mysql_fetch_array($query);
$total = $row["num_registros"];
//inicio da exibição
//executando a query
$sql = mysql_query("SELECT $campos_query $final_query LIMIT $inicio,$maximo");
//exibir valores
while ($linha = mysql_fetch_object($sql)) {
echo'<li>';
echo'<div class="view-con">';
echo'<span><strong>Galeria:</strong>'.$linha->idgaleria.'</span>';
echo'</div>';
echo'<a href="javascript:func()" onclick="delgal('.$linha->id.')" class="btn_del">Excluir</a>';
echo'</li>';
}
//fim da exibição
$menos = $pagina - 1;
$mais = $pagina + 1;
$pgs = ceil($total / $maximo);
if($pgs > 1 ) {
echo "<br />";
echo '<div class="paginacao">';
//mostrar numero de paginas
if($menos > 0) {
echo "<a href=".$_SERVER['PHP_SELF']."?pagina=$menos>anterior</a>";
}
//listar paginas
for($i=1;$i <= $pgs;$i++) {
if($i != $pagina) {
echo " <a href=".$_SERVER['PHP_SELF']."?pagina=".($i).">$i</a>";
} else {
echo " <span class='pgatual'>".$i."</span>";
}
}
if($mais <= $pgs) {
echo " <a href=".$_SERVER['PHP_SELF']."?pagina=$mais>próxima</a>";
}
}
echo'</div>';
?>
</ul>
Tentei com o ajax dessa forma mas acho que está incorreto
$(document).ready(function(){
//executa o evento Click em todos os links do menu
$('.view-crud a').live('click', function() {
$('.view-crud').load($(this).attr('href'));
return false;
});
});
Preciso que ao clicar nas páginas dessa páginação os links não façam refresh na página
>
http://www.mauriciofaustino.com/2009/03/ajax-com-jquery/
vou dar uma olhada nisso agora mesmo
Mas a forma que eu tentei fazer a requisição não é basicamente essa ?
Eu faria dessa forma:
Nos links da paginação colocaria um onclick chamando uma função para atualizar a DIV do conteúdo.
onclick="updateContent(this.name)"
ou algo assim.
Na função apenas chamaria a página com o conteudo e colocaria na DIV, não sendo necessário o "$(document).ready(function(){".
Espero ter ajudado.
Abraços.
>
Eu faria dessa forma:
Nos links da paginação colocaria um onclick chamando uma função para atualizar a DIV do conteúdo.
onclick="updateContent(this.name)"
ou algo assim.
Na função apenas chamaria a página com o conteudo e colocaria na DIV, não sendo necessário o "$(document).ready(function(){".
Espero ter ajudado.
Abraços.
Obrigado vou ir tentando aqui
Não consegui ainda resolucionar meu problema ... tento com o .load() mas não dá sou meio noob em ajax
tente usar o $.get() do jquery:
http://api.jquery.com/jQuery.get/
na url você poderia passar:
paginacao.php?pg=2
>
tente usar o $.get() do jquery:
http://api.jquery.com/jQuery.get/
na url você poderia passar:
paginacao.php?pg=2
mas a paginação está sendo passada desta forma
http://localhost/cliente/index.php?pagina=1
$.get('index.php', function(data) {
$('.thumb-obras').html(data);//div em que está a paginação
alert('Carregado!');
});
$.get é do ajax, não sei como usar nesse caso
Bom, vamos la.
No html, a div que ira receber o conteudo:
<div id="conteudo"></div>
no js:
<script>
function updateContent(page){
$.get('index.php?pagina=' + page, function(data) {
$('.thumb-obras').html(data);
});
}
</script>
Em cada link da páginação (fora da div content) você colocaria a funcao
<a href="javascript:;" onclick="updateContent(1)">1</a>
<a href="javascript:;" onclick="updateContent(2)">2</a>
<a href="javascript:;" onclick="updateContent(3)">3</a>>
Bom, vamos la.
No html, a div que ira receber o conteudo:
<div id="conteudo"></div>
no js:
<script>
function updateContent(page){
$.get('index.php?pagina=' + page, function(data) {
$('.thumb-obras').html(data);
});
}
</script>
Em cada link da páginação (fora da div content) você colocaria a funcao
<a href="javascript:;" onclick="updateContent(1)">1</a>
<a href="javascript:;" onclick="updateContent(2)">2</a>
<a href="javascript:;" onclick="updateContent(3)">3</a>
Eu só quero que troque de link da paginação dentro da propria div .thumb-obras não há necessidade de colocar o conteudo em uma nova div, a parte dos links eu não entendi
porque os links são assim:
if($pgs > 1 ) {
echo "<br />";
echo '<div class="paginacao">';
//mostrar numero de paginas
if($menos > 0) {
echo "<a href=".$_SERVER['PHP_SELF']."?pagina=$menos>anterior</a>";
}
//listar paginas
for($i=1;$i <= $pgs;$i++) {
if($i != $pagina) {
echo " <a href=".$_SERVER['PHP_SELF']."?pagina=".($i).">$i</a>";
} else {
echo " <span class='pgatual'>".$i."</span>";
}
}
if($mais <= $pgs) {
echo " <a href=".$_SERVER['PHP_SELF']."?pagina=$mais>próxima</a>";
}
}Isso só foi um exemplo.
Você terá que chamar a função que atualiza a página nos links, ao invés de você chamar a própria pagina.
echo " <a href='javascript:;' onclick='updateContent({$i})'>{$i}</a>";>
Isso só foi um exemplo.
Você terá que chamar a função que atualiza a página nos links, ao invés de você chamar a própria pagina.
echo " <a href='javascript:;' onclick='updateContent({$i})'>{$i}</a>";
Certo agora entendi obrigado, mas quando clico na paginação ele duplica a pagina index :/ e fica com uma rolagem imensa e só assim a paginação funciona normalmente sem o refresh
Crie uma página só para retornar o conteúdo e deixe a paginação fora da div thumb-obras.
>
Crie uma página só para retornar o conteúdo e deixe a paginação fora da div thumb-obras.
Obrigado brother, pode assinar o tópico já xD
http://www.mauriciofaustino.com/2009/03/ajax-com-jquery/