|
|
|

|

|
Dicas
|

|
ASP - Active Server Page (Miscelâneas)
|
|
 |
Título da Dica: Encher uma Combo Box com dados de uma Base de Dados
|
 |
|
|
Postada em 23/10/2003 por ^HEAVY-METAL^
Encher uma combo box com dados da Base de Dados é algo que normalmente os programadores de ASP precisam muito. Este código apresenta-nos um exemplo de como o fazer. É algo que todo o iniciante deve de ler e implementar.
Primeiro abrimos a base de dados, executamos a declaração de SQL, e guardamos o resultado num recordset. Assim que temos o recordset, fazemos um loop que põe os dados dentro da Combo Box. A estrutura da BD usada para este exemplo é muito simples e apresenta-se a seguir :
Topic ID Number Name Text
Aqui está o código, muito simples de se perceber.
<% ' o objecto para a conexão Dim objConnection ' o objecto para o recordset Dim objRecordset
' criação do objecto para a conexão Set objConnection = Server.CreateObject("ADODB.Connection") ' abrir a conexão por DSN objConnection.Open
' criação do objecto recordset Set objRecordset = Server.CreateObject("ADODB.Recordset")
' criar a declaração de SQL Dim strSQL strSQL = "SELECT ID, NAME FROM TOPIC"
' executar a declaração de SQL desejada ' Esta deverá de retornar toda a informação pretendida ' para dentro da Combo Box objRecordset.Open strSQL, objConnection %>
<HTML> <BODY> <FORM ACTION="umurl.asp" METHOD=POST> Choose from the combo: select name="lstTopic" size="1"> <% ' enquanto não chegamos ao fim dos dados Do While Not objRecordset.EOF 'pomos o valor do Id ' muito importante para tabelas linkadas %> <option VALUE="<%=objRecordset("ID")%>"> <!-- Aqui é o que aparece na Combo --> <%=objRecordset("NAME")%></option> <% ' Movemos para os dados seguintes do recordset... objRecordset.MoveNext Loop ' continuamos o Loop %> </SELECT> </FORM>
</BODY> </HTML>
<% ' fechar o objecto do recordset objRecordset.Close
' limpar o objecto do recordset Set objRecordset = Nothing %>
T+,
|
|
|
|

|