Ir para conteúdo

POWERED BY:

Arquivado

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

Rick RJ

Formulário envio - Onde foi que errei.

Recommended Posts

Galera,

 

não chega a mensagem, onde foi que errei?

 

 

HTML

 

<body bgcolor="#A11B23">

 

<body topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0" onLoad="carrega_menu('geral',1);">

 

 

<table border="0" cellpadding="0" cellspacing="0" bgcolor="#A11B23" width="568">

<!-- :: CABEÇALHO :: -->

<TR>

<TD align="center"><img src="images/Figura1.jpg" alt="logo" width="490" height="163"></TD>

</TR>

<!-- :: fim do CABEÇALHO :: -->

 

 

<!-- :: CONTEÚDOS :: -->

<TR>

<TD align="center">

<table border="0" cellpadding="10" cellspacing="10">

<TR>

<TD width="100%" valign="top" bordercolor="#666666" bgcolor="#cccccc" class="box-1">

<h2 class="Estilo1 Estilo10">Envie para os amigos</h2>

<span class="Estilo2">Apresentação: <strong>Minutos de Sabedoria</strong></span><br>

<br>

<br>

<span class="Estilo4"><img src="images/obrigator.gif" width="10" height="10"> Campos de preenchimento obrigatório.</span> <br>

 

 

 

<br>

 

<form action="sendmail.php" method="post" name="senddata" onSubmit="MM_validateForm('email','','RisEmail','comentarios','','R','amigo_1','','R','email_1','','RisEmail1','amigo_2','','R','email_2','','RisEmail2','amigo_3','','R','email_3','','RisEmail3');return document.MM_returnValue">

 

<input type="hidden" name="nid" value="26060">

<input type="hidden" name="ch" value="be962949afe9dc22df88ed5a2eeb4968">

<input type="hidden" name="cid" value="3">

<table border="0" cellpadding="5" cellspacing="0" width="100%">

<TR class="box-3">

<TD align="right" bordercolor="#999999" bgcolor="#CCCCCC"><span class="Estilo7">Nome:</span></TD>

<TD width="10" bordercolor="#999999" bgcolor="#CCCCCC"><img src="../../Meus documentos/CallData/obrigator.gif" width="10" height="10"></TD>

<TD bordercolor="#999999" bgcolor="#CCCCCC"><input type="text" name="nome" title="Nome" maxlength="50" class="formulario" style="width:200px;"></TD>

</TR>

<TR>

<TD align="right" bordercolor="#999999" bgcolor="#CCCCCC"><span class="Estilo5">E-mail:</span></TD>

<TD bordercolor="#999999" bgcolor="#CCCCCC"><img src="../../Meus documentos/CallData/obrigator.gif" width="10" height="10"></TD>

<TD bordercolor="#999999" bgcolor="#CCCCCC"><input type="text" name="email" title="E-mail" maxlength="100" class="formulario" style="width:200px;"></TD>

</TR>

<TR class="box-3">

<TD align="right" bordercolor="#999999" bgcolor="#CCCCCC"><span class="Estilo7">Comentário:</span></TD>

<TD bordercolor="#999999" bgcolor="#CCCCCC"></TD>

<TD bordercolor="#999999" bgcolor="#CCCCCC"><textarea name="comentario" cols="" rows="3" class="formulario" style="width:350px;"></textarea></TD>

</TR>

<TR>

<TD align="right" bordercolor="#999999" bgcolor="#CCCCCC"><span class="Estilo2"><span class="Estilo8">Amigo(a) 1</span>:</span></TD>

<TD bordercolor="#999999" bgcolor="#CCCCCC"><img src="../../Meus documentos/CallData/obrigator.gif" width="10" height="10"></TD>

<TD bordercolor="#999999" bgcolor="#CCCCCC">

<table border="0" cellpadding="0" cellspacing="0" width="100%">

<TR>

<TD><span class="Estilo7">Nome

</span><br>

