Guest - ronaldosdb - Postado Dezembro 3, 2005 Denunciar Share Postado Dezembro 3, 2005 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 ajudarParse 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!"; ?> VleuRonaldo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 M@luco Belez@ Postado Dezembro 4, 2005 Denunciar Share Postado Dezembro 4, 2005 não dá pra identificar direito, mas tenta mudar a linha//se não tiver anexo}else{ Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest Guest Postado Dezembro 4, 2005 Denunciar Share Postado Dezembro 4, 2005 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? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 M@luco Belez@ Postado Dezembro 4, 2005 Denunciar Share Postado Dezembro 4, 2005 dá uma olhada no erro..você digitou errado..você colocouwhile ($line=mysql_fetch_array($rs_enviamail)) {mas éwhile ($line=mysql_fetch_array($rs_enviaemail)) { Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ronaldosdb Postado Dezembro 4, 2005 Denunciar Share Postado Dezembro 4, 2005 Valeu pela ajuda cara.Putz, to quebrando a cabecanão ta acusando mais erro, porem só ta enviando para o primeiro da lista...Acho que é algum problema no while...ou na minha consultaalgué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 ObrigadoRonaldo Citar Link para o comentário Compartilhar em outros sites More sharing options...
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
envia.phpVleu
Ronaldo
Link para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
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.