Ir para conteúdo

POWERED BY:

Arquivado

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

Giuliano Santos

Consulta com checkbox

Recommended Posts

Fiz uma consulta para apresentar na tela varias informações listadas com checkbox. Através dessa lista a ideia é selecionar alguns checkbox´s para filtrar ainda mais esse conteúdo.

A primeira página traz todo o conteúdo, mais quando seleciono alguns checkbox´s para filtrar ainda mais esse conteúdo aparentemente ele não esta levando as informações $_POST de cod_produto para a outra página de pesquisa. Não apresenta nenhum erro, mais também não traz resultado.

A primeira página esta assim:

			$produtos = mysql_query("SELECT 
							cod_produto,
							produto,
							count(quantidade) as qtd_produto
						FROM movimentos
						WHERE cnpj = '$cnpj'
						group by 1,2
						order by produto"
						, $conector);
		
			echo "<BR>
				<TABLE>
				<FORM method=POST name='modelo_nota_1' action='modelo_nota_2.php'>
					<TR>
					        <TH><STRONG>Opção</STRONG></TH>
						<TH><STRONG>Cod Produto</STRONG></TH>
						<TH><STRONG>Produto</STRONG></TH>
						<TH><STRONG>QTD</STRONG></TH>
					</TR>";
			while($registro = mysql_fetch_array($produtos)) {
				echo "<TR>";
				echo "<TD align='center' width='5%'> <input type='checkbox' name= 'cod_produto[]' value=".$registro["cod_produto"]."> </TD>";
				echo "<TD width=\"15%\">".$registro["cod_produto"]."</TD>";
				echo "<TD width=\"75%\">".$registro["produto"]."</TD>";
				echo "<TD align=\"center\" width=\"5%\">".$registro["qtd_produto"]."</TD>";
				echo "<input type=\"hidden\" name=\"cnpj\" value=".$cnpj.">";
				echo "</TR>";
			}	
A Segunda página que recebe o $_POST de cod_produto esta assim:
<?php include "header.php" ?>

<?php

$cnpj = ($_POST["cnpj"]);

if (!empty($_POST['cod_produto'])) {
    $cod_produto = '`' . implode('`,`', $_POST['cod_produto']) . '`';
}
									
		$conector = mysql_connect("localhost", "root", "");
		mysql_select_db("intranet", $conector);
				
			$produtos = mysql_query("SELECT 
							cod_produto,
							produto,
							count(quantidade) as qtd_produto
						FROM movimentos
						WHERE cnpj = '$cnpj' and cod_produto in ('$cod_produto')
						group by 1,2
						order by produto"
						, $conector);
		
			echo "<BR>
					<TABLE>
					<FORM method=POST name='modelo_nota_2' action='modelo_nota_3.php'>
						<TR>
							<TH><STRONG>Opção</STRONG></TH>
							<TH><STRONG>Cod Produto</STRONG></TH>
							<TH><STRONG>Produto</STRONG></TH>
							<TH><STRONG>QTD</STRONG></TH>
						</TR>";
			while($registro = mysql_fetch_array($produtos)) {
				echo "<TR>";
				echo "<TD align=\"center\" width=\"5%\"><input type=checkbox name=\".produdo[].\" value=".$registro["cod_produto"]."></TD>";
				echo "<TD width=\"15%\">".$registro["cod_produto"]."</TD>";
				echo "<TD width=\"75%\">".$registro["produto"]."</TD>";
				echo "<TD align=\"center\" width=\"5%\">".$registro["qtd_produto"]."</TD>";
				echo "</TR>";
			}
    mysql_close($conector);
	
	echo"</TABLE>";
	echo"<TABLE>";
		echo"<TD><INPUT type=SUBMIT value='Próximo' class='btn'></TD>";
	echo"</TABLE>";
	echo"</FORM>";
		
  echo "<br><p align=center><a href=\"/intranet/modelo_nota_1.php\">Fazer nova consulta</a><br>";	

?>

  </BODY>
</HTML>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Troque:

$cod_produto = '`' . implode('`,`', $_POST['cod_produto']) . '`';

Por:

$cod_produto = implode(',', $_POST['cod_produto']);

Acho que também pode remover os apóstrofes daqui:

('$cod_produto')

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Troque:

$cod_produto = '`' . implode('`,`', $_POST['cod_produto']) . '`';

Por:

$cod_produto = implode(',', $_POST['cod_produto']);

Acho que também pode remover os apóstrofes daqui:

('$cod_produto')

 

Boa noite Edgar,

 

testei a sua sugestão aqui e deu certo.

 

muito obrigado pela ajuda

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.