Ir para conteúdo

POWERED BY:

Arquivado

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

edsonantolini

[Resolvido] Select ( combobox ) PHP

Recommended Posts

Ola, Galera sou novo em PHP.

 

Tenho um Form que aparece todos os dados do minha pesquisa. essa pesquisa hj está sendo feito por Data. Direto na query.

 

segue o codigo.

 

$sql.=" and dbo.progped.DATA between '02/02/2009' and '02/09/2009'";

 

Eu crieu um select ontem consigo todos os nomes de cliente.

 

Codigo:

 

<?php

$query="SELECT CNOME, CCODIGO FROM clientes GROUP BY CNOME, CCODIGO";

$res= odbc_exec($conn,$query);

while($dados=odbc_fetch_array($res)){

 

echo "<option value=" . $dados['CNOME'] . ">" . $dados['CNOME']. "</option>";

}

?>

Ate ai tudo bemmmmmmm, gostaria de saber como eu faço uma pesquisa no banco SQLSERVER apartir de um select.

 

Tipo seleciono cliente NESTLE,, ele quem q parecer todos os dados desse cliente NESTLE no meu Form.

 

Alguem poderia me ajudar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual é o name do select ?

<select name="nameDoSelect">

Basta tratar isso como se fosse um input normal..

 

echo $_POST['nameDoSelect']; e com esse POST fazer a query.

Compartilhar este post


Link para o post
Compartilhar em outros sites

William Bruno,

 

Obrigado por se interessar por me ajudar. vou mandar Codigo.

<?php
include('conne.inc');
?>

<html>
<head>
<title>Programação de Carga </title>
</head>
<body>
<form action="cargas.php" method="post" id="frm_dados">


<input type="submit" value="Filtrar" name="submit" id="submit" />

<table align="center" border="1" bordercolor="blue">
	<tr>
		<td>   </td>
		<td width="50"><font size='3'><b>
		Pedido</b></font>
		</td>
		<td width="50"><font size='3'><b>
		Entrega</b></font>
		</td>
		<td width="100"><font size='3'><b>
		Codigo</b></font>
		</td>
		<td width="300"><font size='3'><b>
		Descrição</b></font>
		</td>
		<td width="50" align='right'><font size='3'><b>
		Qtd</b></font>
		</td>
		<td width="50"><font size='3'><b>
		OS</b></font>
		</td>
		<td width="290"><font size='3'><b>
		Em Produção</b></font>
		</td>
		<td width="50" align='right'><font size='3'><b>
		N2</b></font>
		</td>
		<td width="50" align='right'><font size='3'><b>
		N3</b></font>
		</td>
		<td width="50" align='right'><font size='3'><b>
		N4</b></font>
		</td>
		<td width="50" align='right'><font size='3'><b>
		Qtd Entrega</b></font>
		</td>
		<td width="150"><font size='3'><b>
		Disposição da Carga</b></font>
		</td>
	</tr>
	
<?php
$sql=" select dbo.clientes.cnome, dbo.pedidos.codcliente, dbo.pedidos.codseq, ";
$sql.=" dbo.itemped.coditem, dbo.itemped.descricao, dbo.progped.quantidade, ";
$sql.=" dbo.progped.fatquant, dbo.progped.cnpo, dbo.progped.Obs, ";
$sql.=" dbo.tipoabrt.abertura, dbo.progped.DATA, dbo.progped.Nilpel_ATRPG, ";
$sql.=" rfaca.resposta as faca, rart.resposta as Art, rtinta.resposta as tinta, ";
$sql.=" arqos.Cquant as Qtd_OS, ARQOS.CDATAENT AS ENTOS, n02.n02, n03.n03, ";
$sql.=" n04.n04, ap.inicio, ap.grupo, ap.qtd_prod ";