<input type="text" name="amigo_1" title="amigo1" class="formulario" style="width:150px;"></TD>

<TD><span class="Estilo7">E-mail

</span><br>

<input type="text" name="email_1" title="email1" class="formulario" style="width:150px;"></TD>

</TR>

</table>

</TD>

</TR>

<TR class="box-3">

<TD align="right" bordercolor="#999999" bgcolor="#CCCCCC"><span class="Estilo2"><span class="Estilo8">Amigo(a) 2</span>:</span></TD>

<TD bordercolor="#999999" bgcolor="#CCCCCC"></TD>

<TD bordercolor="#999999" bgcolor="#CCCCCC">

<table border="0" cellpadding="0" cellspacing="0" width="100%">

<TR>

<TD><span class="Estilo7">Nome

</span><br>

<input type="text" name="amigo_2" class="formulario" style="width:150px;"></TD>

<TD><span class="Estilo7">E-mail

</span><br>

<input type="text" name="email_2" class="formulario" style="width:150px;"></TD>

</TR>

</table>

</TD>

</TR>

<TR>

<TD align="right" bordercolor="#999999" bgcolor="#CCCCCC"><span class="Estilo2"><span class="Estilo8">Amigo(a) 3</span>:</span></TD>

<TD bordercolor="#999999" bgcolor="#CCCCCC"></TD>

<TD bordercolor="#999999" bgcolor="#CCCCCC">

<table border="0" cellpadding="0" cellspacing="0" width="100%">

<TR>

<TD><span class="Estilo7">Nome

</span><br>

<input type="text" name="amigo_3" class="formulario" style="width:150px;"></TD>

<TD><span class="Estilo7">E-mail

</span><br>

<input type="text" name="email_3" class="formulario" style="width:150px;"></TD>

</TR>

</table>

</TD>

</TR>

<TR class="box-3">

<TD></TD>

<TD></TD>

<TD align="left"><input type="image" src="images/btn_enviar.gif" width="69" height="22"alt="" border="0"></TD>

</TR>

</table>

</form>

<br>

 

</TD>

</TR>

</table>

 

 

</TD>

</TR>

<p>

<!-- :: fim do CONTEÚDOS :: -->

 

 

</ta >

</tr>

</p>

<p> </p>

<p>  </p>

 

 

 

 

PHP

 

<?

$nome = $_POST['nome'];

$email = $_POST['email'];

$comentario = $_POST['comentario'];

$amigo1 = $_POST['amigo_1'];

$email1 = $_POST['email_1'];

$amigo2 = $_POST['amigo_2'];

$email2 = $_POST['email_2'];

$amigo3 = $_POST['amigo_3'];

$email3 = $_POST['email_3'];

$headers = "Content-type:text/html;charset=iso-8859-1\n";

$headers = "From: $email";

$destinatario1 = "$amigo_1";

$destinatario2 = "$amigo_2";

$destinatario3 = "$amigo_3";

$recipient1 = "$amigo_1";

$recipient2 = "$amigo_2";

$recipient3 = "$amigo_3";

$assunto = "Recebi, gostei e estou enviando para você";

$corpo = " Nome: $nome .\n Email: $email .\n comentarios: $comentario .\n";

mail($recipient, $assunto, $corpo, $headers);

AddAttachment('form.swf');

$msg = "Sua mensagem foi enviada com sucesso.";

echo "<script>location.href='envio.html'; alert('$msg');</script>";

?>

 

 

A mensagem não chega....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá amigo dê uma olhada no PHP, existem alguns erros ali vou apontar os que percebi:

 

