Jump to content


Photo

Enviar E-Mail Com Anexo (Atualizado!)


  • Faça o login para participar
96 replies to this topic

#31 Paulo André

Paulo André

    Why so serious?

  • Ex-Admins
  • 5114 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte - MG
  • Interesses:O.Q.F.J.?

Posted 23/08/2006, 09:08

Opa, olá Hugo.

Na verdade, você só precisa do arquivo de cima (form.php).
Perceba que existe uma condição que diz se existe algo na variável global POST que diz se vai ou não ser enviado.

Ou seja, enquanto você não clicar no botão de enviar, a condição estará somente no formulário.

Flws...
;-)Até mais
Paulo André G Rodrigues,
ex-administrador Fórum WMO.


www.CanalDev.com.br

#32 Hugo Lima

Hugo Lima

    Novato no fórum

  • Usuários
  • 2 posts
  • Sexo:Não informado

Posted 23/08/2006, 10:05

Opa, olá Hugo.

Na verdade, você só precisa do arquivo de cima (form.php).
Perceba que existe uma condição que diz se existe algo na variável global POST que diz se vai ou não ser enviado.

Ou seja, enquanto você não clicar no botão de enviar, a condição estará somente no formulário.

Flws...
;-)


Isso significa então que basta eu ter aquele ficheiro com aquele código? o form.php? é que eu introduzi o código no dreamweaver mas o ecrão fica a branco, não aparece no layout os campos de formulario nem nada...

#33 Paulo André

Paulo André

    Why so serious?

  • Ex-Admins
  • 5114 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte - MG
  • Interesses:O.Q.F.J.?

Posted 23/08/2006, 11:33

É porque está dentro de um código PHP, usando o print().
Para alterar você pode fazer assim:
if ($action != "upload")
{
?>
<FORM METHOD="post"...
E no final:
</TABLE>
</FORM>

<?
}

if ($action == "upload")...

Coloquei só um trecho pra você se orientar.

Flws...
:DAté mais
Paulo André G Rodrigues,
ex-administrador Fórum WMO.


www.CanalDev.com.br

#34 Makerup

Makerup

    diga XXXXXXX ... isso é palavrão??

  • Usuários
  • 1271 posts
  • Sexo:Masculino
  • Localidade:Sampa

Posted 29/08/2006, 14:44

mto bom...


será q concigo colocar uns 8 campos de anexo???

rs* e usar no formulario q ja esta no meu site???


vou tentar aqui e posto as uvidas na seqüencia... uhauhauha... :D
makerup comunicação e marketing

#35 Marcell Marra

Marcell Marra

    Expert

  • Usuários
  • 569 posts
  • Sexo:Não informado
  • Localidade:São José dos Campos - SP

Posted 16/09/2006, 10:02

Obrigado pelo código.

Tenho uma dúvida!

Se eu adicionar mais campos e colocar lá no mail();, não dá certo, afinal ele só aceita cinco variáveis!

Existe algum modo de eu mandar todas as variáveis dos campos?

São essas:

$message .= $nome
$message .= $email
$message .= $idade
$message .= $escolaridade;
$message .= $rua;
$message .= $bairro
$message .= $complemento
$message .= $pergunta
$message .= $outras

m

procuro criatividade

#36 Paulo André

Paulo André

    Why so serious?

  • Ex-Admins
  • 5114 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte - MG
  • Interesses:O.Q.F.J.?

Posted 18/09/2006, 09:03

Não entendi sua pergunta. :ponder:
Qualquer outro campo que você queria adicionar à mensagem você deve colocar na variável $message assim como você fez acima.

Flws...
:huh:Até mais
Paulo André G Rodrigues,
ex-administrador Fórum WMO.


www.CanalDev.com.br

#37 Dede

Dede

    Novato no fórum

  • Usuários
  • 9 posts
  • Sexo:Não informado
  • Localidade:Vila Velha - ES
  • Interesses:Forró, Surf, Design, Publicidade e todas as coisas boas da vida.

Posted 13/11/2006, 14:30

Olá Frenesi, parabéns pelo tuto. muito massa irmão

mas se liga, tem um lance q ñ consegui entender.

tipo, no seu exemplo eu ponho o campo "para" referente ao destinatário. e se eu quisesse por esse form na área de contatos do meu site, só q já direcionado pra vir pra mim.
como eu faria?!

agradeço ae e fiquem na paz
Nome: Douglas
Nick: Dede
Amo surf, forró e congo.
______________________________________

#38 Paulo André

Paulo André

    Why so serious?

  • Ex-Admins
  • 5114 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte - MG
  • Interesses:O.Q.F.J.?

Posted 13/11/2006, 15:06

Olá Dede, você tem duas opções:

1. Você pode ocultar este campo colocando-o com type="hidden";
2. Ou apagar o campo e definir já o valor da variável $to em algum lugar no código PHP.

Se ainda restar dúvidas pode colocá-las. (y)

Flws...
(ok2)Até mais
Paulo André G Rodrigues,
ex-administrador Fórum WMO.


www.CanalDev.com.br

