-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsendEmails.php
66 lines (55 loc) · 2.16 KB
/
sendEmails.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<?php
require 'lib/class.phpmailer.php';
require 'lib/class.smtp.php';
if (file_exists("config.ini")):
$config = parse_ini_file("config.ini");
else:
$config = parse_ini_file("config-default.ini");
endif;
$databaseUser = $config["databaseUser"];
$databasePassword = $config["databasePassword"];
$databaseName = $config["databaseName"];
//Configuration for the colab instance
$colabName = $config["colabName"];
$colabUrl = $config["colabUrl"];
$fromEmail = $config["fromEmail"];
//Email config
$smtpHost = $config["smtpHost"];
$smtpPort = $config["smtpPort"];
$smtpUser = $config["smtpUser"];
$smtpPassword = $config["smtpPassword"];
echo "[INFO] Connecting to database '$databaseName' as '$databaseUser'\n\n";
$c = mysqli_connect("127.0.0.1", $databaseUser, $databasePassword, $databaseName) or die(mysqli_error($c));
$r = mysqli_query($c, "select * from email;") or die(mysqli_error($c));
while ($row = mysqli_fetch_row($r)) {
echo "[INFO] Sending email to: " . $row[0] . "\n";
$subject = "$colabName is back online!";
$message = "Dear $colabName member,<br/> <br />" .
"Thank you very much for waiting for us to make some critical updates to the $colabName. The site is back online now: $colabUrl.<br /> <br />" .
"Best regards,<br />The $colabName Team";
sendEmail($row[0], $fromEmail, "The $colabName Team", $subject, $message,
$smtpHost, $smtpPort, $smtpUser, $smtpPassword);
}
echo "[INFO] Removing users\n\n";
$r = mysqli_query($c,"DELETE FROM email") or die(mysqli_error($c));
mysqli_close($c);
function sendEmail($to, $fromAddress, $fromName, $subject, $emailBody,
$smtpHost, $smtpPort, $smtpUser, $smtpPassword) {
$mail = new PHPMailer;
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->Host = $smtpHost;
$mail->Port = $smtpPort;
$mail->Username = $smtpUser;
$mail->Password = $smtpPassword;
$mail->SetFrom($fromAddress, $fromName);
$mail->Subject = $subject;
$mail->MsgHTML($emailBody);
$mail->AddAddress($to);
if ($mail->Send()) {
echo "Message sent!";
} else {
echo "[WARN] failed to send email to $to.\n" . $mail->ErrorInfo;
}
}
?>