vamos lá:
tenho o bancos
produto
cod, nome, descrição ...
grade_tamalho
id_cor, descrição
grade_tamanho_produto
id, id_tamanho, produto
na tela onde altero os dados dos produtos, preciso trazer apenas as cores que não foram cadastradas.
se eu fizer da maneira abaixo, ele traz as cores, pois podem ter sido cadastradas na tabela grade_tamanho_produto para outros produtos, com outros códigos.
$sql = mysql_query("select * from grade_tamanho_produto, grade_tamanho where grade_tamanho.id_tamanho = grade_tamanho_produto.id_tamanho AND grade_tamanho_produto.cod_produto != ".$prod." group by grade_tamanho.descricao"); $linha = mysql_num_rows($sql); while ($linha = mysql_fetch_array($sql)) { $id_tamanho = $linha["id_tamanho"]; $descricao = $linha["descricao"]; echo "<input type='checkbox' name='tamanho[]' value='$id_tamanho' >$descricao "; }
tentei fazer primeiro selecionando as ids de cores que já foram cadastrados para o produto que esta sendo visualizado na tela como abaixo.
$sql = mysql_query("select * from grade_tamanho_produto where cod_produto = ".$prod." "); $linha = mysql_num_rows($sql); while ($linha = mysql_fetch_array($sql)) { $sql_tamanho = mysql_query("select * from grade_tamanho where id_tamanho != ".$linha["id_tamanho"]." "); ... echo "<input type='checkbox' name='tamanho[]' value='$id_tamanho' >$descricao "; }desta maneira ele até funciona, mas pelo while ele apresenta assim:
digamos que eu tenha cadastrado tamanho 3 e 5 para este produto.... ficara separado em dois:
1
2
4
5
6
...
1
2
3
4
6
7
como posso juntar estes resultados?