#39 MrKarate

MrKarate

    Novato no fórum

  • Usuários
  • 17 posts
  • Sexo:Não informado
  • Localidade:Além da Imaginação
  • Interesses:Meus interesses, não lhe interessam ;)

Posted 30/11/2006, 20:16

Olá frenesi, gostaria de agradece-lo pelo excelente script que desenvolveu, fiz as alterações no script para adequa-lo no meu site.

Coloquei alguns campos a mais, como nome da pessoa, endereço de e-mail entre outros. O script funciona normalmente, envia os dados perfeitamente, porém, unico problema que tenho é na exibição dos dados.

Pois quando abro a mensagem pelo meu programa de e-mail aparece assim:

nomedapessoaendereco@email.comMensagem

Existe uma forma de que a mensagem possa ser exibida assim no meu leitor de e-mails?
Nome da Pessoa
emaildapessoa@email.com
Seu comentario
MrKarate
Palhaçaditas. Eu pratico. Pratique você também!

Se você está ae sem fazer nada, visite:
Meu Site | Fórum DreamPower | Eu sei escrever! - Participe desta campanha

#40 Paulo André

Paulo André

    Why so serious?

  • Ex-Admins
  • 5114 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte - MG
  • Interesses:O.Q.F.J.?

Posted 01/12/2006, 09:52

Olá MrKarate, poste um trecho do seu código para eu poder analisar. (ok2)

Mas provavelmente você simplesmente terá que colocar um \n entre as variáveis que você está concatenando.

Flws...
^_^Até mais
Paulo André G Rodrigues,
ex-administrador Fórum WMO.


www.CanalDev.com.br

#41 MrKarate

MrKarate

    Novato no fórum

  • Usuários
  • 17 posts
  • Sexo:Não informado
  • Localidade:Além da Imaginação
  • Interesses:Meus interesses, não lhe interessam ;)

Posted 01/12/2006, 15:55

Value, Frenesi!

Consegui.
MrKarate
Palhaçaditas. Eu pratico. Pratique você também!

Se você está ae sem fazer nada, visite:
Meu Site | Fórum DreamPower | Eu sei escrever! - Participe desta campanha

#42 Saryu

Saryu

    Aprendiz Mestre

  • Usuários
  • 132 posts
  • Sexo:Masculino
  • Localidade:Santos-SP

Posted 05/12/2006, 11:42

<?
if ($action != "upload")
{


print '
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="formulario.css" rel="stylesheet" type="text/css">
</head>

<body bgcolor="#000000">
<FORM METHOD="post"  ENCTYPE="multipart/form-data">
<INPUT TYPE="hidden" NAME="MAX_FILE_SIZE" VALUE="1000000">
<INPUT TYPE="hidden" NAME="action" VALUE="upload">
<table width="510" height="354" border="0" align="center" cellpadding="0" cellspacing="0" background="img_templates_br/bg_frame.gif">
	<!--DWLayoutTable-->
	<tr>
	  <td width="50" height="7"></td>
	  <td width="460"></td>
	</tr>
	<tr>
	  <td height="136"></td>
	  <td valign="top"><table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">
		  <!--DWLayoutTable-->
		  <tr>
			<td width="102" height="18" class="geral"><div align="center">Nome:</div></td>
			<td colspan="4"><input name="nome" type="text" class="campos" id="nome" size="48"></td>
			<td width="22"></td>
		  </tr>
		  <tr>
			<td height="18" class="geral"><div align="center">E-mail:</div></td>
			<td colspan="4"><input name="from" type="text" class="campos" id="from" size="48"></td>
			<td></td>
		  </tr>
		  <tr>
			<td height="18" class="geral"><div align="center">Assunto:</div></td>
			<td colspan="4"><input name="subject" type="text" class="campos" id="subject" size="48"></td>
			<td></td>
		  </tr>
		  <tr>
			<td height="21" class="geral"><div align="center">Anexar foto:</div></td>
			<td colspan="4"><input name="anexo" type="file" class="campos" size="35"></td>
			<td></td>
		  </tr>
		  <tr>
			<td height="109" class="geral"><div align="center">Mensagem:</div></td>
			<td colspan="4"><textarea name="msg" cols="47" rows="7" class="campos" id="msg"></textarea></td>
			<td></td>
		  </tr>
		  <tr>
			<td height="5"></td>
			<td width="92"></td>
			<td width="13"></td>
			<td width="68"></td>
			<td width="140"></td>
			<td></td>
		  </tr>
		  <tr>
			<td height="21"></td>
			<td></td>
			<td colspan="3" valign="top"><input name="Submit" type="submit" class="campos" value="Enviar">
			  <input name="Submit2" type="reset" class="campos" value="Apagar"></td>
			<td></td>
		  </tr>
		  <tr>
			<td height="3"></td>
			<td></td>
			<td></td>
			<td></td>
			<td></td>
			<td></td>
		  </tr>
		  <tr>
			<td height="13" valign="top" class="geral"><div align="center">Endere&ccedil;o:</div></td>
			<td colspan="4" valign="top" class="geral">Rua Marechal Deodoro n&ordm;
			  68 cj. 21&nbsp;&nbsp;Santos-SP </td>
			<td></td>
		  </tr>
		  <tr>
			<td height="5"></td>
			<td></td>
			<td></td>
			<td></td>
			<td></td>
			<td></td>
		  </tr>
		  <tr>
			<td height="13" valign="top" class="geral"><div align="center">Cep:</div></td>
			<td colspan="2" valign="top" class="geral">11060-400</td>
			<td valign="top" class="geral"><div align="center">Tel:</div></td>
			<td valign="top" class="geral">(0xx13) 3289-6808</td>
			<td></td>
		  </tr>
		  <tr>
			<td height="27" colspan="5" valign="top"><!--DWLayoutEmptyCell-->&nbsp;</td>
			<td></td>
		  </tr>
		</table></td>
	</tr>
  </table>
</FORM>
</body>

';
}

