last day (21 days later) » 

10:12 PM
olá tudo bem?
 
oi boa noite, tive um dia cheio não pude dar continuidade, mas e aí resolveu seu problema?
 
ainda não
 
você tem o código no ar para dar uma olhada?
pois o seu post carece de detalhes quando a página é processada, não colou o código fonte de saída
 
será que tens um tempinho para me tentares ajudar
antes de postar o código posso só explicar
eu tenho um menu que chama cinco divs
 
sim eu achei aquela mudança mas deve ser algo mais, pois não entendi sobre atualizar/não atualizar, explique por favor
 
10:19 PM
desta forma
<div class="menu2">
<nav class="navbar navbar-default" style="background-color: #d3d3d3">
<div class="container-fluid">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-11" aria-expanded="false" style="float: left">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
para cada uma das divs criei paginação
tudo na mesma página
ao mudar de paginação de um dos botoes que tenho no menu, atualiza a página e volta sempre à forma inicial da página
será que me consegui fazer entender?
 
entendi, você perde os parâmetros da página anterior
 
sim
quer que cole aqui o código completo da minha página
 
tem alguns modos de resolver, o com o uso de cookies, ou você passando o parâmetro que está definido na url da página, para a próxima página, com o parâmetro de cada paginação.
o exemplo de enviar os parâmetros é assim, ?pagina=2 como está, deveria incrementar ?pagina=2&par=X&par2=Y
se todas as paginacoes tratam a URL com o parametro do mesmo nome, voce tera problemas, pois seu codigo nao sabe identificar se o parametro é para X,Y,Z,W DIV
 
o que quer dizer isto ?pagina=2&par=X&par2=Y
 
ou voce muda para ex:
DIV1 paginação:
?paginacao1=0
?paginacao2=0
?paginacao3=0
e assim para os outros, onde 0 é o valor de $i, como já está sendo feito
e para cada paginação, você deve incluir
ex:
?paginacao1=$i&paginacao2=$_GET['paginacao2']&paginacao3=$_GET['paginacao3'] .........
assim o seu código vai entender que ?paginacao1 é para a paginação da DIV "1"
e paginacao2= para a paginação da DIV 2
e assim vai
 
10:26 PM
isso é o que pretendo
mas não entendi muito bem a solução que apresentou
 
par=X é o parâmetro e o seu valor, ex: par = paginacao e X é o níumero da página
sabe aqui?
<li <?php echo $estilo; ?> ><a href="?pagina=<?php echo $i+1; ?>"><?php echo $i+1; ?></a></li>
 
pode exemplificar com as duas div que tenho na pergunta de forma a eu entender?
 
faz de conta que essa é a paginação de uma div
 
é a primeira vez que estou a usar a paginação
sim
na linha onde deu a sua resposta para eu alterar
 
você deve deixar assim
<li <?php echo $estilo; ?> ><a href="?pagina1=<?php echo $i+1; ?>&pagina2=<?php echo $_GET['pagina2']; ?>&pagina3=<?php echo $_GET['pagina3']; ?>&pagina4=<?php echo $_GET['pagina4']; ?>&pagina5=<?php echo $_GET['pagina5']; ?>"><?php echo $i+1; ?></a></li>
essa seria paginação da DIV numero 1
a da segunda DIV seria:

<li <?php echo $estilo; ?> ><a href="?pagina1=<?php echo $_GET['pagina1']; ?>&pagina2=<?php echo $i+1; ?>&pagina3=<?php echo $_GET['pagina3']; ?>&pagina4=<?php echo $_GET['pagina4']; ?>&pagina5=<?php echo $_GET['pagina5']; ?>"><?php echo $i+1; ?></a></li>
viu que o for () da segunda div foi passado para a pagina2=
pois é a paginacao da pagina 2, e para a div 3, passar o for() para a pagina 3
e as outras sempre recebem o metodo get que vem da URL
assim voce distingue uma da outra e o seu codigo consegue entender qual é de qual
e tambem a alteracao para cada paginacao que recebe o valor $_GET relacionado a cada paginacao, ex:

$pagina = $_GET['pagina'] para $pagina1 = $_GET['pagina1']
e para a segunda paginacao
$pagina = $_GET['pagina'] para $pagina2 = $_GET['pagina2']
e assim vai
qual o seu nivel de entendimento de programação?
 
