Ir para conteúdo

POWERED BY:

Arquivado

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

saulo69

[Resolvido] [sistema de busca]

Recommended Posts

Olá galera,

 

Tô querendo fazer um sisteminha de busca vindo de três "selects", pois bem,

 

Tenho uma tabela com os campos:

- codigo

- ano

- mes

- entrancia

 

Queria ordenar uma busca onde o usuário iria, clicar no devido "select" e selionar o ano, o mes e a entrancia... E daí então, a busca ser feita. Porém ele tem que, obrigatoriamente, preencher os três "selects". Eu não tô conseguindo ordenar o script...

Alguém pode dar uma força?

 

 

Agradeço!

 

 

-- Estrutura da tabela `escala_de_ferias`
--

CREATE TABLE IF NOT EXISTS `escala_de_ferias` (
 `codigo` int(10) NOT NULL AUTO_INCREMENT,
 `codigo_magistrado` int(10) NOT NULL,
 `ano` int(4) NOT NULL,
 `mes` enum('1','2','3','4','5','6','7','8','9','10','11','12') COLLATE latin1_general_ci NOT NULL,
 `entrancia` enum('1','2','3') COLLATE latin1_general_ci NOT NULL,
 PRIMARY KEY (`codigo`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=1722 ;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta isso:

<?php
/* CONEXÃO */
$user = 'root';
$pass = '';
$db = 'stats';
$conexao = mysql_connect('localhost', $user, $pass);
$db = mysql_select_db($db);
/** CONEXÃO **/

$b[1] = $_POST['ano'];
$b[2] = $_POST['mes'];
$b[3] = $_POST['codigo'];

//Monta a consulta
$sql = "SELECT * FROM `escala_de_ferias` WHERE (`ano` LIKE '".$b[1]."' AND `mes` LIKE '".$b[2]."' AND `codigo_magistrado` LIKE '".$b[3]."')";

// Executa a consulta
$query = mysql_query($sql);
$linha = mysql_fetch_array($resultado);

//Escreve na tela
echo $linha['visitas'];
?>
(Não precisa 3 selects)

 

Na página, monte um form assim:

<form action="pagina.php" method="post" name="dados" onSubmit="return enviardados();" >
Ano: <select name="ano" id="ano">
	<option selected="selected" value="Selecione">Selecione</option>
	<option value="2010">2010</option>
	<option value="2011">2011</option>
</select>
<br />
Mês: <select name="mes" id="mes">
	<option selected="selected" value="Selecione">Selecione</option>
	<option value="10">Outubro</option>
	<option value="11">Novembro</option>
</select>
<br />
Código: <select name="codigo" id="codigo">
	<option selected="selected" value="Selecione">Selecione</option>
	<option value="1">1</option>
	<option value="2">2</option>
</select>
<br />
<input name="Submit" type="submit" value="Enviar dados" />
<input name="Reset" type="reset" value="Redefinir" />
</form>

Com este código no Head:

<script language="JavaScript" >
function enviardados(){

if(document.dados.ano.value=="Selecione"){
alert("Preencha campo ANO corretamente!");
document.dados.ano.focus();
return false;
}


if( document.dados.mes.value=="Selecione"){
alert("Preencha campo Mês corretamente!");
document.dados.mes.focus();
return false;
}

if (document.dados.codigo.value=="Selecione"){
alert("Preencha corretamente o campo CÓDIGO!");
document.dados.codigo.focus();
return false;
}

return true;
}

</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

jcalebe, acho que deveria ser retirado os "LIKE" já que como são anos e eles são setados por options não haveria erro como por exemplo se digita parte de um texto em um input text.

 

Ao criador do tópico, utilize o código da resposta acima sem os LIKE

Compartilhar este post


Link para o post
Compartilhar em outros sites

jcalebe, acho que deveria ser retirado os "LIKE" já que como são anos e eles são setados por options não haveria erro como por exemplo se digita parte de um texto em um input text.

 

Ao criador do tópico, utilize o código da resposta acima sem os LIKE

 

Em linguagem clara, acho que você quis dizer para retirar os " % ". Já alterei no código acima.

 

Fiz também um formulário e um JS para confirmar o formulário. Qualquer erro de digitação, favor, ignorem.

 

Código original da validação de formulário aqui.

 

saulo69, resolveu seu problema?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá! Descupem minha ausência, como é final de ano, aqui no meu trabalho fica uma loucura... Muito obrigado pelas respostas! Foram apartir delas que eu consegui resolver meu problema. Muito Obrigado mesmo era isso mesmo que eu precisava!

 

 

 

Grato,

 

Saulo

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.