Ir para conteúdo

POWERED BY:

Arquivado

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

Gbyteinfo-Jorge

Gravar Informações no Banco Por um 'Option'

Recommended Posts

Galera da Imasters, estou parado aqui com um sistema que estou desenvolvendo para um empresa da minha cidade, vou tentar relatar minha duvida da melhor forma para que vcs possam entender ok.

 

vamos la:

 

no site estou desenvolvendo um sistema de de cadastro de produtos para orçamento, quando o cliente seleciona o produto, ele ira selecionar alguns dados de como ele quer o produto, como por exemplo cores para tampos, cores para bordas e cores para estrutura, ou seja são 3 areas que o cliente vai escolher qual cor ela que para qualquer uma delas, depois disso ela preenche o formulario e o orçamento é gravado no servidor e é enviado uma cópia do orçamento(provavelmente eu use o pdf) para o cliente.

Pois bem, para que isso seja possivel, o adm do site precisa inserir as informações via painel de comando que criei, a minha duvida é agora na hora de colocar as cores para os produtos, eu dividi o cadastro da seguinte forma:

 

1 - Criei 3 tabelas no banco cor_tampos, cor_estrutura e cor_bordas

2 - Criei uma Tabela só para os produtos

 

só que não estou conseguindo raciocinar como faço para quando o adm for adicionar o produto, ele precisa selecionar para aquele produto alguma das cores que ele cadastrou. exemplo

 

Mesa Alist = cor de bordas disponiveis = verde, amarelo, salmão, azul e etc...

 

o adm primeiro cadastra as cores, e no formulario de cadastro do produto, estou querendo usar um option para listar as cores existentes, só que o adm vai selecionar quantas cores ela quizer, ou seja não tenho uma quatidade certa para poder adcionar na tabela.

 

Por Favor me Ajudem.... to ficando loco com a minha falta de atenção em tudo isso.... aguardo uma alma amiga ai, Obrigado e Boa Noite

 

 

 

 

 

 

 

 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

A lógica seria mais ou menos essa:

 

produto | cor

Mesa A | verde

Mesa A | amarelo

Mesa A |salmão

Mesa A |azul

 

Sugiro usar checkbox ao invés de option.

 

Leia

http://www.geracaobeta.com/2010/01/recuperando-dados-de-um-checkbox-como-array/

e prossiga

Ao submeter o formulário de cadastro recupere junto com os options o nome do produto,

fazendo um looping para inserir

produto »cor x

produto »cor y

produto »cor z

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vou dar uma olhada aqui e ver se consigo resolver, o problema é o comando mesmo, naum me dou mto bem com arrays rsrsrs, mas valew pela dica



A lógica seria mais ou menos essa:

 

produto | cor

Mesa A | verde

Mesa A | amarelo

Mesa A |salmão

Mesa A |azul

 

Sugiro usar checkbox ao invés de option.

 

Leia

http://www.geracaobeta.com/2010/01/recuperando-dados-de-um-checkbox-como-array/

e prossiga

Ao submeter o formulário de cadastro recupere junto com os options o nome do produto

 

Só que como gravo no banco para recuperar as cores cadastradas para aquele produto na pagina do site? pq eu não tenho o campo na tabela de produto entendeu?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Creio que vai precisar criar um campo com o id da cor.

Porém é legal que as tabelas produto e cor estejam relacionadas, facilita a sua vida.

Dá uma pesquisada sobre modelagem de dados, relacionamento de tabelas, MER ouDER

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quem vai escolher a cor e etc é o admin do site ou o cliente?

 

Para o cliente o option é perfeito, se for para o admin marcar as cores disponíveis então o checkbox é melhor e como disseram, você faz um loop para inserir no banco de dados.

 

O loop para inserir no bd depois de enviado pelo checkbox funciona mais ou menos assim:

 

$produto=$_POST['produto'];

 