<?
$nome = $_POST['nome'];
$email = $_POST['email'];
$comentario = $_POST['comentario'];
$amigo1 = $_POST['amigo_1'];
$email1 = $_POST['email_1'];
$amigo2 = $_POST['amigo_2'];
$email2 = $_POST['email_2'];
$amigo3 = $_POST['amigo_3'];
$email3 = $_POST['email_3'];
$headers = "Content-type:text/html;charset=iso-8859-1\n";
$headers = "From: $email";
$destinatario1 = "$amigo_1";
$destinatario2 = "$amigo_2";
$destinatario3 = "$amigo_3";
$recipient1 = "$amigo_1";
$recipient2 = "$amigo_2";
$recipient3 = "$amigo_3";
$assunto = "Recebi, gostei e estou enviando para você";
$corpo = " Nome: $nome .\n Email: $email .\n comentarios: $comentario .\n";
mail($recipient, $assunto, $corpo, $headers);
AddAttachment('form.swf');
$msg = "Sua mensagem foi enviada com sucesso.";
echo "<script>location.href='envio.html'; alert('$msg');</script>";
?>

-> mail($recipient, $assunto, $corpo, $headers);

 

Não existe a variável $recipient;

 

-> $headers = "Content-type:text/html;charset=iso-8859-1\n";

$headers = "From: $email";

 

Está sobreescrevendo a variável $headers (o correto é usar .= na segunda)

 

-> $destinatario1 = "$amigo_1";

$destinatario2 = "$amigo_2";

$destinatario3 = "$amigo_3";

$recipient1 = "$amigo_1";

$recipient2 = "$amigo_2";

$recipient3 = "$amigo_3";

 

Variáveis inexistentes $amigo_1 etc...

 

-> AddAttachment('form.swf');

 

Que função é essa AddAttachment?

 

Vou reescrever o seu código PHP, me diga se dá certo.

 

<?
$nome = $_POST['nome'];
$email = $_POST['email'];
$comentario = $_POST['comentario'];
$amigos = array(
array($_POST['amigo_1'], $_POST['email_1']),
array($_POST['amigo_2'], $_POST['email_2']),
array($_POST['amigo_3'], $_POST['email_3'])
);
$headers = "Content-type:text/html;charset=iso-8859-1\n";
$headers .= "From: $email";
$recipients = '';
foreach($amigos as $x)
{
$recipients .= $x[0] . '<' . $x[1] . '>';
}
$assunto = "Recebi, gostei e estou enviando para você";
$corpo = " Nome: {$nome}.\n Email: {$email}.\n comentarios: {$comentario}.\n";
mail($recipients, $assunto, $corpo, $headers);
//AddAttachment('form.swf'); //o que seria?
$msg = "Sua mensagem foi enviada com sucesso.";
echo "<script>location.href='envio.html'; alert('$msg');</script>";
?>

Espero ter ajudado! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

José Enézio,

 

ajudou sim, fiz as mudanças mas a mensagem não chega.

 

AddAttachment('form.swf'); e para enviar com o arquivo 'form.swf' anexado.

 

 

Alguma sugestão, te agradeço a ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá amigo, ocorre algum erro quando você roda o script sem o AddAttachment?

Você roda o script em Windows ou Linux (o servidor)?

Outra coisa, alguns provedores de e-mail classificam o e-mail enviado pelo PHP como SPAM, veja se o e-mail não está na pasta de Lixo Eletrônico.

 

Essa função AddAttachment não existe pelo menos que eu saiba. Dê uma pesquisada melhor sobre como mandar anexos com a função mail. Aqui acho que você acha algumas coisas interessantes: http://br2.php.net/manual/pt_BR/function.mail.php veja nos comentários.

Compartilhar este post


Link para o post
Compartilhar em outros sites

José Enésio,

 

tirei o AddAttachment e mandei rodar, da tudo ok, mas o email não chega. Meu host da suporte a PHP, inclusive tenho um formulário de contato rodando. sera que o problema e no HTML?

 

Abri um topico sobre envio de anexo, o Beraldão me passou um tutorial e adptei ao PHP, ficou assim:

 

PHP

 

<?

$nome = $_POST['nome'];

$email = $_POST['email'];

$comentario = $_POST['comentario'];

$comentario = "--" . $boundary . "\n";

$comentario .= "Content-Type: text/plain; charset=\"iso-8859-1\"\n";

