Jump to content

Como colocar opçao asc ou desc?


zukinha
 Share

Recommended Posts

Boas,

estou a programar as tabelas da minha base de dados SQL (xampp) em PHP ja tenho as tabelas configuradas para ordenar o preço por ordem ASC com o cod.

$extract = mysql_query("SELECT * FROM produtoras1horizontais WHERE Capacidade = '$Capacidade_form' ORDER BY Preço ASC") or die(mysql_error());

So que agr pensei em colocar a opção manual, onde o client selecciona como quer e o que quer. exemplo tenho a tabela feita com os seguintes dados:

echo "<table border='1' width='100%'>
  <tr>
    <th>Imagem</th>
    <th>Modelo</th>
    <th>Capacidade</th>
    <th>Largura</th>
    <th>Profundidade</th>
    <th>Altura</th>
    <th>Tipo</th>
    <th>Marca</th>
    <th>Preço</th>
    <th>Designação</th>
  </tr>
";

Existe maneira de ligar isto a base de dados por clikes? tipo ao clikar em altura fikava altura por orddem ASC se clikar outra vez fika por DESC se clikase em tipo passava o tipo a fikar por asc se kilikase outra vez fikava por desc...

Desde ja obrigado... =D

Link to comment
Share on other sites

Boas amigo,

É exactament isto que pretendo, ja fix o download do cod. tenho estado a tentar adaptar mas nao consigo, penso que seja por causa de trazer ficheiros .js .

Se te enviar o meu codigo podes me dar uma ajudinha?

Obrigado mais uma vez..

Link to comment
Share on other sites

Este é como tenho actualmente:

<?php

//connect include
require("connect.php");


//favicon
echo '<head>
<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />
</head>';

if ($_POST['submit']);

{

  //grab POST data
  $Largura_form = $_POST ['Largura'];
  $Preco_form = $_POST ['Preço'];


//extract data
$extract = mysql_query("SELECT * FROM produtoras1horizontais WHERE Largura = '$Largura_form' ORDER BY Preço ASC") or die(mysql_error());
$numrows = mysql_num_rows($extract);

echo "<table border='1' width='100%'>
  <tr>
    <th>Imagem</th>
    <th>Modelo</th>
    <th>Capacidade</th>
    <th>Largura</th>
    <th>Profundidade</th>
    <th>Altura</th>
    <th>Tipo</th>
    <th>Marca</th>
    <th>Preço</th>
    <th>Designação</th>
  </tr>
";

while ($row = mysql_fetch_assoc($extract))

{      $Imagem = $row ['Imagem'];
       $Modelo = $row ['Modelo'];
       $Capacidade = $row ['Capacidade'];
       $Largura = $row ['Largura'];
       $Profundidade = $row ['Profundidade'];
       $Altura = $row ['Altura'];
       $Tipo =  $row ['Tipo'];
       $Marca = $row ['Marca'];
       $Preco = $row ['Preço'];
       $Designacao = $row ['Descrição'];

echo "<tr>
  <td style=\"text-align:center;\"><b>".$Imagem."</b></td>
  <td style=\"text-align:center;\"><b>".$Modelo."</b></td>
  <td style=\"text-align:center;\">".$Capacidade."</td>
  <td style=\"text-align:center;\">".$Largura."</td>
  <td style=\"text-align:center;\">".$Profundidade."</td>
  <td style=\"text-align:center;\">".$Altura."</td>
  <td style=\"text-align:center;\">".$Tipo."</td>
  <td style=\"text-align:center;\">".$Marca."</td>
  <td style=\"text-align:center;\">".$Preco." €</td>
  <td style=\"text-align:center;\">".$Designacao."</td>
</tr>";


}

}

echo "</table><br />";

?>
<html>

<form action='mysql.php' method='POST'>
      <b>Largura:</b> <input type='text' name='Largura'>
      <input type='submit' name='submit' value='Procurar'>
