..:: MX Studio Fóruns ::..: CFMAIL - Enviando e-mail - ..:: MX Studio Fóruns ::..

Jump to content

Publicidade




ATENÇÃO

Para evitar posts desnecessários e que não influam para o andamento e desenvolvimento do fórum, clique aqui e leia todas as regras.
Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

CFMAIL - Enviando e-mail Reconhecer varios campos automaticamente

#1 User is offline   Thony Conde 

  • Group: Moderadores
  • Posts: 851
  • Joined: 19-May 05

Posted 24 February 2006 - 10:05 AM

Olá galera.

Criei um cfmail enviando os campos preenchidos do formulario para meu e-mail, até ai blz. Mas eu queria fazer o seguinte:

Independente do meu form ter 1 ou 100 campos, o mesmo codigo do cfmail reconhece e envia!

Tentando ser mais claro...

Meu FORM:

QUOTE
<form method="POST" action="envia_email.cfm">
  Seu Nome
    <input name="nome" type="text" id="nome">
  <br>
  Seu e-Mail:
  <input name="email" type="text" id="email">
  <br>
  Assunto:
  <input type="text" name="assunto"><br>
  Mensagem:
  <input type="textArea" name="mensagem"><br>
  <input type="submit" value="enviar">
</form>


Meu CFMAIL:

ColdFusion
<CFMAIL TO="prodigio@gmail.com" FROM="prodigio@gmail.com" SUBJECT="#FORM.assunto#" TYPE="HTML" >
<h3>Mensagem Segue Abaixo</h3>
<p></p>
Usuário: <b>#FORM.nome#</b>
<br />
e-Mail: <b>#FORM.email#</b>
<br />
Assunto: <b>#FORM.assunto#</b>
<br />
Mensagem: <b>#FORM.mensagem#</b>
</CFMAIL>



Blz!

Mas derrepente, eu quero adicionar mais um campo no meu form... Ai vou ter que ir no meu cfmail e declarar lá também

:/

Quero usar o mesmo cfmail para todas as funções de form para envio de email. Independente do form ter 3 campos, ou 10 campos.

É algo parecido, com sistemas que alguns sites antigamente disponibizavam para os usuarios feito em PHP e tal... Lembra?

Bem. Espero ter sido claro, espero ter ajuda!

Valeu moçada.
0

#2 User is offline   ..:: ELVIS ::.. 

  • Group: Membros
  • Posts: 116
  • Joined: 16-February 05

Posted 01 March 2006 - 11:12 PM

Bom...

Não faço idéia de como seria esse esquema, mas partindo do seguinte princípio:

Se tu vai editar um arquivo, para criar mais um campo no form, que diferença faria tu editar ou não uma aplicação no colfusion que envia o e-mail? Não vejo diferença...o "trabalho" em si será o mesmo, não?

0

#3 User is offline   Thony Conde 

  • Group: Moderadores
  • Posts: 851
  • Joined: 19-May 05

Posted 01 March 2006 - 11:46 PM

Certo.

Veja minha ideia.

Tenho minha pagina: "contato.cfm"

Na pagina contato, terei 10 campos de formulario! o action dela leva pra um arquivo que tem os 10 campos declarados e enviando os dez para e-mail.


Tenho minha pagina: "pedido_de_compra.cfm"

ela tem 20 campos, onde os 20 são campos diferentes dos 10 campos da pagina contato! Resumindo, nao posso mandar o action dela pra mesma pagina que enviei o contato.cfm. Terei que criar outra pagina para enviar estes 20 campos, declarando os 20 e enviando os 20.


Meu desejo, é criarum arquivo pra envio de e-mails onde ele reconheça automaticamente se tem 1 ou 30 campos, independente se o nome do campo seja: "form.nome" ou "form.data". Ele envia de acordo com as informações que recebe, saca?

espero que tenha sido claro
0

#4 User is offline   ..:: ELVIS ::.. 

  • Group: Membros
  • Posts: 116
  • Joined: 16-February 05

Posted 02 March 2006 - 10:39 AM

putz...deu erro aqui....
vale o post abaixo.
0

#5 User is offline   ..:: ELVIS ::.. 

  • Group: Membros
  • Posts: 116
  • Joined: 16-February 05

Posted 02 March 2006 - 10:40 AM

Entendi tudo.

É uma boa idéia...

Eu faria o seguinte:

Do "contato.cfm" criaria um cfif, pra fer qual dos formulários foi submetido no momento, sendo o do pedido faz uma coisa, caso seja o outro...outra coisa. biggrin.gif
De qualquer forma, não vejo motivo para ser feita de uma forma ainda mais dinâmica.
Essa idéia do cfif, não seria uma boa? Tu poderia tentar dar um nome para cada formulário, ou então criar um campo oculto, que contém um nome específico...que tal? thumbsup.gif

A tua idéia de reconhecer quantos campos tem o form e eviar é uma boa, mas não sei como fazer, e também acho que não seria necessário....mas é o que eu acho, né. smile.gif
0

#6 User is offline   Thony Conde 

  • Group: Moderadores
  • Posts: 851
  • Joined: 19-May 05