$sql.=" from dbo.pedidos (nolock)";
$sql.=" inner join dbo.clientes (nolock) on (dbo.pedidos.codcliente=dbo.clientes.ccodigo)";
$sql.=" inner join dbo.itemped (nolock) on (dbo.pedidos.codseq=dbo.itemped.codpedido)";
$sql.=" inner join dbo.itens (nolock) on (dbo.itemped.coditem=dbo.itens.ccodigo)";
$sql.=" inner join dbo.progped (nolock) on (dbo.itemped.codseq=dbo.progped.coditemped)";
$sql.=" left outer join arqos (nolock) on (arqos.cnpo=progped.cnpo)";
$sql.=" left join dbo.tipoabrt (nolock) on (dbo.tipoabrt.codseq=dbo.itens.tipoabrt)";
$sql.=" left outer join cliatrb as Pfaca (nolock) on (Pfaca.codcliente=itens.codigo and Pfaca.atributo ='68')";
$sql.=" left outer join cliatrb as Part (nolock) on (Part.codcliente=itens.codigo and Part.atributo='78')";
$sql.=" left outer join cliatrb as Ptinta (nolock) on (Ptinta.codcliente=itens.codigo and Ptinta.atributo='67')";
$sql.=" left outer join RESPATRB as Rfaca (nolock) on (Rfaca.codigoatrib=Pfaca.atributo and Rfaca.codseq=Pfaca.resposta)";
$sql.=" left outer join RESPATRB as Rart (nolock) on (Rart.codigoatrib=Part.atributo and Rart.codseq=Part.resposta)";
$sql.=" left outer join RESPATRB as Rtinta (nolock) on (Rtinta.codigoatrib=Ptinta.atributo and Rtinta.codseq=Ptinta.resposta)";
$sql.=" left outer join v_ultimo_apont as ap(nolock) on (ap.os=progped.cnpo)";
$sql.=" left outer join (select coditem, sum (Saldo) as 'N02' from estlote(nolock)";
$sql.=" where filial=2";
$sql.=" and quantidade>0 and saldo>0";
$sql.=" group by coditem) N02 on (n02.coditem=dbo.itemped.coditem)";
$sql.=" left outer join (select coditem, sum (Saldo) as 'N03' from estlote(nolock)";
$sql.=" where filial=3";
$sql.=" and quantidade>0 and saldo>0";
$sql.=" group by coditem) N03 on (n03.coditem=dbo.itemped.coditem)";
$sql.=" left outer join (select coditem, sum (Saldo) as 'N04' from estlote(nolock)";
$sql.=" where filial=4";
$sql.=" and quantidade>0 and saldo>0";
$sql.=" group by coditem) N04 on (n04.coditem=dbo.itemped.coditem)";
$sql.=" where dbo.progped.status=0";
$sql.=" and dbo.pedidos.codstatus in ('CONFIRMADO', 'ANDAMENTO', 'PENDENTE')";
$sql.=" and dbo.progped.status=0";
$sql.=" and (itens.ccodigo='xxxxxx.xxxx.xxxx.xxxx'";
$sql.=" or (dbo.itemped.coditem like '801%' or dbo.itemped.coditem like '802%' or  dbo.itemped.coditem like '807%' or dbo.itemped.coditem like '808%'))";
$sql.=" and dbo.pedidos.filial != 6";
$sql.=" and dbo.itens.somenteosporprod<>'T'";
$sql.=" and dbo.progped.DATA between '02/02/2009' and '02/09/2009'";  
//$sql.=" and dbo.progped.DATA between '" . datanicial . "' and '" . datafinal;
$sql.=" order by dbo.progped.DATA, dbo.clientes.ccodigo,dbo.clientes.cnome, DBO.PEDIDOS.CODSEQ";

$res=odbc_exec($conn, $sql);
$n = odbc_num_rows($res);

