A sua loja virtual - Detalhando as informações sobre cada produto


Cada produto possui um link que exibirá informações mais detalhadas a seu respeito (no exemplo , por medida de simplicidade, o detalhamento é bem sucinto).

 

Para criar uma loja virtual usando ASP .NET acompanhe o curso no link : 

ASP .NET - Criando um site completo com carrinho de compras (Curso)

 

Cada link irá chamar o arquivo de script detalhe.asp passando como parâmetro o número de identificação do produto.

Assim para o primeiro produto teremos: detalhe.asp?id=1 e assim por diante. A tela gerada pelo arquivo detalhe.asp é a seguinte:

O código do arquivo de script detalhe.asp é dado a seguir :

%@ Language=VBScript %>
<!-- #Include file="ADOVBS.INC" -->
<html><head>
<title>detalhe.asp</title>
</head>
<body bgcolor="#FFFFFF">
<% 
'declara as variáveis
Dim frm_codId
Dim frm_nome
Dim frm_descricao
Dim frm_valor
Dim frm_urlimagem
Dim SQL
Dim quantidade

ItemId=clng(request.querystring("id"))

set conntemp=server.createobject("adodb.connection")
conntemp.open application("conecta_bd")

SQL="select * from produtos where ProdutoID =" & ItemId
set rstemp=conntemp.execute(SQL,, aCmdText)

' verifica se há dados no recordset
If rstemp.eof then
response.write "Não há dados a exibir<br>"
response.write aspSQL & "<br>Não retorna informação alguma..."
connection.close
set connection=nothing
end if

urlimagem=rstemp("urlimagem")
urlimagem="<img src='" & urlimagem & "'>"
%>

<table border="0" width="661">
<tr>
<TD bgcolor="#FFFFFF" width="653" colspan="4">
<p align="center"><b><font color="#008080" size="5" face="Verdana">JcmSoft
- A sua Loja Virtual</font></b>
</TD>
</tr>
<tr>
<TD align=middle bgColor=#008080 width="653" colspan="4">
<p align="center"><B><FONT color=#FFFFFF 
face=arial size=-2>Copyright JcmSoft. Todos os direitos reservados</FONT></B></p>
</TD>
</tr>
<tr>
<td width="653" colspan="4"><b><font face="Verdana" size="2" color="#008080">Detalhe</font></b>
<hr color="#008080">
</td>
</tr>
<tr>
<td width="182" rowspan="5">
<p align="center"><%=urlimagem%>
</td>
<td width="156"><b><font face="Verdana" size="1" color="#000000">Autor</font></b>
</td>
<td width="315" colspan="2"><font face="Verdana" size="2" color="#008080"><%=rstemp("Autor")%></font>
</td>
</tr>
<tr>
<td width="471" colspan="3">
</td>
</tr>
<tr>
<td width="72"><b><font face="Verdana" size="1" color="#000000">Descrição</font>
</b>
</td>
<td width="361" colspan="2"><font face="Verdana" size="1" color="#000000"><%=rstemp("descricao")%></font>
</td>
</tr>
<tr>
<td width="72"><font face="Verdana" size="1" color="#000000">
<b>Páginas</b>
</font>
</td>
<td width="583" colspan="2"><font face="Verdana" size="1" color="#008080"><%=rstemp("paginas")%></font>
</td>
</tr>
<tr>
<td width="72">
<font face="Verdana">
<b><font size="1" color="#000000">Preço(R$)</font></b><font size="1" color="#000000"></font></font>
</td>
<td width="337"></font></b><font face="Verdana" size="1" color="#000000"><%=formatnumber(rstemp("Valor"),2)%></font>
</td>
<td width="125">
<p align="center"><a href="http://macorati/loja/compre.asp?operacao=incluir&amp;quantidade=1&amp;ProdutoID=<%=itemID%>"><img border="0" src="IMAGENS/cprar.gif"></a>
</td>
</tr>
</table>

