Ir para conteúdo

POWERED BY:

Arquivado

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

ejckson

Buscar um campo ou dois campos ou todos os campos INNER JOIN

Recommended Posts

Boa tarde ídolos Imasters! Saudações!

Sou novato no fórum e tenho apenas 1 semana estudando SQL.

Vamos ao assunto!

 

Estou com a seguinte dúvida?

 

Tenho o banco de dados:

 

Tabela: p_texto

 

id

categoria_id

modalidade_id

texto

numero

data_do_texto

 

Tabela: p_texto_cat

 

id_categoria

categoria

 

Tabela: p_texto_mod

 

id_modalidade

modalidade

 

Estou querendo desenvolver um filtro de busca em php para este banco.

Quero buscar um termo ou dois termos ou todos campos de uma vez com meu formulário.

 

Por exemplo: buscar os textos com intervalos de datas, e/ou modalidade, e/ou categoria.

 

Tenho o form:

<form id='userForm'>       <div><input type='text' name='datainicial' placeholder='Data Iniciaç' /></div>    <div><input type='text' name='datafinal' placeholder='Data Final' /></div>    <div><input type='text' name='modalidade' placeholder='Modalidade' /></div>    <div><input type='text' name='categoria' placeholder='Categoria' /></div>    <div><input type='submit' value='Submit' /></div></form>

PHP

<?php  $conexaoMySQL = mysql_connect("servidor.com","edob","************");$bancoDados = mysql_select_db("edob",$conexaoMySQL);	header('Content-Type: text/html; charset=utf-8');	mysql_query("SET NAMES 'utf8'");	mysql_query('SET character_set_connection=utf8');	mysql_query('SET character_set_client=utf8');	mysql_query('SET character_set_results=utf8');		$datainicial = $_post("datainicial");	$datafinal = $_post("datafinal");	    $consulta = mysql_query("SELECT p_texto.*, 									p_texto_cat.*, 									p_texto_mod.* 									date_format(p_texto.data, '%d/%m/%Y') AS data							FROM p_licitacoes							INNER JOIN p_texto_cat ON p_texto_cat.id_categoria = p_texto.categoria_id							INNER JOIN p_texto_mod ON p_texto_mod.id_modalidade = p_texto.modalidade_id							WHERE p_texto.data between '$datainicial' and '$datafinal'" ) or die (mysql_error());					while($ln=mysql_fetch_array($consulta)){  $id = $ln['id'];      $data = $ln['data'];  $modalidade = $ln['modalidade'];$categoria = $ln['categoria'];                          echo $id . " - " . $categoria . " - " . $modalidade . " - " . $data . "<br>"; //lista as datas                                     } ?>

Como proceder nestes casos?

Obrigado pela oportunidade e desculpa se postei o tópico no lugar errado. rsrsr

 

 

Ninguém se habilita meus amigos?

Compartilhar este post


Link para o post
Compartilhar em outros sites

SELECT * FROM p_texto  P
INNER JOIN p_texto_cat C ON P.categoria_id = C.id_categoria
INNER JOIN p_texto_mod M ON p.modalidade_id = M.id_modalidade

Me enrolei um pouco no seu codigo mais ve se esse serve

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.