Ir para conteúdo

POWERED BY:

Arquivado

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

DackAle

Gerar HTML

Recommended Posts

E ae galera

 

Dei uma busca e não achei (apesar de jurar já ter visto algo do tipo) aqui, com FSO eu queria ler o código fonte a página, mas não achei... achei isso só

 

ASP

[*]Set objFSO Server.CreateObject("Scripting.FileSystemObject")

 

[*]

 

[*]Set objTextStream objFSO.OpenTextFile(Server.MapPath("email.asp"),1)

 

[*]Set FHtm CreateObject("htmlfile")

 

[*]FHtm.write objTextStream.ReadAll()

 

[*]TextoHTML FHtm.Body.InnerText

 

[*]

 

[*]Set objTextStream = Nothing

 

[*]Set objFSO = Nothing

 

dai ele me retorno TEXTO

 

Você recebeu uma nova mensagem: Nome: ##variasp_nome## Email: ##variasp_email## Telefone: ##variasp_ddd## - ##variasp_tel## Bairro: ##variasp_bairro ## Cidade: ##variasp_cidade## Estado: ##variasp_estado## Assunto: ##variasp_assunto## Mensagem: ##troca(variasp_mensagem)## Equipe Artesanato Gastronômico

eu precisava que me retornasse o HTML da pagina...

 

Alguem sabe como faço isso ou um turoail ou qualquer coisa ? =)

 

Abraços e valeu

 

OBS: Depois que terminar o sistema de enviar email com HTML mais facilmente, eu coloco aqui

Compartilhar este post


Link para o post
Compartilhar em outros sites

DackAle...

Voce tem a página HTML pronta ou você vai utilizar a página que está sendo preenchida pelo usuário ?

<{POST_SNAPBACK}>

tenho ela prontissima... rss

 

eu que fiz... o que vo fazer é ao inves de criar o corpo do email do jeito tradicional tipo

 

"<html>" &_

"<head>" &_

 

e aquela coisa CHATA, eu vo criar uma pagina HTML formatada... depois com o FSO vo ler o código fonte dela e jogar no campo body... e faço uns replace e pronto... eu vi isso em uma empresa... e achei interessante e resolvi desenvolver parecido... mas FSO é um saco :wacko:

 

Abraçossssssssss =)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma ideia de NOB :D pq você cria o html da página e salva como um arquivo TXT.pois ler arquivos txt's com FSO é moleza d+.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma ideia de NOB :D

 

pq você cria o html da página e salva como um arquivo TXT.

 

pois ler arquivos txt's com FSO é moleza d+.

<{POST_SNAPBACK}>

não tinha pensado nisso http://forum.imasters.com.br/public/style_emoticons/default/ermm.gif

 

bom fiz assim

 

Set FSO = Server.CreateObject("Scripting.FileSystemObject") Set TXT = FSO.OpenTextFile(Server.Mappath("email.txt"))texto = txt.readALLTXT.close Set TXT = Nothing Set FSO = Nothingset email = server.CreateObject("CDONTS.NewMail")email.From = variasp_nome & "<" & variasp_email & ">"email.to =  desenvolvimento & "<" & email_padrao & ">"email.BodyFormat = 0email.MailFormat = 0email.Subject = "Artesanato Gastronômico - Sugestão/Reclamação"email.Body = textoemail.SendSET email = Nothing
Mandei ele ler as linhas e salvar na variavel texto e joguei ela no body do email... até ai beleza..

 

fiz o txt

 

<html>

<head>

<title>Artesanato Gastronômico</title>

</head>

<body marginheight='0' marginwidth='0' rightmargin='0' leftmargin='0' bgcolor='#FFFAEE'>

