helyoWAP |
|
PÁGINAS
WML GERADAS DINAMICAMENTE EM AMBIENTE ASP |
Autores: Helio Fonseca Rosa e Andrea de Mello Rosa
Esta página contém 6 figuras grandes. Aguarde a carga se a conexão estiver lenta.
Consulta ao bancoCinema.mdb (4)
Continuando. Vamos mostrar a tela dos cinemas já mostrada anteriormente.
Clicando na tecla abaixo do label "Link" abre-se a seguinte tela ( a segunda foi obtida por rolamento da primeira):
Mudando o que deve ser mudado, tudo se passa de modo idêntico ao que foi comentado em relação ao programa tela100.asp.
A tela acima foi gerada pelo programa tela200.asp, gravado com opção "somente texto" na pasta c:\inetpub\wwwroot\asp.
Programa tela200.asp
<%
Response.ContentType = "text/vnd.wap.wml"
%>
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
" http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card>
<p>
***** HELYOWAP *****<br/>
******CINEMAS*******<br/>
<%
DIM conCinema
DIM recCines
DIM pssql
DIM cod
codigo=(Request.QueryString("cod"))
const cntCaminho = "c:\inetpub\wwwroot\asp\bancoCinema.mdb"
Set conCinema = Server.CreateObject("ADODB.Connection")
Set recCines = Server.CreateObject("ADODB.Recordset")
conCinema.Open "driver={Microsoft Access Driver (*.mdb)};dbq="
& cntCaminho
pssql = "SELECT tblFilme.NomeFilme, tblProgramacao.Horarios, "
pssql = pssql & " tblCinema.CodCinema, tblCinema.NomeCinema
"
pssql = pssql & " FROM tblFilme INNER JOIN (tblCinema INNER JOIN
tblProgramacao "
pssql = pssql & " ON tblCinema.CodCinema = "
pssql = pssql & " tblProgramacao.CodCinema) ON tblFilme.CodFilme =
"
pssql = pssql & " tblProgramacao.Codfilme "
pssql = pssql & " WHERE tblCinema.CodCinema= " & codigo
recCines.Open pssql,conCinema
Response.Write recCines.Fields("NomeCinema") & "<br/>"
Do While Not recCines.Eof
Response.Write recCines.Fields("NomeFilme") & "<br/>"
Response.Write recCines.Fields("Horarios") & "<br/>"
recCines.MoveNext
Loop
recCines.Close
conCinema.Close
%>
</p>
</card>
</wml>
A sentença SELECT foi gerada do
mesmo modo anterior, com as seguintes diferenças para efeito didático:
-vamos utilizar apenas três tabelas;
-vamos colocar o código 1 que força uma query para o primeiro cinema da lista
na coluna CodCinema (lembrando que este 1 será substituido pela variável
"codigo" na listagem do programa).
A query obtida foi:
O programa cinema100.asp enviou
para o programa tela200.asp acima o código 4 que corresponde ao cinema Cinemark
4.
Do mesmo modo anterior, vou colocar na grade da query o número 4 (linha
Criteria, coluna CodCinema).
Assim, obtenho a tabela recordset onde o programa vai buscar os dados para
montar a tela:
Encerramos estas páginas sobre
consulta ao bancoCinema.mdb.
Fazendo uma observação isenta, podemos concluir que o maior esforço de
programação envolveu a parte relacionada ao ASP (VBScript, SQL) e ao
ACCESS.
Da linguagem WML propriamente dita, poucos comandos foram utilizados e, mesmo
assim, de forma repetitiva. Tema para meditação...
Se você chegou até
este ponto vindo das páginas anteriores é porque domina bem a técnica de
banco de dados e conhece as siglas:
ADO - ActiveX Data Objects;
OLE DB - Object Linking and Embbeding Database;
ODBC - Open Database Connectivity;
DSN - Data Source Name
Você deve ter reparado que a conexão com o bancoCinema.mdb até agora foi "DSN-less" ou "sem DSN".
Na próxima página vamos exemplificar a criação de uma conexão "com DSN".