$comentario .= "Content-Transfer-Encoding: quoted-printable\n\n";

ob_start();

readfile("form.swf");

$enc = ob_get_contents();

ob_end_clean();

$msg_temp = base64_encode($enc). "\n";

$tmp[1] = strlen($msg_temp);

$tmp[2] = ceil($tmp[1]/76);

for ($b = 0; $b <= $tmp[2]; $b++) {

$tmp[3] = $b * 76;

$msg .= substr($msg_temp, $tmp[3], 76) . "\n";

}

unset($msg_temp, $tmp, $enc);

$amigos = array(

array($_POST['amigo_1'], $_POST['email_1']),

array($_POST['amigo_2'], $_POST['email_2']),

array($_POST['amigo_3'], $_POST['email_3'])

);

$headers = "Content-type:text/html;charset=iso-8859-1\n";

$headers .= "From: $email";

$headers .= "Content-Type: multipart/mixed; boundary=\"" . $boundary . "\"\n";

$recipients = '';

foreach($amigos as $x)

{

$recipients .= $x[0] . '<' . $x[1] . '>';

}

$assunto = "Recebi, gostei e estou enviando para você";

$corpo = " Nome: {$nome}.\n Email: {$email}.\n comentarios: {$comentario}.\n";

mail($recipients, $assunto, $corpo, $headers);

//AddAttachment('form.swf'); //o que seria?

$msg = "Sua mensagem foi enviada com sucesso.";

echo "<script>location.href='index.html'; alert('$msg');</script>";

?>

 

Roda mas não chega o email com o anexo, nem levando pela mãozinha chega. Ja revi o HTMl e não consigo achar o erro. Alguma sugestão?

 

Obrigado pela ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta tocar essa seção aqui:

 

foreach($amigos as $x)
{
$recipients .= $x[0] . '<' . $x[1] . '>';
}

por

 

foreach($amigos as $x)
{
$recipients .= $x[0] . '<' . $x[1] . '>, ';
}

Espero que desta vez funcione!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, funcionou, putz....ta chegando.

 

So que não veio o anexo. Mas já ta chegando. Ja e meio caminho andado.

 

Obrigadão pela ajuda. Tem alguma sugestão pro anexo chegar?

 

Rick.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Este PHP não tem anexo, não coloquei, kakakakakakakakakakakakakakakakakakakakakaka, eta cara....

Não vai chegar o anexo nunca.

Fiz uma mudança, tentei usar o

 

AddAttachment('form.swf');

 

para carregar o anexo form.swf que esta na pasta images do servidor. Mas não funcionou o que poderia utilizar?

 

Alguma sugestão?

 

Rick

Compartilhar este post


Link para o post
Compartilhar em outros sites

José Enésio,

 

olhei o tutorial e adaptei pra este, mas não ta enviando, ta com erro. Alguma sugestão?

 

?>

$nome = $_POST['nome'];

$email = $_POST['email'];

$comentario = $_POST['comentario'];

$amigos = array(

array($_POST['amigo_1'], $_POST['email_1']),

array($_POST['amigo_2'], $_POST['email_2']),

array($_POST['amigo_3'], $_POST['email_3'])

);

$mensagem = wordwrap( $mensagem, 50, "<br>", 1);

$arquivo = "../images/form.swf";

$partes_do_path = pathinfo($arquivo);

$handle = fopen($arquivo, "rb");

$headers = fread($handle, filesize($arquivo));

$headers = base64_encode($conteudo);

$headers .= "Content-type: multipart/mixed; boundary=\"$boundary\"\r\n";

$headers .= "$boundary\n";

$headers = "MIME-Version: 1.0\n";

$headers .= "From: $nome <$email>\n";

$headers .= "Bcc: envio@monografiasrio.com.br\r\n";

$recipients = '';

foreach($amigos as $x)

{

$recipients .= $x[0] . '<' . $x[1] . '>, ';

}

$assunto = "Recebi, gostei e estou enviando para você";