<table width='98%'  border='0' align='center' cellpadding='0' cellspacing='0'>

  <tr>

    <td> </td>

  </tr>

  <tr>

    <td><font size='1' color='62533C' face='Tahoma'>Você recebeu uma nova mensagem:<br>

      <br>

      <b>Nome:</b>  <%=variasp_nome%> <br>

      <b>Email:</b>  <%=variasp_email%> <br>

      <b>Telefone:</b>  <%=variasp_ddd## - <%=variasp_tel%> <br>

  <b>Bairro:</b>  <%=variasp_bairro %><br>

  <b>Cidade:</b>  <%=variasp_cidade%> <br>

  <b>Estado:</b>  <%=variasp_estado%> <br>

  <b>Assunto:</b>  <%=variasp_assunto%> <br>

  <b>Mensagem:</b>  <%=troca(variasp_mensagem)%> </font></td>

  </tr>

  <tr>

    <td> </td>

  </tr>

  <tr>

    <td height='20'><font size='1' color='62533C' face='Tahoma'><b>Equipe Artesanato Gastronômico</b></font></td>

  </tr>

</table>

</body>

</html>

Tipo ja joguei direto o response.write no txt, como vcs podem ver, o email chego PERFEITO no sentido da formtação do HTML, mas as variaveis ASP vieram vazias, nada escrito no lugar delas...

 

tava pensando em fazer replace, mas da erro se eu tentar dar um replace do tipo

 

ASP

[*]replace(valor,"#1#","<%=")

 

[*]replace(valor,"#2#","%>")

 

ele da erro... bizarrinho ahahuuha mas to quase chegando la =)

 

Se alguem puder dar alguma dica ae... tudo bem que são 7 horas da manha e só eu aqui tentando fazer isso masss deem um desconto, so cabeça dura =P

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Kara, fiz um teste aki com replace e me retornou certo, veja só:

 

<%nome = "Jônatas Soares Lopes"Set FSO = Server.CreateObject("Scripting.FileSystemObject") Set TXT = FSO.OpenTextFile("d:/Telefones.txt")texto = replace(txt.readALL, "#Nome#", nome)TXT.close Set TXT = Nothing Set FSO = Nothingresponse.Write(texto)%>

repare que a variável "nome" no começo do código recebe um nome,

depois abro o txt e coloco o conteúdo na varável "texto" e já com o replace, retirando os itens que quero substituir, no meu caso acima so citeu uma variável.

 

Espero que de certo, pois aki funfou legal. http://forum.imasters.com.br/public/style_emoticons/default/clap.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não precisa ser extenão .TXT pois html é texto puro, então pode ser .HTM mesmo.

 

Outra coisa, não precisa colocar "<%=%>" nesse arquivo, é só você colocar algo #%Assim%# e usar o replace.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Salgado no exemplo que coitei acima, funcionou, porem se eu quiser colocar um arquivo em HTML, naum é so trocar o arquivo como .htmlnaumf as diferença naum?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Kara, fiz um teste aki com replace e me retornou certo, veja só:

 

<%nome = "Jônatas Soares Lopes"Set FSO = Server.CreateObject("Scripting.FileSystemObject") Set TXT = FSO.OpenTextFile("d:/Telefones.txt")texto = replace(txt.readALL, "#Nome#", nome)TXT.close Set TXT = Nothing Set FSO = Nothingresponse.Write(texto)%>
repare que a variável "nome" no começo do código recebe um nome,

depois abro o txt e coloco o conteúdo na varável "texto" e já com o replace, retirando os itens que quero substituir, no meu caso acima so citeu uma variável.

 

Espero que de certo, pois aki funfou legal.  http://forum.imasters.com.br/public/style_emoticons/default/clap.gif

<{POST_SNAPBACK}>

eu ja fazendo um replace direto pra variavel funciona perfeitamente, mas o que eu queria, era tipo transformar todos os campso ja em variavel 9acho que fico complicado né ? hahua)

 

seguinte imagino que tenho que pegar 5 campos

 

variasp_nome

variasp_email

variasp_mensagem

variasp_idade

variasp_cidade

 

dai tenho la os 5 campos no txzt ou html

##variasp_nome##

##variasp_email##

##variasp_mensagem##

##variasp_idade##

##variasp_cidade##

 

Eu queria converter esses 5 acima, direto no conteudo das variaveis, sem ter que fazer 5 replaces entendeu ? Pra tentar deixar o mais pratico possivel... por isso tentei o replace

 

replace(valor,"#1#","<%=")

replace(valor,"#2#","%>")

 

mas isso não funfa...

 

