Ir para conteúdo

POWERED BY:

Arquivado

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

gpassarelli

Arquivos Bd no List/Menu

Recommended Posts

Bom galera eh o seguinte.to com um projeto aqui que eh pra um catalogo de uma loja...E tipo...Na hora de você adicionar novos produtos tem lah um List/Menu pra você informar o fabricante do produto.soh que oq eu quero eh.O meu Bd tem assim...uma tabela de produtos e outra tabela de fabricantes.Eu quero saber como que eu fasso pro list/menu ler e listar os fabricantes que tao dentro do tabela fabricantes.E informa na tabela produtos,que tem os seguintes form:Produto / Fabricante_Produto...Entenderam?Espero resposta...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom... Tenta assim:

 

<%Set conexao = Server.CreateObject("AdoDb.Connection")conexao.provider="Microsoft.Jet.OLEDB.4.0"conexao.connectionstring=Server.Mappath("banco.mdb")conexao.openSet RS_Max = Server.CreateObject("ADODB.Recordset")RS_Max.CursorType = adOpenKeysetRS_Max.Open "SELECT * FROM fabricantes order by ID", Conexao%><form name="form1" method="post" action="">		<select name="atendente" size="1" class="style1" id="atendente">		<%do while not Rs_max.eof%><option value="<%=rs_max("fabricante")%>"><%=rs_max("fabricante")%></option><%rs_max.movenextloopRs_max.closeConexao.CloseSet Conexao = Nothing%></select>

Eu uso assim, talvez tenha outras maneiras, mas essa funciona, e a parte que informa na tabela produtos, num entendi o que você quis dizer.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom galera eu ate consegui fazer com que ele leia os arquivos da outra tabela usando o seguinte codigo:

<select name="fabricante" id="fabricante"><% do while fabricante.eof = false %>  <option value=<%=fabricante("fabricante")%>><%=fabricante("fabricante")%></option><%fabricante.movenextloop%></select>

Soh que oq acontece...

eu naoo to conseguindo acertar o codigo pra editar depois as informações...

Tive se o produto muda de fabricante...

Eu nao to conseguindo fazer com que ele exiba a lista novamente com o valor que ele está em primeiro e as outras opções depois...

alguem pode me ajudar...?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Salve :D

 

A lógica para isso é simples... ou seja.. você tem as duas tabelas:

 

Produtos / Fabricantes

 

Na tabela fabricantes, só é necessário dois campos, um para o ID e outro para o nome do fabricante

 

Ai, na tabela produtos, você não vai armazenar o NOME do fabricante, mas sim o ID dele...

 

A estrutura da sua tabela produtos deve ser basicamente:

 

id - Número Inteiro

fabricante - Texto (Varchar se não for access)

 

Aí, na página do formulário de cadastro, você terá o seguinte:

 

Produto: <input type="text" name="produto" /><br /><br />Fabricante:<% Set conexao = Server.CreateObject("AdoDb.Connection")conexao.provider="Microsoft.Jet.OLEDB.4.0"conexao.connectionstring=Server.Mappath("banco.mdb")conexao.openSet RSfabricantes = conexao.Execute("SELECT * FROM fabricantes")If Not RSfabricantes.Eof ThenResponse.Write("<select name='fabricante'>") & VbCrLfDo While Not RSfabricantes.EofResponse.Write("<option value='"&RSfabricantes("id")&"'>"&RSfabricantes("fabricante")&"</option>") & VbCrLfRSfabricantes.MoveNextLoopResponse.Write("</select>") & VbCrLfEnd IfSet RSfabricantes = NothingEtc...
Ou seja, você não irá cadastrar o NOME do fabricantes, mas o ID relativo ao mesmo na tabela fabricantes... e na hora de listar os dados do produto você abre outro recordset que irá ler o nome do fabricante de acordo com seu ID..

 

Abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caro Rafael...

Desse modo que você disse para listar os arquivos da tabela Fabricantes ele ate listou os fabricantes mais nao dentro de um list/menu do modo que eu quero...

E do outro jeito meu eu consegui fazer ele salvar pela ID do fabricante mais exibindo o nome dele...

usando o seguinte codigo:

<%set fabricante = connect.execute("SELECT * FROM fabricantes")%>

<select name="fabricante" id="fabricante"><% do while fabricante.eof = false %>  <option value=<%=fabricante("id")%>><%=fabricante("fabricante")%></option><%fabricante.movenextloop%>

Agora o problema está na hora de editar o arquivo depois.

Eu nao consigo fazer com que no list/menu apareca todas as opções de fabricantes...

Mais vir selecionada a que jah estava definida...

 

O list/menu vem apenas com o fabricante que foi definido e soh...

nao tendo como eu altera....

 

você pode me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta isso:<%Option Explicit'Definindo as variáveis de conexãoDim localbd, bd, rsfabricantesDim id'Indicando Driver, local e fazendo a conexao com o banco de dados'Definindo também o Recordset que selecionará os fabricanteslocalbd = "Driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("../data/bd.mdb")set bd=Server.CreateObject("ADODB.Connection")set grupos=Server.CreateObject("ADODB.Recordset")id= Request.Form("add")'campo hiddem no form'Abrindo conexaobd.Open localbd'Selecionando todos os gruposrsfabricantes.Open "SELECT * from fabricantes", bd%>-------------------------------------------------------------------------------------------------------- <select name="frabricantes" id="frabricantes" class="text"> <% 'Criando um While para mostrar todos os grupos selecionados while NOT rsfrabricantes.EOF %> <option value="<% =rsfrabricantes.fields("id") %>"><% =fabricantes.fields("fabricantes") %></option> <% rsfrabricantes.movenext wend %>

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.