Ir para conteúdo

POWERED BY:

Arquivado

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

xanburzum

[Resolvido] Template

Recommended Posts

Usar Template é uma poderosa técnica para tornar o gerenciamento de um site mais simples e mais fácil. Ele permite que você alterar muitos aspectos do seu site sem ter que alterar cada página.Na concepção do modelo, você precisa colocar as áreas importantes da interface ,que será o que eles se parecem. Estas áreas incluem o título da página, navegação e áreas de conteúdo. Você pode exigir mais áreas, dependendo das necessidades do seu site.

 

Vamos escrever um protótipo página HTML para o modelo. Insira o texto do espaço reservado nos lugares onde o texto pode mudar de página para página. Abaixo está um esquema simples e ao código correspondente:

 

Page Title

Nav 1

Nav 2

Nav 3 Aqui vai o conteúdo.

 

<html>
  <head>
	<title>Page Title</title>
  </head>
  <body>
	<table cellpadding="6" cellspacing="0" border="0">
	  <tr>
		<td colspan="2" bgcolor="#aaaaff">
		  <big><b>Page Title</b></big>
		</td>
	  </tr>
	  <tr>
		<td valign="top" bgcolor="#aaaaff" nowrap>
		  Nav 1<br>
		  Nav 2<br>
		  Nav 3
		</td>
		<td valign="top" bgcolor="white">
		  conteúdo aqui.
		</td>
	  </tr>
	</table>
  </body>
</html>

 

Criando o modelo

 

Agora temos que dividir o código em duas partes, o cabeçalho e o rodapé. Basicamente, tudo antes do conteúdo "vai aqui." marcador é o cabeçalho, e depois de tudo é o rodapé. Uma vez que você tenha quebrado o código HTML para estas duas peças, criar um novo arquivo ASP em duas sub-rotinas chamado Cabeçalho e rodapé, como este:

 

<% Sub Header(title) %>
<% End Sub %>

<% Sub Footer() %>
<% End Sub %>

 

Você notará que a rotina de cabeçalho tem um parâmetro, o título. Isto é, para que possamos passar o título da página na rotina para que possa inseri-lo no modelo. Agora coloque o código HTML para a sub-rotinas. Nos lugares onde o título deve ir no cabeçalho, em vez colocar o código <% = title%>.

 

<% Sub Header(title) %>
<html>
  <head>
    <title><%=title%></title>
  </head>
  <body>
    <table cellpadding="6" cellspacing="0" border="0">
      <tr>
        <td colspan="2" bgcolor="#aaaaff">
          <big><b><%=title%></b></big>
        </td>
      </tr>
      <tr>
        <td valign="top" bgcolor="#aaaaff" nowrap>
          Nav 1<br>
          Nav 2<br>
          Nav 3
        </td>
        <td valign="top" bgcolor="white">
<% End Sub %>

<% Sub Footer() %>
        </td>
      </tr>
    </table>
  </body>
</html>
<% End Sub %>

É muitas vezes uma boa prática para salvar templates e outros arquivos que são incluídos por suas páginas em um diretório separado. Eu chamei o meu "incluir", então vamos salvar o nosso modelo como "/ include / template.asp".

 

Usando o modelo

 

Agora, para usar o seu modelo, tudo que você precisa fazer é incluir o arquivo de modelo, então chamar cabeçalho e rodapé em locais apropriados. Aqui está o código para uma página de exemplo de que as importações do modelo.

 

<!--#include virtual="/include/template.asp"-->
<% Header "Template Teste" %>
Este é um teste do template!
<% Footer %>

você tambem pode usar um arquivo chamado config, onde nele terá todas as configurações necessárias para seu site.

 

<%
'*************** EDITE CONFORME CONFIG. DE SUA APLICAÇÂO

' Alterar caminho para o banco de dados
strDBPath = Server.MapPath("/blog/blog.mdb")

' Caminho RSS feed
xmlpath = Server.MapPath("/blog/xml/rss.xml")

' Alterar para domínio 
strLink = "http://www.xanburzum.com"

'Mudar dentro de uma pasta ex "/ blog /" ou deixe em branco "/" se raiz
strFolder = "/blog/"