10:31 PM
intermédio
tudo que aprendi foi sozinho
pesquisando e colocando em prática
na universidade só tive java
e visual basic
vou tentar colocar em prática o exemplo que colocou
 
entendi, blza, e voce tem online a pagina? porque assim é mais esclarecedora vendo o erro em ambiente de produção, assim estático como texto para esse nivel de problema não dá para ver como fica, e nem simular o código tem disponível no stackoverflow
 
está em servidor local
não está online
o problema está mesmo onde falou
eu vou mostrar aqui o código direito e você vê logo o problema
pode ser
 
claro que sim
 
ok
código da 1 div
$itens_por_pagina = 10;

$pagina = intval($_GET['pagina']);
if (!$pagina) {
$pc = "0";
} else {
$pc = $pagina;
}
$inicio = $pc - 0;
$inicio = $inicio * $itens_por_pagina;

$query = "SELECT Id, De, Assunto, Conteudo, Prioridade, TIME_FORMAT(Recebido,'%h:%i') AS Hora, DATE(Recebido) AS Data,
Email, Tipo, raddb.Alertas.Para, Status FROM raddb.Alertas LEFT OUTER JOIN raddb.ValAlertas
ON raddb.ValAlertas.IdSMS = raddb.Alertas.Id AND raddb.ValAlertas.Para = raddb.Alertas.Para
WHERE raddb.Alertas.Para = '$colaborador'
$num_total = $conn->query("SELECT Id, De, Assunto, Conteudo, Prioridade, TIME_FORMAT(Recebido,'%h:%i') AS Hora, DATE(Recebido) AS Data,
Email, Tipo, raddb.Alertas.Para, Status FROM raddb.Alertas LEFT OUTER JOIN raddb.ValAlertas
ON raddb.ValAlertas.IdSMS = raddb.Alertas.Id AND raddb.ValAlertas.Para = raddb.Alertas.Para
WHERE raddb.Alertas.Para = '$colaborador'
ORDER BY Recebido Desc")->num_rows;

$num_paginas = ceil($num_total/$itens_por_pagina);
até aqui foi o php
agora a div
<section id="s1">
<div id="minhaDiv">
<div class="col-lg-4">
<h1>Alerta Recebido</h1>
<?php if($num > 0){ ?>
<table class="table table-hover table-striped">
<tr>
<th width="20%" style="text-align:center;">De</th>
<th width="60%" style="text-align:center;">Assunto</th>
<th width="10%" style="text-align:center;">Prioridade</th>
<th width="10%" style="text-align:center;">Recebido</th>
</tr>
<tr>
<?php

do{

if($nomede != $produto["De"]){
?>
<th width="10%" colspan=4>Recebido: <?php echo $produto["Data"]; ?></th>
 
outro detalhe
for($i=0;$i<$num_paginas;$i++){
seu for() precisa ser definido em 1
pois a primeira página não é 0, e sim a 1
php em um laço o zero é util para o cursor de array ou associativos
 
10:43 PM
o php da segunda div é igual só acrescento o numero um às variáveis
e aqui nesta linha $pagina = intval($_GET['pagina']); fica $pagina1 = intval($_GET['pagina1']); para a segunda div
e continuo assim até à quinta div
pelo que expliuei o problema é o que referiu acima certo?
 
um momento
estou verificando o codigo todo
entao vc precisa fazer este incremento
na primeira div ficará assim
<li <?php echo $estilo; ?> ><a href="?pagina=<?php echo $i; ?>&pagina1=<?php echo $_GET['pagina1']; ?>"><?php echo $i+1; ?></a></li>
e na div 2, ficará assim
<li <?php echo $estilo; ?> ><a href="?pagina1=<?php echo $i; ?>&pagina=<?php echo $_GET['pagina']; ?>"><?php echo $i+1; ?></a></li>
para a primeira DIV, ?pagina = $i
para a segunda DIV, ?pagina1 = $i
e mais o parametro da outra div para cada uma
DIV 1,
?pagina=$i&pagina1=$_GET['pagina1']
e o inverso para outra
DIV 1
<li <?php echo $estilo; ?> ><a href="?pagina=<?php echo $i; ?>&pagina1=<?php echo $_GET['pagina1']; ?>"><?php echo $i+1; ?></a></li>


DIV 2
<li <?php echo $estilo; ?> ><a href="?pagina1=<?php echo $i; ?>&pagina=<?php echo $_GET['pagina']; ?>"><?php echo $i+1; ?></a></li>
e se quiser melhorar o seu código, no for(), deixe assim para ambas:

for($i=1;$i<$num_paginas;$i++){

..........

}
 
e na div3
 
e <?php echo $i+1; ?></a></li>
altera para:
<?php echo $i; ?></a></li>
ai vc adiciona o pagina2=$_GET['pagina2'];
adiciona todos os get, para todas as DIV
 
sim
 
5 get
se houver 6 DIVS, são 6 DIVS, e assim sucessivamente
só alterando a posição do valor $i para ?paginaX de cada div
 
10:53 PM
ok
 
exemplo para 2 divs, num total de 5 divs
para melhorar
DIV 1:

<li <?php echo $estilo; ?> ><a href="?pagina=<?php echo $i; ?>&pagina1=<?php echo $_GET['pagina1']; ?>&pagina2=<?php echo $_GET['pagina2']; ?>&pagina3=<?php echo $_GET['pagina3']; ?>&pagina4=<?php echo $_GET['pagina4']; ?>"><?php echo $i+1; ?></a></li>

DIV 2:

<li <?php echo $estilo; ?> ><a href="?pagina=<?php echo $_GET['pagina']; ?>&pagina1=<?php echo $i; ?>&pagina2=<?php echo $_GET['pagina2']; ?>&pagina3=<?php echo $_GET['pagina3']; ?>&pagina4=<?php echo $_GET['pagina4']; ?>"><?php echo $i+1; ?></a></li>
para as 5 divs
agora um detalhe, voce tem todas as variaveis
$pagina =
$pagina1 =
.......
 
sim
 
pelo cenário que você me mostrou, o que faltava era isso, se houver mais alguma discordância, ainda tem algo no código
que precisa de mais ajustes
 
vou só testar com as primeiras duas primeiras div
 
mas como é necessário ver o código em execução pela quantidades de linhas de código, e não tem como, fica difícil
mas partindo desses ajustes, é um avanço.
volto em 5min blz
 
11:00 PM
mas ainda continua a fazer o mesmo
vou colocar aqui o código das duas divs
primeira div
<section id="s1">
<div id="minhaDiv">
<div class="col-lg-4">
<h1>Alerta Recebido</h1>
<?php if($num > 0){ ?>
<table class="table table-hover table-striped">
<tr>
<th width="20%" style="text-align:center;">De</th>
<th width="60%" style="text-align:center;">Assunto</th>
<th width="10%" style="text-align:center;">Prioridade</th>
<th width="10%" style="text-align:center;">Recebido</th>
</tr>
<tr>
<?php

do{

if($nomede != $produto["De"]){
?>
<th width="10%" colspan=4>Recebido: <?php echo $produto["Data"]; ?></th>
segunda div
<section id="s2">
<div id="minhaDiv1" style="display:none">
<div class="col-lg-4">
<h1>Alerta Geral</h1>
<?php if($num1 > 0){ ?>
<table class="table table-hover table-striped">
<tr>
<th width="20%" style="text-align:center; font-size: 90%;">De</th>
<th width="60%" style="text-align:center; font-size: 90%;">Assunto</th>
<th width="10%" style="text-align:center; font-size: 90%;">Prioridade</th>
<th width="10%" style="text-align:center; font-size: 90%;">Recebido</th>
</tr>
<tr>
<?php
do{

if($nomede != $produto1["De"]){
aqui é o menu onde chamos as duas primeiras divs e as outras 3
<div class="menu2">
<nav class="navbar navbar-default" style="background-color: #d3d3d3">
<div class="container-fluid">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-11" aria-expanded="false" style="float: left">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
aqui a função para mostrar as divs
$(function() {
$(".btn-show").click(function(e) {
e.preventDefault();
el = $(this).data('element');
$(el).show();
$("section > div").not(el).hide();
});
});
 
sua div 1 ta errada
está
<li <?php echo $estilo; ?> ><a href="?pagina=<?php echo $i; ?>&pagina1=<?php echo $_GET['pagina1']; ?>&pagina2=<?php echo $_GET['pagina2']; ?>
&pagina3=<?php echo $_GET['pagina3']; ?>&pagina4=<?php echo $_GET['pagina4']; ?>"><?php echo $i+1; ?></a></li>
perae, confuso kkkk
é que a div 1 é pagina sem numero
1min
 
sim
 
Altera aqui tambem
$pagina = intval($_GET['pagina']);
if (!$pagina) {
$pc = "0";
} else {
$pc = $pagina;
}
$inicio = $pc - 0;
$inicio = $inicio * $itens_por_pagina;
pois veja bem, se !$pagina
ela foi definida acima, entao ela é reconhecida
altera if(!pagina) para if(!empty($pagina))
se ela não for vazia, mas vc passa o valor 0 tambem, tem de tratar isso
if(!empty($pagina)&&$pagina!=0)
 
tenho de fazer isso para todas ou só na primeira
 
todas, pois se não veio nada para ?pagina, ou ?pagina1 .......
mas ela foi definida, ela tem o valor NULL
e não deixa de ser variável, mesmo vazia, então o código if(!pagina) considera sua variável mesmo assim
 
11:15 PM
ok, já alterei em todas
 
vou ver se noto alguma outra divergência enquanto isso
 
mas mesmo assim continua a alterar para a primeira div quando abro a paginação da segunda div
 
então tem mais ajustes, vou conferindo
me explica isso aqui não entendi:
$inicio = $pc - 0;
se $variavel - 0 é valor da variavel?
nao que isso atrapalhe, mas só não entendi a lógica disso
 
isso aí foi de uma pergunta que coloquei
vou mostrar a pergunta para veres a resposta
2
A: Paginação dentro de uma div

BinsNa sua consulta ao banco de dados, depois do LIMIT você tem dois parâmetros, o primeiro é a posição inicial, o segundo é a quantidade de registros que serão retornados. O problema está no primeiro parâmetro, precisa alterar quando é feita a troca de página, multiplicando o número da página pelo t...

vê a pergunta e a reposta que assim é mais fácil de entender
isso é para mostar por exemplo os primeiros cinco registos da base de dados e quando abro a segunda paginação mostrar os proximos 5 registos
porque como tinha antes só mudava um registo
 
voce ajustou seu codigo quanto ao for() ?

for($i=0;$i<$num_paginas;$i++){
 
11:21 PM
sim
 
pois se tem $num_paginas = 10, vai parar no 9
mais vc coloca +1, mas o de dentro da tag <a> continua errado
vou ver a pergunta
 
no código das div que coloquei acima já alteradas já vai com o for alterado
 
<?php echo $i+1; ?>
Altera também, mesmo não interferindo no código, apenas estético
 
onde está a dizer para alterar
 
<li <?php echo $estilo; ?> ><a href="?pagina=<?php echo $_GET['pagina']; ?>&pagina1=<?php echo $i; ?>&pagina2=<?php echo $_GET['pagina2']; ?>
&pagina3=<?php echo $_GET['pagina3']; ?>&pagina4=<?php echo $_GET['pagina4']; ?>"><?php echo $i+1; ?></a></li>


PARA

<li <?php echo $estilo; ?> ><a href="?pagina=<?php echo $_GET['pagina']; ?>&pagina1=<?php echo $i; ?>&pagina2=<?php echo $_GET['pagina2']; ?>
&pagina3=<?php echo $_GET['pagina3']; ?>&pagina4=<?php echo $_GET['pagina4']; ?>"><?php echo $i; ?></a></li>
onde está o php que imprime o número da página como label da tag <A></A>
 
11:26 PM
ok
 
pois se começa com 1, ficará 2 pelo fator de acréscimo
estou lendo seus dois posts
 
ok
mas ainda tem aí alguma coisa que não está bem
 
sim tem sim
estou a base da dedução
 
ok
 
so me esclareça isso por gentileza:



Tenho dois section na mesma página. Dentro de cada section tenho uma div, mas quando clico na paginação da segunda div retorna me sempre para a primeira div.
não entendi quando disse sobre clicar na segunda, e retornar para a primeira div
eu não entendi muito bem essa parte, creio que essa falta de entendimento está limitando a resolução disso.
não entendo na prática o que isso quer dizer.
 
11:31 PM
vou postar imagem
 
posta antes e depois de clicar e esclareça
outro detalhe que passou no for() da paginação
altera:
for($i=1;$i<$num_paginas;$i++){
para
for($i=1;$i<=$num_paginas;$i++){
pois $i que é igual a um, deve terminar o laço quando for igual a $num_Paginas tammbem, ou seja, 10
ele começa com 1, e para em 9, pois a regra é enquanto for menor, e não está enquanto for menor ou igual
 
quando entro na página mostra isso
 
certo
 
depois quando altero na caixa de entrada para geral desta forma
fica assim
 
mas me diz, a "Recebidas", e a "Geral", são arquivos diferentes que listam cada lista de alertas?
 
11:36 PM
 
e assim para as outras?
 
sim
agora o problema que falo é o que vou mostrar a seguir
 
entao, você precisa definir o nome da página no seu menu aí em cima, onde chama a página, senão ele não vai alterar nada
por exemplo
recebidas.php?pagina=1
geral.php?pagina=2
tanto no menu, qnto na paginacao
vc precisa definir isso tambem
o nome da pagina
 
quando clico numa das setas que tem ali no geral
muda para os alerta recebidos novamente
 
ou se é um include que faz isso de acordo com o parametro, voce deve passar o parametro que chama a pagina igual faz com o parametro da paginacao
 
11:38 PM
e não devia
 
eu entendi
é que voce usa ?pagina=
 
devia manter se nos alertas ferais
sim
 
mas não usa o nome da pagina
por exemplo:
ao inves de
?pagina=
colocar
nome_da_pagina.php?pagina=
assim o codigo vai reconhecer a pagina atual mesmo mudando a paginacao
1min vou receber o mototaxi ja volto
 
ok
quando entro na página principal este é o link completo
 
voltei
alem do que ja modificamos
voce ainda precisa adicionar no link de cada pagina o nome do arquivo.php da página que está chamando
 
11:42 PM
a página é alertas.php
mas depois abre dentro da pagina alertas as sections
então como poderia ficar
 
então não são arquivos separados, e sim include por parametro para um unico arquivo?
 
sim
 
então qual a regra do include? swith ?
 
não são arquivos seperados, mas deviam ser?
 
swith case?
sim, é até mais fácil fazer a manutenção
e não vai precisar também de tanta manobra com nomes de variaveis
$variavel, $variavel1, $variavel2
até fica mais facil pra manutencao, pq cada pagina fica com o mesmo padrao
se alterar algo em uma, só adaptar na outra
 
11:44 PM
ok
 
e aí deixa além da manutenção mais fácil, mantém o código mais limpo
 
e fazendo em arquivos separados, como fica aí essa parte nome_da_pagina.php?pagina=
então a página principal é alertas.php
 
ai no menu, voce passa o nome do arquivo para cada pagina
 
depois as outras vão ser recebidas, geral, ocorrencias, enviadas e nãolidas
 
nome_da_pagina.php?pagina=
nome_da_outra_pagina.php?pagina=
mas no menu nem precisa passar o ?pagina=
so o nome da pagina, pq o código vai entender que se não foi passado, ele é 1
 
11:47 PM
mas página mantenho sempre?
ou fica alertas.php?recebidas=
 
nao, pode ser assim
 
alertas.php?geral=
 
<li><a href="uma_pagina.php"></a></li>
<li><a href="outra_pagina.php"></a></li>
<li><a href="e_mais_outra_pagina.php"></a></li>
 
isso no menu
 
depois se quiser aperfeiçoar, poderá incluir regras de url amigável no seu htaccess, mas depois de tudo testado ai faz adaptação, por partes
 
11:48 PM
e no link
 
sim
meno
no link tbm, vc vai colocar a paginacao antes do ? coloca o nome do arquivo tambem
arquivo.php?pagina=
esse dentro do for
menu
 
pois, mas o arquivo.php é recebidas.php?pagina, geral.php?pagina1, ocoreencias.php?pagina2
isso assim
 
pode limpar o codigo, como sera cada pagina separada pode deixar tudo pagina, sem pagina1, $num_pagina, sem $num_pagina1
pois será tratados separadamente
 
ok
obrigado pela ajuda
 
estarei por perto, blza
vai sem pressa ai, depois me chama se precisar, deixarei o chat aberto
 
11:51 PM
vou fazer essa alteração
hoje já é tarde para fazer essa alteração...amanha se precisar posso te chamar no chat?
 
onde trabalho nao permite distrações, mas entre 12:30 e 13:30 estarei online blza
 
ok
obrigado
 

  last day (21 days later) »