armdsrj 0 Denunciar post Postado Março 10, 2013 Olá pessoal... estou programando um arquivo em que o usuário digita seu nome de usuário (first_name) e seu sobrenome me (last_name) e seu email (email) e se cadastra em uma espécie de mala direta no meu banco de dados armdsinf_andre e em minha tabela dentro deste banco de dados, chamada emil_list... O fato é que o cadastro ocorre normalmente, mas, quando vou enviar de UMA VEZ SÓ um email para TODOS os emails do meu DataBase não envia os emails... Onde será que eu estou errando?... Se alguém puder me ajudar a resolver esse problema eu ficaria agradecido... Segue o arquivo sendemail: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>SendEmail</title> </head> <body> <form method="post" action=""> Mensagem: <br /><input type="text" name="subject" id="subject" /> <input type="hidden" for="andremail" /> <br />Corpo da Mensagem: <br /><textarea name="andremail" id="andremail" rows="8" cols="45"></textarea> <input type="hidden" name="acao" id="acao" value="env-cont" /> <br /><input type="submit" name="submit" id="submit" value="Enviar" /> </form> <?php $dbc = mysqli_connect('localhost', 'armdsinf_mds', 'armdsrj123', 'armdsinf_andre'); if (isset($_POST['acao']) || $_POST['acao'] == 'env-cont'){ $from ='rjcarpediem@hotmail.com'; $subject = $_POST['subject']; $text = $_POST['andremail']; $query = "SELECT * FROM email_list"; $result = mysqli_query($dbc, $query) or die ('Erro de Conexão'); while (mysqli_fetch_array($result)){ $first_name = $row['first_name']; $last_name = $row['last_name']; $msg = 'Bem ' . $text; $to = $row['email']; mail ($to, $subject, $msg, $from); echo 'Email enviado para ' . $to; } } ?> </body> </body> </html> Compartilhar este post Link para o post Compartilhar em outros sites
Ricardo Saraiva 84 Denunciar post Postado Março 10, 2013 Assim eu não vi nenhum erro no script. Você esta testando local este código ou em um servidor? Se você estiver testando local você teria que configurar um servidor de e-mail. Compartilhar este post Link para o post Compartilhar em outros sites
armdsrj 0 Denunciar post Postado Março 10, 2013 Ricardo Saraiva, eu estou testando o código em um Servidor! Simplesmente ele dá uma sequência de envios mas não mostra os emails para os quais a mensagem foi, teoricamente, enviada e simplesmente os emails não recebem a mensagem... Vejam... Não estou sabendo fazer upload de mídias... Compartilhar este post Link para o post Compartilhar em outros sites
Ricardo Saraiva 84 Denunciar post Postado Março 10, 2013 Troque a linha $from ='rjcarpediem@hotmail.com'; por $from = 'From: rjcarpediem <rjcarpediem@hotmail.com>\r\n'; Compartilhar este post Link para o post Compartilhar em outros sites
armdsrj 0 Denunciar post Postado Março 10, 2013 Ricardo Saraiva... Fiz isso QUE VOCÊ PEDIU mas continua sem enviar os emails embora mostre um sequencial de envios sem mostrar os emails para onde estão sendo enviados durante o while... Eu conferi os emails várias vezes e nada!... Se alguém puder ajudar eu ficaria satisfeito Compartilhar este post Link para o post Compartilhar em outros sites
armdsrj 0 Denunciar post Postado Março 10, 2013 Criei dois arquivos e alterei pouca coisa e deu certo... Vejam: SENDEMAIL.HTML <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>SendEmail</title> </head> <body> <h1><center><font face="verdana" color="#0000FF">Envio de Emails - Mala Direta</font></center></h1> <form method="post" action="sendemail.php"> <label for="subject">Assunto:</label><br /> <input type="text" name="subject" id="subject" size="30" /><br /> <label for="andremail">Corpo da Mensagem:<br /></label> <textarea id="andremail" name="andremail" rows="8" cols="40"></textarea><br /> <input type="submit" id="submit" name="submit" value="Enviar" /> </form> </body> </html> SENDEMAIL.PHP <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Make Me Elvis - Send Email</title> <link rel="stylesheet" type="text/css" href="style.css" /> </head> <body> <?php $from = 'rjcarpediemrj@hotmail.com'; $subject = $_POST['subject']; $text = $_POST['andremail']; $dbc = mysqli_connect('localhost', 'armdsinf_mds', 'armdsrj123', 'armdsinf_andre') or die('Error connecting to MySQL server.'); $query = "SELECT * FROM email_list"; $result = mysqli_query($dbc, $query) or die('Error querying database.'); while ($row = mysqli_fetch_array($result)){ $to = $row['email']; $first_name = $row['first_name']; $last_name = $row['last_name']; $msg = "Dear $first_name $last_name,\n$text"; mail($to, $subject, $msg, 'From:' . $from); echo 'Email sent to: ' . $to . '<br />'; } mysqli_close($dbc); ?> </body> </html> OBRIGADO E ABRAÇOS! Compartilhar este post Link para o post Compartilhar em outros sites