queria simplificar ao maximo essa função pra ficar bem menos chato formatar os e-mails ahhahahaha

 

vamos ver se conseguimos fazer algo mais pratico ainda, mas ta valendo a ajuda pessoALL =)

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não precisa ser extenão .TXT pois html é texto puro, então pode ser .HTM mesmo.

 

Outra coisa, não precisa colocar "<%=%>" nesse arquivo, é só você colocar algo #%Assim%# e usar o replace.

<{POST_SNAPBACK}>

salgado mas se eu pegar só o CONTEUDO do html eu perco a formatação entende ? cores, tabelas, fundo da pagina... agora pegando o HTML (ou código fonte), ele vai transormfar tudo certinho e a pagina é mandada perfeitamente e bem mais pratico... ja ta funcionando isso, agora só preciso arranjar uma forma mais pratica de transformar todas as variaveis em seus respectivos conteudos...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que vocês não entenderam, vejam Meu teste. Só troquei a extensão para .htm.

Compartilhar este post


Link para o post
Compartilhar em outros sites

aaaa simm entendi, ta certo, ele considera o .asp como arquivo texto e le o código fonte, verdade da na mesma...rsssagora entendi...sobre transofrmar as variaveis, vo tentar algo com for each e ja posto aqui se der certo...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Template.htm

<html>
<head>
<title>Artesanato Gastronômico</title>
</head>
<body marginheight='0' marginwidth='0' rightmargin='0' leftmargin='0' bgcolor='#FFFAEE'>
<table width='98%'  border='0' align='center' cellpadding='0' cellspacing='0'>
 <tr>
   <td> </td>
 </tr>
 <tr>
   <td><font size='1' color='62533C' face='Tahoma'>Você recebeu uma nova mensagem:<br>
     <br>
     <b>Nome:</b> ##nome## <br>
     <b>Email:</b>  ##email## <br>
     <b>Telefone:</b>  ##ddd## - ##tel## <br>
 <b>Bairro:</b>  ##bairro## <br>
 <b>Cidade:</b>  ##cidade## <br>
 <b>Estado:</b>  ##estado## <br>
 <b>Assunto:</b>  ##assunto## <br>
 <b>Mensagem:</b>  ##mensagem## </font></td>
 </tr>
 <tr>
   <td> </td>
 </tr>
 <tr>
   <td height='20'><font size='1' color='62533C' face='Tahoma'><b>Equipe Artesanato Gastronômico</b></font></td>
 </tr>
</table>
</body>
</html>

LerTemplate.asp

