Ricardo Gonçalves Posted April 9, 2012 at 02:04 PM Report #448206 Posted April 9, 2012 at 02:04 PM Boa tarde, estou com um problema de inserção de dados na Base de Dados, eu no meu site em PHP tenho uma opção onde insiro dados de um produto, e na Base de Dados tenho uma Tabela só com tipos de Produtos com 2 campos, 1 com "ID_tipo" e outro com "tipo_produto" e nessa opção que tenho na Web tenho uma opção para inserir produtos e tenho uma opção em combobox que mostra todos os tipo de produto que está na tabela "tipo_produto", o meu problema é como gravo o tipo de produto na tabela de produto? porque na tabela produto ele grava é o codigo do tipo de produto e não o nome do tipo de produto.
pedrosorio Posted April 9, 2012 at 07:51 PM Report #448277 Posted April 9, 2012 at 07:51 PM Onde é que está o código? Não respondo a dúvidas por mensagem.
Ricardo Gonçalves Posted April 9, 2012 at 09:43 PM Author Report #448294 Posted April 9, 2012 at 09:43 PM Vou tentar explicar melhor tenho uma tabela produtos onde tem o produto_id, id_tipo, etc... , e tenho outra tabela onde tenho tipos de produtos onde tem id_tipo e descrição do tipo do produto. e eu no site tenho uma página que insere os produtos na base de dados na tabela produtos, só que o tipo de produto vais buscar á tabela tipo produto e não vais buscar o código e sim a descrição. e o problema é ao inserir na tabela produtos quero que elem grave o tipo produto só que em vez de gravar a descrição quero que grave o código desse tipo de produto. Por exemplo na tabela tipo de produto tenho o seguinte no id_ tipo é 1 e no tipo_produto é HP, no site quando vai mostrar para o utilizador o select , vai mostrar o tipo_produto e não o id_tipo mas na tabela produtos ao gravar tem que gravar o id_tipo como faço isso? ele tem que buscar o código do tipo de produto á tabela tipo de produto e gravar na tabela produto.
pedrosorio Posted April 9, 2012 at 10:24 PM Report #448299 Posted April 9, 2012 at 10:24 PM Em princípio não precisas de mudar muita coisa. Quando fazes o select (em SQL) para mostrar o tipo_produto (provavelmente numa <option> num form de HTML), estás a fazer um select à tabela de tipos de produtos, pelo que podes também ir buscar o id_tipo e colocá-lo como value dessa option. Assim, o teu script php que processa essa form vai receber diretamente o id_tipo do tipo de produto seleccionado. Não respondo a dúvidas por mensagem.
Ricardo Gonçalves Posted April 9, 2012 at 10:27 PM Author Report #448300 Posted April 9, 2012 at 10:27 PM humm já percebi vou tentar fazer isso Obrigado.
AndreLC Posted April 10, 2012 at 08:12 AM Report #448322 Posted April 10, 2012 at 08:12 AM Bom dia, Não era +/- isso que tinhas colocado anteriormente aqui: http://www.portugal-a-programar.pt/forums/topic/0-find-topic/?do=findComment&comment=441656 ? Cumprimentos, AndreLC echo ($knowledge != $sharing) ? "Serves no purpose!" : "Thank you for your help. It was very precious.";
Ricardo Gonçalves Posted April 10, 2012 at 01:12 PM Author Report #448373 Posted April 10, 2012 at 01:12 PM sim é parecido com esse tópico porque depois modifiquei só que ai é o problema, como faço para ele gravar o id_tipo desse tipo_de_produto para depois no INSERT por essa variável?
AndreLC Posted April 10, 2012 at 01:55 PM Report #448382 Posted April 10, 2012 at 01:55 PM Mas o que queres guardar pelo que percebi é o código id_tipo, correcto? E tens o select com as options, certo? Repara que se tiveres no value da option o código id_tipo e quando fazes $_POST do que tiver no name do select é o código id_tipo que estás a passar para a variável. Basta fazer o insert como fazes com os outros campos. No exemplo que tinha dado no outro post que o select tem como name="tipo_produto" se fizer, por exemplo: $id_tipo = $_POST['tipo_produto']; $query = "INSERT INTO tabela_produto (id_tipo) VALUES ('$id_tipo') "; //query incompleta só com o campo necessário só para ilustrar o exemplo mysql_query($query); Já estás a fazer o insert do código id_tipo. A ideia é onde tens o select com as options fazes a query à tabela secundária para colocares no value da option o código e dentro da option a descrição. A seguir, quando fazes o insert, visto ser chave estrangeira pelo que percebi, fazes o insert à tabela principal onde o campo id_tipo vai receber o valor (devido ao que está no value da option) do select, neste caso da variável $id_tipo. echo ($knowledge != $sharing) ? "Serves no purpose!" : "Thank you for your help. It was very precious.";
Ricardo Gonçalves Posted April 11, 2012 at 01:10 PM Author Report #448568 Posted April 11, 2012 at 01:10 PM daqui a pouco vou experimentar desta forma e ja digo algo. Obrigado
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now