// Verifica se admin escolheu alguma cor
if(isset($_POST["cor"])){
$qtde_posicoes = count($_POST["cor"]);//recebe a quantidade de posições do vetor
// Faz loop pelo array
foreach($_POST["cor"] as $key => $value) {
echo"$value";
$x = mysql_query("INSERT INTO produtos (produto,cor) VALUES ('$produto','$value')");
}
if($x){echo"Produto adicionado com sucesso!";
}else{
echo"ixee, houve algum problema";}
}}
Para exibir os checkbox com as cores para o admin marcar você pode também fazer utilizando um loop while com o resultado do bd.
A lógica é mais ou menos assim, adapte pro seu caso. Qualquer dúvida é só falar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Creio que vai precisar criar um campo com o id da cor.

Porém é legal que as tabelas produto e cor estejam relacionadas, facilita a sua vida.

Dá uma pesquisada sobre modelagem de dados, relacionamento de tabelas, MER ouDER

 

Vou dar uma pesquisada sobre a modelagem, mas a questão do campo que voce disse que tem que criar, é na tabela de produtos né? E caso seja, como vou salvar por exemplo o id de duas, tres ou mais cores, em um campo só, por que não tem como saber entendeu, vai depender do tipo de produto, o que eu entendi, é que crio o campo para resgatar os ids de cada cor selecionado no mesmo campo, e separalos por virgula, quando for recuperar as cores na pagina do produto no site eu do um explode na virgula para pegar as cores?

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Quem vai escolher a cor e etc é o admin do site ou o cliente?

 

Para o cliente o option é perfeito, se for para o admin marcar as cores disponíveis então o checkbox é melhor e como disseram, você faz um loop para inserir no banco de dados.

 

O loop para inserir no bd depois de enviado pelo checkbox funciona mais ou menos assim:

 

$produto=$_POST['produto'];

 

// Verifica se admin escolheu alguma cor
if(isset($_POST["cor"])){
$qtde_posicoes = count($_POST["cor"]);//recebe a quantidade de posições do vetor
// Faz loop pelo array
foreach($_POST["cor"] as $key => $value) {
echo"$value";

$x = mysql_query("INSERT INTO produtos (produto,cor) VALUES ('$produto','$value')");
}
if($x){echo"Produto adicionado com sucesso!";
}else{
echo"ixee, houve algum problema";}
}}
Para exibir os checkbox com as cores para o admin marcar você pode também fazer utilizando um loop while com o resultado do bd.
A lógica é mais ou menos assim, adapte pro seu caso. Qualquer dúvida é só falar.

 

cara valew pela dica, mas o loop em si eu ja tenho ele prontinho cara o problema é como vou salvar no banco, ou seja, como programo para salvar em um campo de uma tabela varias informações e depois recupera-las na pagina do site para o cliente selecionar uma dentro daquelas que o adm cadastrou para aquele produto

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos ver então se entendi:

 

Faça assim: Para cadastrar utilize o loop com checkbox que te passei, assim insira na tabela produtos vários registros com o mesmo nome de produto porém com a cor diferente.

 

produto cor

 

produto1 verde

produto1 azul

 

 

Ai pra apresentar pro usuário as opções faça um loop pela tabela onde o nome do produto for igual ao produto que deseja exibir as opções.

 

Ai no option você da um echo só na cor, assim ele vai exibir as cores para aquele produto pro comprador escolher.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Supondo que você tenha 2 tabelas(produto e cor)

 

produto
 
id_produto |descricao_produto | id_cor
//id_cor como chave estrangeira
 
cor
id_cor | descricao_cor

 

Pra fazer o select das duas tabelas pesquise sobre inner join

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos ver então se entendi:

 

Faça assim: Para cadastrar utilize o loop com checkbox que te passei, assim insira na tabela produtos vários registros com o mesmo nome de produto porém com a cor diferente.

 

produto cor

 

produto1 verde

produto1 azul

 

 

Ai pra apresentar pro usuário as opções faça um loop pela tabela onde o nome do produto for igual ao produto que deseja exibir as opções.

 

Ai no option você da um echo só na cor, assim ele vai exibir as cores para aquele produto pro comprador escolher.

valew cara vou começar aqui agora tentar resolver isso rsrs, ...

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.