ASP
  1. <%
     
  2. nome "Jônatas Soares Lopes"
     
  3. Set FSO Server.CreateObject("Scripting.FileSystemObject")
     
  4. Set TXT FSO.OpenTextFile(Server.MapPath("Template.htm")
     
  5. texto txt.readALL
     
  6. TXT.close
     
  7. Set TXT = Nothing
     
  8. Set FSO = Nothing
     

  9.  
  10. 'Aqui é só um exemplo, mas você pode trocar todos nesse ponto, usando a Var SAIDA
     
  11. Saida replace(Texto, "##nome##", nome)
     
  12. ' Fiz usando a var saida pois como será envio de e-mails a var texto permace inalterada e não é nescessário ficar abrindo o arqui todo o tempo.
     

  13.  
  14. response.Write(Saida)
     
  15. %>

Roda isso ai e vê funcionando.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Funcionou http://forum.imasters.com.br/public/style_emoticons/default/assobiando.gif

 

Vou tentar explicar

 

ASP

[*]

 

[*]variasp_nome trim(request("variasp_nome"))

 

[*]variasp_email trim(request("variasp_email"))

 

[*]variasp_mensagem trim(request("variasp_mensagem"))

 

[*]

 

[*]'Aqui normal, eu pego o valor dos campos e tiro os espaços

 

[*]

 

[*]Set FSO Server.CreateObject("Scripting.FileSystemObject"

 

[*]Set TXT FSO.OpenTextFile(Server.Mappath("email.asp"))

 

[*]texto txt.readALL

 

[*]TXT.close 

 

[*]Set TXT = Nothing 

 

[*]Set FSO = Nothing

 

[*]

 

[*]'Abro o arquivo .asp e leio o conteudo e salvo na variavel TEXTO

 

[*]

 

[*]FOR EACH valores IN request.Form

 

[*]If InStr(1,texto,"##"&valores&"##"Then

 

[*]texto replace(texto,"##"&valores&"##",request(valores))

 

[*]End if

 

[*]NEXT

 

[*]

 

[*]'Faço um looping pegando o nome de TODOS os campos, porque eu geralmente ponho o nome dos campos igual das variaveis, então ele faz um looping e pega nome de campo por campo, ele verifica se na variavel TEXTO existe algum valor igual ao nome do campo (lembra que eu disse que alvo as variveis com o mesmo nome do campo ?). Então se existir ele troca o valor ficticio que está na variavel TEXTO pelo valor real do campo que foi preenchido.

 

[*]

 

[*]set email server.CreateObject("CDONTS.NewMail")

 

[*]email.From = variasp_nome & "<" & variasp_email & ">"

 

[*]email.to = cliente & "<" & email_padrao_cliente & ">"

 

[*]email.BodyFormat = 0

 

[*]email.MailFormat = 0

 

[*]email.Subject "Comporta Village - Nova Mensagem"

 

[*]email.Body = texto

 

[*]email.Send

 

[*]SET email = Nothing

 

[*]

 

[*]'Faço os preenchimentos normais do CDONTS e no BODY coloco a variavel TEXTO

 

[*]

 

conteudo do email.asp

 

ASP

[*]<html>

 

[*]<head>

 

[*]<title>Untitled Document</title>

 

[*]<link href="css/webfront.css" rel="stylesheet" type="text/css">

 

[*]</head>

 

[*]

 

[*]<body bgcolor="#CCE2F0">

 

[*]<table width="96%" border="0" align="center" cellpadding="0" cellspacing="0">

 

[*] <tr>

 

[*] <td height="20"> </td>

 

[*] </tr>

 

[*] <tr>

 

[*] <td height="20"><font face='tahoma' size='1' color='#333333'>Você recebeu uma nova mensagem:</font></td>

 

[*] </tr>

 

[*] <tr>

 

[*] <td height="20"> </td>

 

[*] </tr>

 

[*] <tr>

 

[*] <td height="20"><font face='tahoma' size='1' color='#333333'><strong>:: Nome:</strong>##variasp_nome##<br> <br>

 

[*] <strong>:: Email:</strong> ##variasp_email## <br> <br>

 

[*] <strong>:: Mensagem:</strong> ##variasp_mensagem##</font></td>

 

[*] </tr>

 

[*] <tr>

 

[*] <td height="20"> </td>

 

[*] </tr>

 

[*] <tr>

 

[*] <td height="20"><font face='tahoma' size='1' color='#224268'><strong>Equipe Comporta Village </strong></font></td>

 

[*] </tr>

 

[*]</table>

 

[*]</body>

 

[*]</html>

 

[*]

 

Isso simpificou muito a minha vida, eu odiava ficar concatenando e etc, agora gero a pagina e pronto, bem pratico =)

 

depois vou tentar melhorar isso =)

 

Abraços e valeu por todos

Compartilhar este post


Link para o post
Compartilhar em outros sites

opa s[o subindo...testei uma coisa, colocar ASP na pagina .asp que [e lida... mas ele nao executa e nao gera erro... exemplocoloquei um <%=date(now)%> no meio do codigo fonte, ele leu a pagina e gerou a mesma... so que ele nao retornou a data...ele nao deveria executar o asp na hora que ele vai gerar o codigo na body do cdonts ?abracosss

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não, na verdade ele colocou no fonte da página o <%=Date(Now())%>, faça sempre como template, ou tente usar a função Eval(), talvez retorne a data.

Compartilhar este post


Link para o post
Compartilhar em outros sites

opa agora que eu vi...chega assim "São Paulo, <%=date(now)%>"argh... vai ter que ser na base do replace o conteudo dinamico ? rslebrando que é conteudo dinamico, não necessariamente uma data, as vezes posso querer mostrar as 5 ultimas noticas cadastradas no BD e talz...abraços

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.