Posted 02 March 2006 - 12:46 PM

pois é, eu fiz assim mesmo, olha o codigo:

ColdFusion
<cfparam name="form.assunto" default="Cadastro Website">
<CFMAIL TO="prodigio@gmail.com" FROM="prodigio@gmail.com" SUBJECT="#FORM.assunto#" TYPE="HTML" >
<h3>Mensagem Segue Abaixo recebida pelo website!</h3>
<p></p>
<cfif IsDefined("FORM.nome") AND #FORM.nome# NEQ "">
Cliente: <b>#FORM.nome#</b>
</cfif>
<br />
<cfif IsDefined("FORM.email") AND #FORM.email# NEQ "">
e-Mail: <b>#FORM.email#</b>
</cfif>
<br />
<cfif IsDefined("FORM.cidade") AND #FORM.cidade# NEQ "">
Cidade: <b>#FORM.cidade#</b>
</cfif>
<br />
<cfif IsDefined("FORM.fone") AND #FORM.fone# NEQ "">
Telefone: <b>#FORM.fone#</b>
</cfif>
<br />
<cfif IsDefined("FORM.assunto") AND #FORM.assunto# NEQ "">
Assunto: <b>#FORM.assunto#</b>
</cfif>
<br />
<cfif IsDefined("FORM.menssagem") AND #FORM.menssagem# NEQ "">
Mensagem: <b>#FORM.menssagem#</b>
</cfif>
<br />
<cfif IsDefined("FORM.produto") AND #FORM.produto# NEQ "">
Produto: <b>#FORM.produto#</b>
</cfif>
<br />
<cfif IsDefined("FORM.dataEntrega") AND #FORM.dataEntrega# NEQ "">
Produto: <b>#FORM.dataEntrega#</b>
</cfif>
<br />
<cfif IsDEfined("FORM.endereco") AND #FORM.endereco# NEQ "">
Endereço: <b>#FORM.endereco#</b>
</cfif>
<br />
<cfif IsDefined("FORM.cfp") AND #FORM.cfp# NEQ "">
CPF: <b>#FORM.cfp#</b>
</cfif>
</CFMAIL>
<cflocation url="enviado.cfm?nome=#form.nome#">


Mas oq me deixa grilado é esta questão, sempre que tiver um campo diferente em algum formulario da pagina, vou ter que declarar ele ai no cfmail. Queria isso automatico.

Mas blz.
0

#7 User is offline   pcsilva 

  • Group: Moderadores
  • Posts: 1940
  • Joined: 23-January 05

Posted 03 March 2006 - 12:54 AM

ColdFusion
<form action='trata_primeiro.cfm'>



Presumindo que você tenha organizo isso tudo que planejou em um tabela qualquer do banco

trata_primeiro.cfm
ColdFusion
<cfquery name="getLabel" ..... >
select label, formName from tabela
</cfquery>
<cfparam name="form.assunto" default="Cadastro Website">
<CFMAIL TO="prodigio@gmail.com" FROM="prodigio@gmail.com" SUBJECT="#FORM.assunto#" TYPE="HTML" >
<cfoutput query="getLabel">
<cfset formItem = "FORM[#getLabel. formName#]" >
<cfif IsDefined(formItem)>
#getLabel.label#: <b>#FORM[getLabel. formName]#</b>
</cfif>
</cfoutput>
</CFMAIL>
<cflocation url="enviado.cfm?nome=#form.nome#">



Não testei, vê se roda legal ai.



0

#8 User is offline   Thony Conde 

  • Group: Moderadores
  • Posts: 851
  • Joined: 19-May 05

Posted 03 March 2006 - 02:22 AM

nao seria possivel sem usar o banco?

mas do mesmo jeito, ainda vejo mais vantagem fazer como vc mostrou.
0

#9 User is offline   pcsilva 

  • Group: Moderadores
  • Posts: 1940
  • Joined: 23-January 05

Posted 04 March 2006 - 03:09 PM

ColdFusion

<cfset session.formNames = StructNew() />
<cfset session.formNames.txt_Nome = "Nome" />
<cfset session.formNames.txt_CEP = "CEP" />
<form action='trata_primeiro.cfm'>
<cfloop collection="#session.formNames#" item="name">
<input type="text" name="<cfoutput>#name#</cfoutput>" />
</cfloop>
</form>


trata_primeiro.cfm
ColdFusion

<cfparam name="form.assunto" default="Cadastro Website">
<CFMAIL TO="prodigio@gmail.com" FROM="prodigio@gmail.com" SUBJECT="#FORM.assunto#" TYPE="HTML" >
<cfloop collection="#session.formNames#" item="name">
<cfset formItem = "FORM[#name#]" >
<cfif IsDefined(formItem)>
<cfoutput> #session.formNames[name]#: <b>#FORM[session.formNames]#</b></cfoutput>
</cfif>
<cfloop>
</CFMAIL>
<cflocation url="enviado.cfm?nome=#form.nome#">


0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic



Publicidade




2 User(s) are reading this topic
0 membro(s), 2 visitante(s) e 0 membros anônimo(s)