</form>
Link to comment
Share on other sites

Faltava-te ir buscar o ficheiro JavaScript e atribuir a classe à tabela. Colocas o ficheiro sortable.js à beira desse ficheiro HTML. Depois alteras o código do ficheiro HTML para este.

<?php

//connect include
require("connect.php");


//favicon
echo '
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html><head>
<script type="text/javascript" src="sortable.js"></script>
<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />
</head>';

if ($_POST['submit']);

{

  //grab POST data
  $Largura_form = $_POST ['Largura'];
  $Preco_form = $_POST ['Preço'];


//extract data
$extract = mysql_query("SELECT * FROM produtoras1horizontais WHERE Largura = '$Largura_form' ORDER BY Preço ASC") or die(mysql_error());
$numrows = mysql_num_rows($extract);

echo "<table border='1' class=\"sortable\" id=\"tabela_ordenavel\" width='100%'>
  <tr>
    <th>Imagem</th>
    <th>Modelo</th>
    <th>Capacidade</th>
    <th>Largura</th>
    <th>Profundidade</th>
    <th>Altura</th>
    <th>Tipo</th>
    <th>Marca</th>
    <th>Preço</th>
    <th>Designação</th>
  </tr>
";

while ($row = mysql_fetch_assoc($extract))

{      $Imagem = $row ['Imagem'];
       $Modelo = $row ['Modelo'];
       $Capacidade = $row ['Capacidade'];
       $Largura = $row ['Largura'];
       $Profundidade = $row ['Profundidade'];
       $Altura = $row ['Altura'];
       $Tipo =  $row ['Tipo'];
       $Marca = $row ['Marca'];
       $Preco = $row ['Preço'];
       $Designacao = $row ['Descrição'];

echo "<tr>
  <td style=\"text-align:center;\"><b>".$Imagem."</b></td>
  <td style=\"text-align:center;\"><b>".$Modelo."</b></td>
  <td style=\"text-align:center;\">".$Capacidade."</td>
  <td style=\"text-align:center;\">".$Largura."</td>
  <td style=\"text-align:center;\">".$Profundidade."</td>
  <td style=\"text-align:center;\">".$Altura."</td>
  <td style=\"text-align:center;\">".$Tipo."</td>
  <td style=\"text-align:center;\">".$Marca."</td>
  <td style=\"text-align:center;\">".$Preco." €</td>
  <td style=\"text-align:center;\">".$Designacao."</td>
</tr>";


}

}

echo "</table><br />";

?>
<html>

<form action='mysql.php' method='POST'>
      <b>Largura:</b> <input type='text' name='Largura'>
      <input type='submit' name='submit' value='Procurar'>
</form>

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Link to comment
Share on other sites

Boas,

Copiei o cod e coloquei o sortable.js na mesma pasta onde estava o ficheiro com este codigo.

Agr dame erro aqui

echo "<table border='1' class="sortable" id="tabela_ordenavel" width='100%'>

Podesme tentar explicar melhor?

Obrigado desde ja.. =D

Link to comment
Share on other sites

Agr dame erro aqui

Estás a fechar as aspas prematuramente, tens de as escapar com um \ ou usar sempre plicas dentro das aspas:

echo "<table border='1' class='sortable'  id='tabela_ordenavel'  width='100%'>

"Para desenhar um website, não tenho que saber distinguir server-side de client-side" - um membro do fórum que se auto-intitula webdesigner. Temo pelo futuro da web.

Link to comment
Share on other sites

Ia, erro meu.

Nao faz mal, as vezes acontece.. =D

ja esta a funcionar.. mas ao que parece era para ter uma imagens, so que nao sei ond elas estao, esta a dar erro de imagem nos titulos.

Uma kestao querias excluir a descrição e as imagens da ordem asc e desc. como psso tirar isso?

Obrigado por tudo...

Link to comment
Share on other sites

