Ir para conteúdo

POWERED BY:

Arquivado

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

armdsrj

Por Que NÃO estão sendo enviados os Emails a partir de um DataBase?

Recommended Posts

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">
<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

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

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...



0.jpg

Compartilhar este post


Link para o post
Compartilhar em outros sites

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

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">
<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"
<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

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.