<table border="0" width="661" bgcolor="#008080">
<tr>
<td bgcolor="#008080" width="647">
<p align="center"><a href="index.htm"><strong><font face="Verdana" color="#FFFFFF" size="2">Voltar</font></strong></a></td>
</tr>
</table>
<table border="0" width="661">
</table>

</body>
</html>

1-)Declaramos as variáveis usadas na rotina

Dim frm_codId
Dim frm_nome
Dim frm_descricao
Dim frm_valor
Dim frm_urlimagem
Dim SQL
Dim quantidade

2-)Usamos o método Querystring para receber o parâmetro e armazenar o código do produto na variável ItemId. Lembre-se que o método Querystring permite a recuperação de informações enviadas através do método GET com um formulário ou através de dados anexados a URL. O valor ID foi informado através da seguinte  URL no arquivo catálogo.asp: "http://macorati/loja/detalhe.asp?id=<%=rstemp("ProdutoID")%>"

ItemId=clng(request.querystring("id"))

3-)Abrimos a conexão com o banco de dados. 

set conntemp=server.createobject("adodb.connection")
conntemp.open application("conecta_bd")

4-)Selecionamos todos os produtos com o código passado como parâmetro e criamos um recordset com os dados encontrados usando o método Execute passando como parâmetro a string SQL que contém a instrução para selecionar os registros. O conjunto de registros selecionado é passado ao objeto recordset:  rstemp através da declaração Set. O parâmetro aCmdText indica que estamos passando um comando texto , no nosso caso a declaração SQL. 

SQL="select * from produtos where ProdutoID =" & ItemId
set rstemp=conntemp.execute(SQL,, aCmdText)

5-)Se não há produtos com o código fornecido, exibimos um aviso ao usuário e  fechamos a conexão

If rstemp.eof then
   response.write "Não há dados a exibir<br>"
   response.write aspSQL & "<br>Não retorna informação alguma..."
   connection.close
   set connection=nothing
end if

6-) Atribuímos a variável urlimagem a imagem do recordset ( rstemp("urlimagem") ) e a preparemos para ser exibida ao usuário.

urlimagem=rstemp("urlimagem")
urlimagem="<img src='" & urlimagem & "'>"

7-) Exibimos os valores de cada campo do recordset selecionado usando a sintaxe <%=variavel> . Assim usamos os seguintes campos :

Imagem <%=urlimagem%>
Autor <%=rstemp("Autor")%>
Descrição <%=rstemp("descricao")%>
Número de Páginas <%=rstemp("paginas")%>
Valor <%=formatnumber(rstemp("Valor"),2)%>

8-) Incluímos um link vinculado á imagem ("IMAGENS/cprar.gif"> )  do botão Comprar ,  de forma que se o usuário clicar no botão o arquivo compre.asp será chamado passando como parâmetros o modo da operação ( operacao=incluir )  , a quantidade  ( quantidade=1 ) e o código do produto ( ProdutoID=<%=itemID%> )

<a href="http://macorati/loja/compre.asp?operacao=incluir&amp;quantidade=1&amp;ProdutoID=<%=itemID%>"><img border="0" src="IMAGENS/cprar.gif"></a>

9-) Temos também um link vinculado a opção Voltar que ativa a página principal através do arquivo index.htm

<a href="index.htm"><strong><font face="Verdana" color="#FFFFFF" size="2">Voltar</font></strong></a>

 Parte Anterior Próxima parte

Veja os Destaques e novidades do SUPER DVD Visual Basic (sempre atualizado) : clique e confira !

Quer migrar para o VB .NET ?

Quer aprender C# ??

Quer aprender os conceitos da Programação Orientada a objetos ?

Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ?

Quer aprender a criar aplicações Web Dinâmicas usando a ASP .NET MVC 5 ?

 

  Gostou ?   Compartilhe no Facebook   Compartilhe no Twitter

 

Referências:


José Carlos Macoratti