Ir para conteúdo
Fórum Script Brasil
  • 0

Parse Error Na Funcao Mail


Guest - ronaldosdb -

Pergunta

Guest - ronaldosdb -

Olá galera, to tentando enviar email com anexo para os usuarios cadastrados no meu site...mas ta acusando um parse error na linha 59...

alguém pode me ajudar

Parse error: parse error, unexpected T_ELSE in /home/restricted/home/domboscoitaquera/public_html/correto/envia.php on line 59
envia.php
<?php include "conecta_mysql.inc"; ?>
<?php
mysql_select_db('exalunos');
$query_rs_enviaemail = "SELECT email FROM exalunos";
$rs_enviaemail = mysql_query($query_rs_enviaemail, $conecta) or die(mysql_error());
$row_rs_enviaemail = mysql_fetch_assoc($rs_enviaemail);
$totalRows_rs_enviaemail = mysql_num_rows($rs_enviaemail);

//pego os dados enviados pelo formulario
$nome      = $_POST["nome"];
$mensagem  = $_POST["mensagem"];
$assunto    = $_POST["assunto"];
$email_from = $_POST["email_from"];

//formato o campo da mensagem
$mensagem  = wordwrap( $mensagem, 50, "<br>", 1);


$arquivo = isset($_FILES["arquivo"]) ? $_FILES["arquivo"] : FALSE;

if(file_exists($arquivo["tmp_name"]) and !empty($arquivo)){

$fp = fopen($_FILES["arquivo"]["tmp_name"],"rb");
$anexo = fread($fp,filesize($_FILES["arquivo"]["tmp_name"]));          
$anexo = base64_encode($anexo); 

fclose($fp);

$anexo = chunk_split($anexo); 


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

    $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: ".$arquivo["type"]."\n"; 
$mens .= "Content-Disposition: attachment; filename=\"".$arquivo["name"]."\"\n"; 
$mens .= "Content-Transfer-Encoding: base64\n\n"; 
$mens .= "$anexo\n"; 
$mens .= "--$boundary--\r\n"; 

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

//envio o email com o anexo    
// enquanto tiver dados no banco, atribui o valor do campo email à variával $mail, e envia o email 
while ($line=mysql_fetch_array($rs_enviamail)) {
    $mail=$line['email'];
    mail("$mail","$assunto","$mens","$headers");
}
echo"Email com anexo enviado com Sucesso !"; 

//se não tiver anexo
else{

$headers  = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "From: \"$nome\" <$email_from>\r\n";

//envia o email sem anexo
while ($line=mysql_fetch_array($rs_enviamail)) {
    $mail=$line['email'];
    mail("$mail","$assunto","$mensagem","$headers");
}
echo"Email enviado com Sucesso, mas sem anexo!"; 
?>

Vleu

Ronaldo

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

eu mudei mas ta dando um warning error;

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource ... na linha 52

while ($line=mysql_fetch_array($rs_enviamail)) {

O que eu poderia fazer para funciona?

Link para o comentário
Compartilhar em outros sites

  • 0

Valeu pela ajuda cara.

Putz, to quebrando a cabeca

não ta acusando mais erro, porem só ta enviando para o primeiro da lista...

Acho que é algum problema no while...ou na minha consulta

alguém tem uma luz..

Minha consulta esta assim:

include "conecta_mysql.inc"; 
mysql_select_db('exalunos');
$query_rs_enviaemail = "SELECT exalunos.email FROM exalunos";
$rs_enviaemail = mysql_query($query_rs_enviaemail, $conecta) or die(mysql_error());
$row_rs_enviaemail = @mysql_fetch_array($rs_enviaemail);
$totalRows_rs_enviaemail = mysql_num_rows($rs_enviaemail);
Meu while esta assim
/envio o email com o anexo    
// enquanto tiver dados no banco, atribui o valor do campo email à variával $mail, e envia o email 
while ($line=mysql_fetch_array($rs_enviaemail)) {
   $mail=$line['email'];
   mail("$mail","$assunto","$mens","$headers");
}
echo"Email com anexo enviado com Sucesso !"; 

//se não tiver anexo
}else{

$headers  = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "From: \"$nome\" <$email_from>\r\n";

//envia o email sem anexo
while ($line=mysql_fetch_array($rs_enviaemail)) {
   $mail=$line['email'];
   mail("$mail","$assunto","$mensagem","$headers");
}
}
echo"Email enviado com Sucesso, mas sem anexo!"; 
?>

Muito Obrigado

Ronaldo

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...