Sessoes e passar variavel por url
Pessoal, seguinte oq to tentando fazer é assim, fazer um filtro de pesquisa (ou quase isso) em que a pessoa seleciona em que ordem ela quer tendo essas opçoes:
echo "<a href='caixa.php?ordem=DESC'>ID decrescente</a>"."<br/><br/>";
echo "<a href='caixa.php?ordem=DATA_DESC'>Data crescente</a>"."<br/><br/>";
echo "<a href='caixa.php?ordem=DATA_ASC'>Data decrescente</a>"."<br/><br/>";
echo "<a href='caixa.php?ordem=ASC'>ID crescente</a>"."<br/><br/>";
Depois que a pessoa seleciona oq ela quer vem um teste:
if(isset($ordem)){
//TESTES PARA ORDENAR POR ID DECRECENTE OU CRESCENTE
if($ordem == "DESC"){
$sql1="SELECT * FROM tb_caixa $mes ORDER BY id DESC";
$comando=mysqli_query($con,$sql1);
while ($escreve=mysqli_fetch_array($comando)){
$id=$escreve['id'];
$data=$escreve['data'];
$mes=$escreve['mes'];
$vendedor=$escreve['vendedor'];
$produto=$escreve['produto'];
$quantidade=$escreve['quantidade'];
$entrada=$escreve['entrada'];
$saida=$escreve['saida'];
echo "<tr><td>$id</td><td>$data</td><td>$mes</td><td>$vendedor</td><td>$produto</td><td>$quantidade</td><td>$entrada</td><td>$saida</td></tr>";
}
} if($ordem == "ASC"){
$sql1="SELECT * FROM tb_caixa $mes ORDER BY id ASC";
$comando=mysqli_query($con,$sql1);
while ($escreve=mysqli_fetch_array($comando)){
$id=$escreve['id'];
$data=$escreve['data'];
$mes=$escreve['mes'];
$vendedor=$escreve['vendedor'];
$produto=$escreve['produto'];
$quantidade=$escreve['quantidade'];
$entrada=$escreve['entrada'];
$saida=$escreve['saida'];
echo "<tr><td>$id</td><td>$data</td><td>$mes</td><td>$vendedor</td><td>$produto</td><td>$quantidade</td><td>$entrada</td><td>$saida</td></tr>";
}
}
//TESTA PARA ORDENAR POR ODEM CRECENTE OU DECRESCENTE
if($ordem == "DATA_DESC"){
$sql1="SELECT * FROM tb_caixa $mes ORDER BY data DESC";
$comando=mysqli_query($con,$sql1);
while ($escreve=mysqli_fetch_array($comando)){
$id=$escreve['id'];
$data=$escreve['data'];
$mes=$escreve['mes'];
$vendedor=$escreve['vendedor'];
$produto=$escreve['produto'];
$quantidade=$escreve['quantidade'];
$entrada=$escreve['entrada'];
$saida=$escreve['saida'];
echo "<tr><td>$id</td><td>$data</td><td>$mes</td><td>$vendedor</td><td>$produto</td><td>$quantidade</td><td>$entrada</td><td>$saida</td></tr>";
}
}
if($ordem == "DATA_ASC"){
$sql1="SELECT * FROM tb_caixa $mes ORDER BY data ASC";
$comando=mysqli_query($con,$sql1);
while ($escreve=mysqli_fetch_array($comando)){
$id=$escreve['id'];
$data=$escreve['data'];
$mes=$escreve['mes'];
$vendedor=$escreve['vendedor'];
$produto=$escreve['produto'];
$quantidade=$escreve['quantidade'];
$entrada=$escreve['entrada'];
$saida=$escreve['saida'];
echo "<tr><td>$id</td><td>$data</td><td>$mes</td><td>$vendedor</td><td>$produto</td><td>$quantidade</td><td>$entrada</td><td>$saida</td></tr>";
}
}
//SE A VARIAVEL ORDEM NAO EXISTIR MOSTRA TODOS OS ITENS
}else{
$sql2="SELECT * FROM tb_caixa";
$comando=mysqli_query($con,$sql2);
while($escreve=mysqli_fetch_array($comando)){
$id=$escreve['id'];
$data=$escreve['data'];
$mes=$escreve['mes'];
$vendedor=$escreve['vendedor'];
$produto=$escreve['produto'];
$quantidade=$escreve['quantidade'];
$entrada=$escreve['entrada'];
$saida=$escreve['saida'];
echo "<tr><td>$id</td><td>$data</td><td>$mes</td><td>$vendedor</td><td>$produto</td><td>$quantidade</td><td>$entrada</td><td>$saida</td></tr>";
}
}
E então caso a pessoa queira visualizar por mês ela também pode, selecionando aqui:
<ul id="meses" class="menu">
<li><a href="#" class="btn">Meses</a>
<ul>
<li><a href="caixa.php?mes=janeiro">Janeiro</a></li>
<li><a href="caixa.php?mes=fevereiro">Fevereiro</a></li>
<li><a href="caixa.php?mes=marco">Março</a></li>
<li><a href="caixa.php?mes=abril">Abril</a></li>
<li><a href="caixa.php?mes=maio">Maio</a></li>
<li><a href="caixa.php?mes=junho">Junho</a></li>
<li><a href="caixa.php?mes=julho">Julho</a></li>
<li><a href="caixa.php?mes=agosto">Agosto</a></li>
<li><a href="caixa.php?mes=setembro">Setembro</a></li>
<li><a href="caixa.php?mes=outubro">Outubro</a></li>
<li><a href="caixa.php?mes=novembro">Novembro</a></li>
<li><a href="caixa.php?mes=dezembro">Dezembro</a></li>
</ul>
</li>
</ul>
O problema tá ai, eu queria que a pessoa pudesse selecionar os dois filtros, por exemplo um de "ID crescente" e "Janeiro". Só que o problema surge ai, eu gravo a SESSÃO do filtro por "ID ou Data", até ai tudo certo, mas caso eu clicar em um dos mêses a váriavel da sessao some, creio eu que pq EU PASSEI UMA NOVA VARIAVEL NA MESMA URL? Pessoal, se puderem me ajudar agredeço, muito!
CÓDIGO COMPLETO:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Mostrar Caixa</title>
<style>
.menu ul {
display: none;} / Hide before plugin loads /
.menu ul.dropit-submenu {
background-color: #fff;
border: 1px solid #b2b2b2;
padding: 6px 0;
margin: 3px 0 0 1px;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
-webkit-box-shadow: 0px 1px 3px rgba(0,0,0,0.15);
-moz-box-shadow: 0px 1px 3px rgba(0,0,0,0.15);
box-shadow: 0px 1px 3px rgba(0,0,0,0.15);
}.menu ul.dropit-submenu a {
display: block;
font-size: 14px;
line-height: 25px;
color: #7a868e;
padding: 0 18px;
}.menu ul.dropit-submenu a:hover {
background: #248fc1;
color: #fff;
text-decoration: none;
}
table {border:1px black solid;}
table td {text-align:center; border:1px black solid;}
</style>
<link href="jquery/Simple-Flexible-jQuery-Dropdown-Menu-Plugin-Dropit/dropit.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery/jquery-2.2.0.js"></script>
<script type="text/javascript" src="jquery/Simple-Flexible-jQuery-Dropdown-Menu-Plugin-Dropit/dropit.js"></script>
<script>
$(document).ready(function() {
$('#meses').dropit();
});
</script>
</head>
<body>
<h1>Mostrar Caixa</h1>
<table>
<tr>
<td>ID</td>
<td>Data</td>
<td>Mes</td>
<td>Vendedor</td>
<td>Produto</td>
<td>Quantidade</td>
<td>Entrada</td>
<td>Saida</td>
</tr>
<ul id="meses" class="menu">
<li><a href="#" class="btn">Meses</a>
<ul>
<li><a href="caixa.php?mes=janeiro">Janeiro</a></li>
<li><a href="caixa.php?mes=fevereiro">Fevereiro</a></li>
<li><a href="caixa.php?mes=marco">Março</a></li>
<li><a href="caixa.php?mes=abril">Abril</a></li>
<li><a href="caixa.php?mes=maio">Maio</a></li>
<li><a href="caixa.php?mes=junho">Junho</a></li>
<li><a href="caixa.php?mes=julho">Julho</a></li>
<li><a href="caixa.php?mes=agosto">Agosto</a></li>
<li><a href="caixa.php?mes=setembro">Setembro</a></li>
<li><a href="caixa.php?mes=outubro">Outubro</a></li>
<li><a href="caixa.php?mes=novembro">Novembro</a></li>
<li><a href="caixa.php?mes=dezembro">Dezembro</a></li>
</ul>
</li>
</ul>
<?php
session_start();
include "conexao.inc";
//OPÇOES DE FILTRO ORDENADO POR
echo "<a href='caixa.php?ordem=DESC'>ID decrescente</a>"."<br/><br/>";
echo "<a href='caixa.php?ordem=DATA_DESC'>Data crescente</a>"."<br/><br/>";
echo "<a href='caixa.php?ordem=DATA_ASC'>Data decrescente</a>"."<br/><br/>";
echo "<a href='caixa.php?ordem=ASC'>ID crescente</a>"."<br/><br/>";
//TESTA E ARMAZENA EM SESSION OQ FOI PEGO PELA VÁRIAVEL ORDEM
@$ordem=$_GET['ordem'];
$_SESSION['ordem']=$ordem;
//ARMAZEA EM SESSION A VARIAVEL MES
@$mes=$_GET['mes'];
$_SESSION['mes']=$mes;
//VE SE A VARIAVEL ORDEM FOI CLICADA OU NAO
if(isset($ordem)){
//TESTES PARA ORDENAR POR ID DECRECENTE OU CRESCENTE
if($ordem == "DESC"){
$sql1="SELECT * FROM tb_caixa $mes ORDER BY id DESC";
$comando=mysqli_query($con,$sql1);
while ($escreve=mysqli_fetch_array($comando)){
$id=$escreve['id'];
$data=$escreve['data'];
$mes=$escreve['mes'];
$vendedor=$escreve['vendedor'];
$produto=$escreve['produto'];
$quantidade=$escreve['quantidade'];
$entrada=$escreve['entrada'];
$saida=$escreve['saida'];
echo "<tr><td>$id</td><td>$data</td><td>$mes</td><td>$vendedor</td><td>$produto</td><td>$quantidade</td><td>$entrada</td><td>$saida</td></tr>";
}
} if($ordem == "ASC"){
$sql1="SELECT * FROM tb_caixa $mes ORDER BY id ASC";
$comando=mysqli_query($con,$sql1);
while ($escreve=mysqli_fetch_array($comando)){
$id=$escreve['id'];
$data=$escreve['data'];
$mes=$escreve['mes'];
$vendedor=$escreve['vendedor'];
$produto=$escreve['produto'];
$quantidade=$escreve['quantidade'];
$entrada=$escreve['entrada'];
$saida=$escreve['saida'];
echo "<tr><td>$id</td><td>$data</td><td>$mes</td><td>$vendedor</td><td>$produto</td><td>$quantidade</td><td>$entrada</td><td>$saida</td></tr>";
}
}
//TESTA PARA ORDENAR POR ODEM CRECENTE OU DECRESCENTE
if($ordem == "DATA_DESC"){
$sql1="SELECT * FROM tb_caixa $mes ORDER BY data DESC";
$comando=mysqli_query($con,$sql1);
while ($escreve=mysqli_fetch_array($comando)){
$id=$escreve['id'];
$data=$escreve['data'];
$mes=$escreve['mes'];
$vendedor=$escreve['vendedor'];
$produto=$escreve['produto'];
$quantidade=$escreve['quantidade'];
$entrada=$escreve['entrada'];
$saida=$escreve['saida'];
echo "<tr><td>$id</td><td>$data</td><td>$mes</td><td>$vendedor</td><td>$produto</td><td>$quantidade</td><td>$entrada</td><td>$saida</td></tr>";
}
}
if($ordem == "DATA_ASC"){
$sql1="SELECT * FROM tb_caixa $mes ORDER BY data ASC";
$comando=mysqli_query($con,$sql1);
while ($escreve=mysqli_fetch_array($comando)){
$id=$escreve['id'];
$data=$escreve['data'];
$mes=$escreve['mes'];
$vendedor=$escreve['vendedor'];
$produto=$escreve['produto'];
$quantidade=$escreve['quantidade'];
$entrada=$escreve['entrada'];
$saida=$escreve['saida'];
echo "<tr><td>$id</td><td>$data</td><td>$mes</td><td>$vendedor</td><td>$produto</td><td>$quantidade</td><td>$entrada</td><td>$saida</td></tr>";
}
}
//SE A VARIAVEL ORDEM NAO EXISTIR MOSTRA TODOS OS ITENS
}else{
$sql2="SELECT * FROM tb_caixa";
$comando=mysqli_query($con,$sql2);
while($escreve=mysqli_fetch_array($comando)){
$id=$escreve['id'];
$data=$escreve['data'];
$mes=$escreve['mes'];
$vendedor=$escreve['vendedor'];
$produto=$escreve['produto'];
$quantidade=$escreve['quantidade'];
$entrada=$escreve['entrada'];
$saida=$escreve['saida'];
echo "<tr><td>$id</td><td>$data</td><td>$mes</td><td>$vendedor</td><td>$produto</td><td>$quantidade</td><td>$entrada</td><td>$saida</td></tr>";
}
}
?>
</table>
</body>
</html>Discussão (1)
Carregando comentários...