while($dados=odbc_fetch_array($res)){
	$data=substr($dados['DATA'], 8, 2)."/".substr($dados['DATA'], 5, 2)."/".substr($dados['DATA'], 0, 4);
	$coditem=substr($dados['coditem'], 12, 9);
	$inicio=substr($dados['inicio'], 8, 2)."/".substr($dados['inicio'], 5, 2)."/".substr($dados['inicio'], 0, 4)." ".substr($dados['inicio'], 11, 2).":".substr($dados['inicio'], 14, 2);
	$n2=$dados['n02'];
	if($n2==""){
		$n2=0;
	}
	$n2=number_format($n2, 2, ",", ".");
	$n3=$dados['n03'];
	if($n3==""){
		$n3=0;
	}
	$n3=number_format($n3, 2, ",", ".");
	$n4=$dados['n04'];
	if($n4==""){
		$n4=0;
	}
	$n4=number_format($n4, 2, ",", ".");
	
/*	
echo"<table border=1>";
echo"<tr>";
echo" <td width=10%></td>";
echo" <td width=50%>";
echo"<table border=0 width=100%>";
echo"<tr>";
echo"  <td align=center width=5><input type=checkbox name=chk[]></td>";
echo $dados['codseq'] . " / " . $dados['descricao'];?>">
*/
?>

	<tr>
		
		<td>
		<input type=checkbox name="numeros[]" value="
		<?php
		echo"<table border=1 width=100% cellspacing=0 cellpadding=0>";
		echo"<tr>";
		echo"<td width='50'><font size='2'>";
		echo $data;
		echo"</font>";
		echo"</td>";
		echo"<td width=135><font size='1'>";
		echo $dados['cnome'];
		echo"</td></font>";
		echo"<td width=50><font size='2'>";
		echo "99999";
		echo"</td></font>";
		echo"<td width=60><font size='2'>";
		echo "99999";
		echo"</font>";
		echo"</td>";
		echo"<td width=60><font size='2'>";
		echo $coditem;
		echo"</font>";
		echo"</td>";
		echo"<td width=70><font size='2'>";
		echo number_format($dados['quantidade'], 2, ",", ".");
		echo"</td></font>";
		echo"<td width=80><font size='2'>";
		echo "qtd caixas";
		echo"</font>";
		echo"</td>";
		echo"<td width=70><font size='2'>";
		echo "Status";
		echo"</font>";
		echo"</td>";
		echo"<td width=55><font size='2'>";
		echo $_REQUEST['entrega'];
		echo"</font>";
		echo"</td>";
		echo"<td width=80><font size='2'>";
		echo "OBS";
		echo"</font>";
		echo"</td>";
		echo"</tr>";
		echo"</table>";
		?>
		">
		
		<td width="50" ><font size='2'>
		<?php echo $dados['codseq']; ?></font>
		</td>
		<td width="50"><font size='2'>
		<?php echo $data; ?></font>
		</td>	
		<td width="100"><font size='2'>
		<?php echo $coditem; ?></font>
		</td>
		<td width="300"><font size='2'>
		<?php echo $dados['descricao']; ?></font>
		</td>
		<td width="50" align='right'><font size='2'>
		<?php echo number_format($dados['quantidade'], 2, ",", "."); ?></font>
		</td>
		<td width="50"><font size='2'>
		<?php echo $dados['cnpo']; ?></font>
		</td>
		<td width="290"><font size='1'>
		Grupo:<?php echo $dados['grupo']; ?><br>
		Prod:<?php echo $dados['qtd_prod']; ?><br>
		Iniciou:<?php echo $inicio; ?><br>
		</font>
		</td>
		<td width="50" align='right'><font size='2'>
		<?php echo $n2; ?></font>
		</td>
		<td width="50" align='right'><font size='2'>
		<?php echo $n3; ?></font>
		</td>
		<td width="50" align='right'><font size='2'>
		<?php echo $n4; ?></font>
		</td>
		<td width="50" align='right'>
		<input type="text" name="entrega" id="entrega" maxlength="30" size="7">
		</td>
		<td width="150"><font size='2'>
		<input type="text" name="caixa" id="caixa" maxlength="30" size="7">
		</td>
	</tr>


<?php

}

?>
</table>

</form>
</body>
</html>

Pesquisa.PHP

<select name="ultareaatuacao">	

			<?php
				$query="SELECT CNOME, CCODIGO FROM clientes GROUP BY CNOME, CCODIGO";
				$res= odbc_exec($conn,$query);
				while($dados=odbc_fetch_array($res)){
				
				echo "<option value=" . $dados['CNOME'] . ">" . $dados['CNOME']. "</option>";
}
			?>
			</select>

Eu quero fazer uma mesquisa por data ou pelo nome do cliente que está no BD.

Estou trabalhando com Frame ( frame1 superior fica o select eo input Type campos da data) o ( frame2 fica minha tabela montada legal... só que era é montada atravez da query com hora fixa.. quero mondar atravez dos campos inpu type datanicial e datafinal.)

Compartilhar este post


Link para o post
Compartilhar em outros sites

No SELECT SQL que monta os dados, você precisa adicionar a cláusula:

"WHERE `CNOME` = '{$_POST['ultareaatuacao']}' ";
O teu código está bem extenso.

E para conseguir filtrar as datas, basta capturar o $_POST, e jogar no WHERE da query tb.

Compartilhar este post


Link para o post
Compartilhar em outros sites

William Bruno,

 

Está bem extenso mesmo, num manjo quase nada de PHP, Tenho que fazer um curso é phoda neh.

 

Então com a sua solução num deu mais erro de sintaxe. Mais quando seleciono um cliente na aplicação num acontece nada.

 

Sera que junto ao Select tem que ter onclick, etc

 

So consigo montar meu forme quando ponho o nome direto no select do BD tipo: "WHERE `CNOME` = 'NESTLE'

 

"WHERE `CNOME` = '{$_POST['ultareaatuacao']}' ";

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.