Criando Páginas WAP dinâmicas com WML e ASP
Vamos mostrar um exemplo de como criar um site WAP dinâmico usando WML e ASP. Observe que nos dois arquivos de exemplo a primeira linha inserida é a que permite usarmos scripts ASP e tags WML.
Vamos usar o arquivo Biblio.mdb para nosso exemplo. Ele possui uma tabela chamada Publishers e outra tabela chamada Titles. (Estamos interessados somente nessas duas tabelas)
A principio iremos nos conectar ao banco de dados e exibir o nome dos editores com código menor que 30 - "Select * from PUBLISHERS Where PubId < 30 ORDER BY PubId".
Será criado um link ( <anchor><%=rs("name")%><go href="titulos.asp?id=<%=Pubid%>"/></anchor>) em cada nome , de forma que se o usuário clicar em um nome isto chamará outra página (titulos.asp) que irá abrir a tabela TITLES e exibir os nomes dos títulos publicados para aquele editor e o ano de cada publicação. ("Select * from TITLES Where PubId ="&id&" ORDER BY PubId")
Arquivo editor.asp - Código fonte que exibe o nome dos editores
<% Response.ContentType = "text/vnd.wap.wml" %><?xml version="1.0" encoding="iso-8859-1"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"> <wml>
<!-- Esta é a carta(CARD) principal do Baralho (DECK) --> <card id="MainCard"> <p align="left"><small><b>EXEMPLO DE PAGINA WAP COM ASP </b></small></p> <%
strconn = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" & Server.MapPath("\teste\BIBLIO.MDB") set conn = server.createobject("adodb.connection") conn.open strconn set rs = server.createobject("adodb.recordset")
Query = "Select * from PUBLISHERS Where PubId < 30 ORDER BY PubId" rs.open Query, conn if not rs.eof Then rs.movefirst Do While NOt Rs.EOF id = rs("Pubid") 'le cada registro e exibe %> <p align="left"><small><anchor><%=rs("name")%><go href="artigo.asp?id=<%=Pubid%>"/></anchor></small></p> <% rs.movenext Loop else response.write("<p align='left'><small>Não existem registros para o criterio.</small></p>") End if
' fecha todos os objetos rs.close Set conv = nothing set rs= nothing set conn = nothing
%> <p align="left"><small><a href="pagina1.asp ">Retorna</a></small></p> </card> </wml> |
Abaixo temos o código do arquivo titulos.asp que irá exibir os títulos publicados para determinado editor.
< % Response.ContentType = "text/vnd.wap.wml" %><?xml version="1.0" encoding="iso-8859-1"?><!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"> <wml> <!-- Esta é a carta(CARD) principal do Baralho (DECK) -->
<card id="MainCard"> <% id = Request.QueryString("id") dim conn dim rs dim strsql dim strconn
strconn = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" & Server.MapPath("\teste\biblio.mdb") set conn = server.createobject("adodb.connection") conn.open strconn
set rs = server.createobject("adodb.recordset") Query = "Select * from TITLES Where PubId =" & id & " ORDER BY PubId" rs.open Query, conn
rs.movefirst
Do While NOt Rs.EOF %> <p align="left"><small><b><%=rs("Title")%></b></small></p> <p align="left"><small><%=rs("[Year Published]")%></small></p> <% rs.movenext Loop
'fechando todos os objetos rs.close set rs= nothing set conn = nothing
%> <p align="left"><small><a href="editor.asp">Retorna</a></small></p> </card> </wml> |