'Time format if 24 hours leave empty "" else "ampm" if AM/PM
timeFormat = ""

'Time zone example "+0100" or "GMT"
zTime = "GMT"

'*************** STOP
'On error resume next

blogName = "Blog X.1"

sConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strDBPath

set conn = Server.CreateObject("ADODB.Connection")

sub OpenDB(sConn)
	conn.open sConn
end sub

sub CloseDB()
	conn.close
	set conn = nothing
end sub

%><!--#include file="adovbs.inc"--><!--#include file="function.asp"-->

 

Usando um banco de dados.Este banco de dados será usado para a nossa extensa base de dados do employee , em nosso ambiente de simulação. Aqui está o que será de monitoramento para o nosso modelo - ID do funcionário, seu primeiro e último nome, uma foto, e uma sinopse de suas funções, com uma data de quando a foto foi tirada.

 

banco de dados Access

 

FileName - Database.mdb

Table - Employees

ID - Autonumber

FullName Text - Maximum 100 characters

PicURL Text - Maximum 255 characters

Duties Memo Field

PicCaption Text - 50 Characters

 

Como você pode ver, esta é uma configuração muito fácil para um banco de dados. Claro que pode ser expandida.

Agora que temos nossa configuração de banco de dados, vamos criar o nosso arquivo de modelo. Este arquivo será o esqueleto para cada usuário.

 

<img src="%img%" align="left"><p>Nome Completo: <b> %name% </b>
	<br>Descrição das funções: <br>%duties%
	<br>Esta foto foi tirada: %date%
	<br><br>
	ID: %empID%

Isso é tudo que eu tenho a configuração para o código.modelo muito simples . Observe que podemos usar tags HTML no nosso modelo. Agora temos de projetar nossa página. Esta página será o encarregada de apresentar o modelo o banco de dados, e retornar a página que desejamos.

 

<%
If Request.QueryString("EmpID") = "" Then
	Response.Redirect "Employee.htm"
End If

Em seguida, criamos uma conexão caso o usuário tenha fornecido um ID:

 

constring="provider=microsoft.JET.OLEDB.4.0;Data Source=" & Server.MapPath("db/Database.mdb")
Set cnADO =Server.CreateObject("ADODB.Connection")
conexao.open constring
	set mySQL = "SELECT * FROM EMPLOYEES WHERE ID=" & Request.QueryString("EmpID")
	set rsTemp = cnADO.Execute(mySQL)

Este é o nosso código de banco de dados.

 

'Se não podemos encontrar a identificação do funcionário, redirecionar
'Usuário para uma página não encontrada ...

	If rsTemp.EOF then
		Response.Redirect "notfound.htm"
	Else

Este código verifica se o empregado não foi encontrado. Se for esse o caso, então, levá-los para a página de erro descrevendo o motivo.

 

>
<html>
	<head>
	   <title><%=rsTemp("FullName")%></title>
	</head>
	<body>
<%
	set fso = Server.CreateObject("Scripting.FileSystemObject")
	set ourtext = fso.GetFile("template.tmp")


	set ts = ourtext.OpenAsTextStream(1,-2)

	Do while not ts.AtEndOfStream
		myText = ts.readline
		myText = replace(myText, "%img%", rsTemp("picURL"))
		myText = replace(myText, "%name%", rsTemp("FullName"))
		duties = replace(rsTemp("duties"), vbCrLf, "<br>")
		myText = replace(myText, "%duties%", duties)
		myText = replace(myText, "%empID%", rsTemp("ID")
		myText = replace(myText, "%date%", rsTemp("PicCaption")
		Response.Write myText
	Loop

	set ts = nothing
	set ourtext = nothing
	set fso = nothing

	rstemp.close
	set rstemp = nothing

	cnADO.Close
	set cnADO = nothing

%>
	</body>
</html>

Isso é tudo que o nosso código. Parece simples, não é? O que ele faz é abrir o nosso arquivo de modelo, e ler cada linha seqüencialmente. Ele substitui nossos strings codificadas (% img%,% name%), com os nossos campos reais. Além disso, ele converte cada quebra de linha em <br>, para manter a formatação.

Bem, aí está. Maneira simples de fazer arquivos de modelo.

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.