if ($action == "upload")

{
$mime_list = array("html"=>"text/html","htm"=>"text/html", "txt"=>"text/plain", "rtf"=>"text/enriched","csv"=>"text/tab-separated-values","css"=>"text/css","gif"=>"image/gif","jpg"=>"image/jpg","jpeg"=>"image/jpeg","png"=>"image/png");

$ABORT = FALSE;

$boundary = "XYZ-" . date(dmyhms) . "-ZYX";

$message = "--$boundary\n";
$message .= "Content-Transfer-Encoding: 8bits\n";
$message .= "Content-Type: text/plain; charset=\"ISO-8859-1\"\n\n";
$message .= $nome;
$message .= "\n";
$message .= $msg;
$message .= "\n";

$attachments[1] = $anexo;

foreach ($attachments as $key => $full_path) {
if ($full_path !='') {
	   if (file_exists($full_path)){
			 if ($fp = fopen($full_path,"rb")) {
					 $filename = array_pop(explode(chr(92),$full_path));
					 $contents = fread($fp,filesize($full_path));
					 $encoded = base64_encode($contents);
					 $encoded_split = chunk_split($encoded);
					 fclose($fp);
					 $message .= "--$boundary\n";
					 $message .= "Content-Type: $anexo_type\n";
					 $message .= "Content-Disposition: attachment; filename=\"$anexo_name\" \n";
					 $message .= "Content-Transfer-Encoding: base64\n\n";
					 $message .= "$encoded_split\n";
			 }
			 else {
			 echo "Impossível abrir o arquivo$key: $filename";
			 $ABORT = TRUE;
			 }
	   }
	   else {
	   echo "O arquivo$key não existe: $filename";
	   $ABORT = TRUE;
	   }

}
}

$message .= "--$boundary--\r\n";

$headers = "MIME-Version: 1.0\n";
$headers .= "From: <$from>\r\n";
$headers .= "Content-type: multipart/mixed; boundary=\"$boundary\"\r\n";


$mensagem=mail("ingongo@hotmail.com", $subject, $message, $headers);
if ($mensagem) {
	echo "<script>self.location = 'frame_resposta.htm'</script>";

} else {
	print "O envio da mensagem falhou!";
}

}
?>

O que tem de errado no codigo?Da " tudo certo" porem o e-mail não chega!

#43 Paulo André

Paulo André

    Why so serious?

  • Ex-Admins
  • 5114 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte - MG
  • Interesses:O.Q.F.J.?

Posted 05/12/2006, 12:09

Olá Saryu,

verifique sua caixa de Lixo Eletrônico, normalmente o envio de emails para o HotMail dá este problema.

Flws...
(ok2)Até mais
Paulo André G Rodrigues,
ex-administrador Fórum WMO.


www.CanalDev.com.br

#44 Brave

Brave
  • Visitantes

Posted 11/12/2006, 16:35

Ola Frenesi

estou tentando fazer um formulario de email com anexo , flash + php... gostaria de saber se é possivel adaptar esse seu script de php para o me objetivo.... pra fazer a parte do anexo no flash estou usando a classe FileReference... sera que é possivel fazer essa interação... ou eu estou viajando?
não encontro nenhum tutorial sobre formularios de email flash + php com anexo... sera que não existe esse tipo de formmail ainda? ou é muito complicado de fazer?

sei lah...por favor me da uma luz....pq ja estou perdendo as esperanças de conseguir... eu sei q posso apelar e colocar um popup de html no flash ....mas vai estragar todo o design do site

sera q vc pode me ajudar?

#45 Rômulo Costa

Rômulo Costa

    Novato no fórum

  • Usuários
  • 9 posts
  • Sexo:Não informado

Posted 18/01/2007, 22:26

Olá Galera....

Preciso da ajuda de vocês mais do que nunca...`
É o seguinte...
To precisando fazer um formulário desses, do jeito que está, mas preciso em ASP. Infelizmente PHP nao servirá para mim.
Será que alguem sabe onde eu posso encontrar algo do tipo, um tutorial, algo que possa me ajudar ?

Bom..obrigado a todos e espero que possam me ajudar
Aguardo vocês galera
Até mais...




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq