Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

pteixeira

ordenar várias colunas de uma tabela

Recommended Posts

Caros colegas tenho o seguinte codigo esta a funcionar bem, mas assim so me ordena quando aparece os resultados na tabela

 

<?php

$con_menu = "Select * from menu order by id ASC";

$resultadocon_menu = mysql_query($con_menu) or die ("Query invalida: " . mysql_error());

if(mysql_num_rows($resultadocon_menu) != "0") {

?>

O que eu queria era ter uma tabela c\ varias colunas e cada coluna tinha LINK para ordenar em Ascendente e Descendent

 

Obrigadão

Compartilhar este post


Link para o post
Compartilhar em outros sites

cria a query ordenando de acordo com a opção que o cliente escolher.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Marcio mas a dúvida é a seguinte

 

a tabela tem 3 colunas como eu quero que cada coluna possa ordenar de forma Ascendete e Descendente, vou ter de criar + 6 querys??? com as várias situações.

 

E mais uma duvida como fica o Link para depois executar essas mesmas querys???

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tu pode colcoar via get mesmo

se o que entendi for isso.

 

tipo.

você lista os esultados

 

nome cargo valor

 

 

e cada um tem uma url

 

envia esse valor por get e pega a variável no sql.

 

link pode ser assim<a href='?orderna=opcao'>Opção</a>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Exato, e só vai alterar a parte do order by, tipo:

 

$sql .= " order by {$_GET['opcao']};";

Compartilhar este post


Link para o post
Compartilhar em outros sites

<?php
$con_menu = "Select * from menu order by id ASC";
$sql = "Select * from menu order by {$_GET['menu']} ASC";
$resultadocon_menu = mysql_query($con_menu) or die ("Query invalida: " . mysql_error());
if(mysql_num_rows($resultadocon_menu) != "0") {
?>

Tentei inserir a linha 3 $sql = "Select * from menu order by {$_GET['menu']} ASC"; mas continua sem dar

 

com o link <a href='?ordena=menu'>LINK</a>

 

Alguma ajuda p.f.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Em cima tenho o seguinte código que vai buscar via GET os registos mas não estou a conseguir fazer com que os links ordenem

 

 

<?php
require_once "../config.php";
require_once "../functions/func.php";

//EDITAR FAMILIAS
if($_GET["accao"] == "editar"){
	$menu_menu = InfoMenu("menu", $_GET["id"]);
	$menu_link = InfoMenu("link", $_GET["id"]);	
	$menu_menu_es = InfoMenu("menu_es", $_GET["id"]);	
	$menu_link_es = InfoMenu("link_es", $_GET["id"]);	
}

// APAGAR FAMILIAS
if($_GET["accao"] == "apagar"){
	
	$sql = "delete from menu where id = '".$_GET["id"]."'";
	$ResulSql = mysql_query($sql) or die ("Query invalida: " . mysql_error());
	
	$menu_menu = "";
	$menu_link = "";	
	$menu_menu_es = "";	
	$menu_link_es = "";	
	
	Redirecciona("admenu.php");
	
}

// PROCESSAR A FORM DE FAMILIAS
if($_POST["accaoform"] == "processar"){

	$menu_menu = trim($_POST["menu_menu"]);
	$menu_menu_es = trim($_POST["menu_menu_es"]);	
	$menu_link = trim($_POST["menu_link"]);
	$menu_link_es = trim($_POST["menu_link_es"]);	
	
	// Testar Formulário
	if(empty($menu_menu)){
		$erro['menu_menu'] = true;
	}
	if(empty($menu_link)){
		$erro['menu_link'] = true;
	}
	if(empty($menu_menu_es)){
		$erro['menu_menu_es'] = true;
	}		
	if(empty($menu_link_es)){
		$erro['menu_link_es'] = true;
	}	

	
	if(JaExiste("menu", "menu", $menu_menu)){
		$erro['ja_existe'] = true;
	}
	
	if($_GET["accao"] == "editar"){
		// Actualizar os dados já existentes na BD
		if($menu_menu == InfoMenu("menu", $_GET["id"])){
			unset($erro['ja_existe']);
		}
		if(!$erro){
			$sql = "UPDATE menu SET menu = '$menu_menu', link = '$menu_link', menu_es = '$menu_menu_es', link_es = '$menu_menu_es' WHERE id = '".$_GET["id"]."'";
			$ResulSql = mysql_query($sql);
			if(!$ResulSql){
				die("Erro ao actualizar a base de dados " . mysql_error());
			} else {
				// OK, A BD FOI ACTUALIZADA COM SUCESSO
				$menu_menu = "";
				$menu_link = "";				
				$menu_menu_es = "";				
				$menu_link_es = "";				
			
				Redirecciona("admenu.php");
			}
		}
	} else {
		// Actualizar a base de dados
		if(!$erro){
			$sql = "INSERT INTO menu(menu, link, menu_es, link_es) VALUES ('$menu_menu', '$menu_link', '$menu_menu_es', '$menu_link_es')";
			$ResulSql = mysql_query($sql);
			if(!$ResulSql){
				die("Erro ao actualizar a base de dados " . mysql_error());
			} else {
				$menu_menu = "";
				$menu_link = "";				
				$menu_menu_es = "";				
				$menu_link_es = "";				
			}
		}
	}
}


?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.