I'd like to know how to send mails to users who is already stored in my database so I want to select all from my database table and send them a mail and also is I want to send to the selected emails only how that can be done
This is the relevant code of the admin interface:
<?php
$get_U_data = " select * from maling_list ";
$result = $db -> query ($get_U_data) or die ($db->error);
if ($result) {
?>
<h2>Send your newsletter</h2>
<form action="mailit.php" method="post" >
Category:
<select name="category">
<option value="1">option1</option>
<option value="2">option2</option>
<option value="3">option3</option>
<option value="4">option4</option>
</select>
<select name="select" size="15" multiple="multiple" id="select">
<option>--------------</option>
<?php
while ($row = $result -> fetch_object()) {
?>
<option><?php echo $row->company ?><br /></option>
<?php
}
}
?>
<option>--------------</option>
</select><br />
Subject: <input type="text" name="subject" /><br />
Message<: <textarea name="body" cols="60" rows="15"></textarea><br>
<input type="submit" name="submit" value="Send" />
</form>
please I need help on this
this is my new code
<?php
include_once("../admin_config/config.php");
$getMails = " select * from maling_list where received = 0 limit 20 ";
$result = $db->query($getMails) or die($db->error);
$dbfailures = array();
$failures = array();
$success = array();
while ($row = $result->fetch_array()) {
$email = $row['email'];
$name = $row['company'];
$subject = $_POST['subject'];
$cat = $_POST['category'];
$mailbody = $_POST['body'];
$headers = "From : [email protected]\r\n";
$to = "$email";
$mailResult = mail($to, $subject, $mailbody, $cat, $headers);
if ($mailResult) {
$updataData = " UPDATE mailing_list SET received = '1' where email = '" . $db->real_escape_string($email) . "' LIMIT 1";
$resultUpdate = $db->query($updataData) or die($db->error);
if ($resultUpdate) {
$success[] = $email;
} else {
$dbfailures[] = $email;
}
} else {
$failures[] = $email;
}
}
echo "These mails didn't get sent: " . htmlentities(implode(', ', $failures)) . "<br />" . "These mails didn't get updated in db: " . htmlentities(implode(', ', $dbfailures)) . "<br />" . "These mails were successfully sent: " . htmlentities(implode(', ', $success));
?>