foreach ( $email as $em ) {

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

$mens = "MIME-Version: 1.0\r\n";

$mens .= "Content-type: text/html; charset=iso-8859-1\r\n";

$mens .= "--$boundary\n";

$mens .= "Content-Transfer-Encoding: 8bits\n";

$mens .= "Content-Type: text/html; charset=\"ISO-8859-1\"\n\n"; //plain

$mens .= "$mensagem\n";

$mens .= "--$boundary\n";

$mens .= "Content-Type: application/force-download\n";

$mens .= "Content-Disposition: attachment; filename=\"".$partes_do_path['basename']."\"\n";

$mens .= "Content-Transfer-Encoding: base64\n\n";

$mens .= "$conteudo\n";

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

$corpo = " Mensagem enviada por: $nome .\r\nEmail: $email .\r\nComentarios: $comentario .\n";

mail($recipients, $assunto, $corpo, $headers);

$msg = "Sua mensagem foi enviada com sucesso.";

echo "<script>location.href='index.html'; alert('$msg');</script>";

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ja achei um erro:

 

Linha 1 ?>

 

Ja acertei

 

Agora da este erro

 

ERRO:

 

Parse error: syntax error, unexpected $end in /home/monograf/public_html/sendmail.php on line 45

 

Linha 45 = ?>

 

Dificil né?

 

O que fazer?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Consegui acertar o erro, tinha uma linha perdida. Ficou assim:

 

PHP

 

<?php

$nome = $_POST['nome'];

$email = $_POST['email'];

$comentario = $_POST['comentario'];

$amigos = array(

array($_POST['amigo_1'], $_POST['email_1']),

array($_POST['amigo_2'], $_POST['email_2']),

array($_POST['amigo_3'], $_POST['email_3'])

);

$mensagem = wordwrap( $mensagem, 50, "<br>", 1);

$arquivo = "images/form.swf";

$partes_do_path = pathinfo($arquivo);

$handle = fopen($arquivo, "rb");

$headers = fread($handle, filesize($arquivo));

$headers = base64_encode($conteudo);

$headers .= "Content-type: multipart/mixed; boundary=\"$boundary\"\r\n";

$headers .= "$boundary\n";

$headers = "MIME-Version: 1.0\n";

$headers .= "From: $nome <$email>\n";

$headers .= "Bcc: envio@monografiasrio.com.br\r\n";

$recipients = '';

foreach($amigos as $x)

{

$recipients .= $x[0] . '<' . $x[1] . '>, ';

}

$assunto = "Recebi, gostei e estou enviando para você";

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

$mens = "MIME-Version: 1.0\r\n";

$mens .= "Content-type: text/html; charset=iso-8859-1\r\n";

$mens .= "--$boundary\n";

$mens .= "Content-Transfer-Encoding: 8bits\n";

$mens .= "Content-Type: text/html; charset=\"ISO-8859-1\"\n\n"; //plain

$mens .= "$mensagem\n";

$mens .= "--$boundary\n";

$mens .= "Content-Type: application/force-download\n";

$mens .= "Content-Disposition: attachment; filename=\"".$partes_do_path['basename']."\"\n";

$mens .= "Content-Transfer-Encoding: base64\n\n";

$mens .= "$conteudo\n";

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

$corpo = "Mensagem enviada por: $nome .\r\nEmail: $email .\r\nComentarios: $comentario .\n";

mail($recipients, $assunto, $corpo, $headers);

$msg = "Sua mensagem foi enviada com sucesso.";

echo "<script>location.href='index.html'; alert('$msg');</script>";

?>

 

Não tem nenhuma mensagem de erro, o email chega, mas o anexo não. Por que o anexo não chega?

 

Aceito sugestões.... obrigado pessoal pela ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ta dando os seguintes erros:

 

Notice: undefined variable: mensagem in /home/monograf/public_html/sendmail.php on line 11

Notice: undefined variable: mensagem in /home/monograf/public_html/sendmail.php on line 16

Notice: undefined variable: mensagem in /home/monograf/public_html/sendmail.php on line 17

Notice: undefined variable: mensagem in /home/monograf/public_html/sendmail.php on line 18

Notice: undefined variable: mensagem in /home/monograf/public_html/sendmail.php on line 39

 

E agora? Todos referentes ao anexo. Por isto so chega o email sem o danado do anexo.

 

Alguem pode me dizer como resolver esta pitinga? Bruxaria? Cha de erva? Reza brava? Promessa?

Aceito conselhos espirituais, religiosos, psicologicos ou outros.

 

Um abração a todos e obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faltou declarar a variável $mensagem!

 

Essa é a primeira aparição da danada: $mensagem = wordwrap( $mensagem, 50, "<br>", 1);

Compartilhar este post


Link para o post
Compartilhar em outros sites

José Enésio,

 

declarei a variavel $mensagem = $_POST['comentario']; e deu os seguintes erros:

 

 

Notice: undefined variable: mensagem in /home/monograf/public_html/sendmail.php on line 17

Notice: undefined variable: mensagem in /home/monograf/public_html/sendmail.php on line 18

Notice: undefined variable: mensagem in /home/monograf/public_html/sendmail.php on line 19

Notice: undefined variable: mensagem in /home/monograf/public_html/sendmail.php on line 40

 

 

PHP

 

<?php

error_reporting(E_ALL);

$nome = $_POST['nome'];

$email = $_POST['email'];

$comentario = $_POST['comentario'];

$mensagem = $_POST['comentario'];

$amigos = array(

array($_POST['amigo_1'], $_POST['email_1']),

array($_POST['amigo_2'], $_POST['email_2']),

array($_POST['amigo_3'], $_POST['email_3'])

);

$mensagem = wordwrap( $mensagem, 50, "<br>", 1);

$arquivo = "images/form.swf";

$partes_do_path = pathinfo($arquivo);

$handle = fopen($arquivo, "rb");

$headers = fread($handle, filesize($arquivo));

$headers = base64_encode($conteudo);

$headers .= "Content-type: multipart/mixed; boundary=\"$boundary\"\r\n";

$headers .= "$boundary\n";

$headers = "MIME-Version: 1.0\n";

$headers .= "From: $nome <$email>\n";

$headers .= "Bcc: envio@monografiasrio.com.br\r\n";

$recipients = '';

foreach($amigos as $x)

{

$recipients .= $x[0] . '<' . $x[1] . '>, ';

}

$assunto = "Recebi, gostei e estou enviando para você";

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

$mens = "MIME-Version: 1.0\r\n";

$mens .= "Content-type: text/html; charset=iso-8859-1\r\n";

$mens .= "--$boundary\n";

$mens .= "Content-Transfer-Encoding: 8bits\n";

$mens .= "Content-Type: text/html; charset=\"ISO-8859-1\"\n\n"; //plain

$mens .= "$mensagem\n";

$mens .= "--$boundary\n";

$mens .= "Content-Type: application/force-download\n";

$mens .= "Content-Disposition: attachment; filename=\"".$partes_do_path['basename']."\"\n";

$mens .= "Content-Transfer-Encoding: base64\n\n";

$mens .= "$conteudo\n";

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

$corpo = "Mensagem enviada por: $nome .\r\nEmail: $email .\r\nComentarios: $comentario .\n";

mail($recipients, $assunto, $corpo, $headers);

$msg = "Sua mensagem foi enviada com sucesso.";

echo "<script>location.href='index.html'; alert('$msg');</script>";

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

To aceitando sugestão.....

Tem uma muito boa, usar as tags de código ao postar códigos em fórum, ajuda e organiza para quem vai le-lo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Skyo

 

usar tags?????/ ai ai so me faltava esta. Podia ter pelo menos deixado uma sugestão para o problema né? Mas tudo bem no proximo uso as sua reivindicadas "TAGS" ta?

 

Abração.

 

Rick.

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.