Mas ele não te ordena as imagens, ele ordena-te apenas o preço.

Repara, tens uma tabela (na Base de Dados), e cada tabela tem vários registos (as linhas). Quando tu pedes para ele ordenar por x (neste caso pelo Preço) ele ordena-te os registos de acordo com o preço. Depois pega nos valores que correspondem a esse preço, nomeadamente a imagem que tu lá tiveres, e mostra-as com o respectivo produto.

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Link to comment
Share on other sites

Mas ele não te ordena as imagens, ele ordena-te apenas o preço.

Repara, tens uma tabela (na Base de Dados), e cada tabela tem vários registos (as linhas). Quando tu pedes para ele ordenar por x (neste caso pelo Preço) ele ordena-te os registos de acordo com o preço. Depois pega nos valores que correspondem a esse preço, nomeadamente a imagem que tu lá tiveres, e mostra-as com o respectivo produto.

Boas,

Agora como tenho a tabela o cliente escolhe como quer ordenar os produtos, por IMAGEM, MODELO, TIPO, MARCA, PREÇO, DESCRIÇÃO

O que eu queria era que o cliente nao tivess a opção de ordenar por Imagem e por descrição.

Entendes?

Brigado por toda a ajuda prestada... =D

Link to comment
Share on other sites

Ah, já percebi. Tenta assim: 🙂

<?php

//connect include
require("connect.php");


//favicon
echo '
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html><head>
<script type="text/javascript" src="sortable.js"></script>
<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />
</head>';

if ($_POST['submit']);

{

  //grab POST data
  $Largura_form = $_POST ['Largura'];
  $Preco_form = $_POST ['Preço'];


//extract data
$extract = mysql_query("SELECT * FROM produtoras1horizontais WHERE Largura = '$Largura_form' ORDER BY Preço ASC") or die(mysql_error());
$numrows = mysql_num_rows($extract);

echo "<table border='1' class=\"sortable\" id=\"tabela_ordenavel\" width='100%'>
  <tr>
    <th class=\"unsortable\">Imagem</th>
    <th>Modelo</th>
    <th>Capacidade</th>
    <th>Largura</th>
    <th>Profundidade</th>
    <th>Altura</th>
    <th>Tipo</th>
    <th>Marca</th>
    <th>Preço</th>
    <th class=\"unsortable\">Designação</th>
  </tr>
";

while ($row = mysql_fetch_assoc($extract))

{      $Imagem = $row ['Imagem'];
       $Modelo = $row ['Modelo'];
       $Capacidade = $row ['Capacidade'];
       $Largura = $row ['Largura'];
       $Profundidade = $row ['Profundidade'];
       $Altura = $row ['Altura'];
       $Tipo =  $row ['Tipo'];
       $Marca = $row ['Marca'];
       $Preco = $row ['Preço'];
       $Designacao = $row ['Descrição'];

echo "<tr>
  <td style=\"text-align:center;\"><b>".$Imagem."</b></td>
  <td style=\"text-align:center;\"><b>".$Modelo."</b></td>
  <td style=\"text-align:center;\">".$Capacidade."</td>
  <td style=\"text-align:center;\">".$Largura."</td>
  <td style=\"text-align:center;\">".$Profundidade."</td>
  <td style=\"text-align:center;\">".$Altura."</td>
  <td style=\"text-align:center;\">".$Tipo."</td>
  <td style=\"text-align:center;\">".$Marca."</td>
  <td style=\"text-align:center;\">".$Preco." €</td>
  <td style=\"text-align:center;\">".$Designacao."</td>
</tr>";


}

}

echo "</table><br />";

?>
<html>

<form action='mysql.php' method='POST'>
      <b>Largura:</b> <input type='text' name='Largura'>
      <input type='submit' name='submit' value='Procurar'>
</form>

PS: Não respondo a perguntas por mensagem que podem ser respondidas no fórum.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.