-
Notifications
You must be signed in to change notification settings - Fork 0
/
sendAGB.php
135 lines (105 loc) · 3.91 KB
/
sendAGB.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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
<?php
// Retrieve the passed variables from the URL parameters
$bestellungsHash = $_GET['bestellungsHash'];
include 'statics.php';
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
use PHPMailer\PHPMailer\SMTP;
require 'includes/PHPMailer/src/Exception.php';
require 'includes/PHPMailer/src/PHPMailer.php';
require 'includes/PHPMailer/src/SMTP.php';
//Lade den Autoloader von Composer
// Erstelle eine Instanz; das Argument `true` ermöglicht das Werfen von Ausnahmen (Exceptions)
$mail = new PHPMailer(true);
try {
$conn = new PDO("mysql:host=$servername;dbname=aks-EndOfYear-Partayy-tickets", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
echo "1 nul";
exit();
}
$stmt = $conn->prepare("SELECT hash, besteller_id, gast1_id, gast2_id, gast3_id, gast4_id FROM bestellung WHERE hash = :hash");
$stmt->bindParam(':hash', $bestellungsHash, PDO::PARAM_STR);
$stmt->execute();
$row = $stmt->fetch(PDO::FETCH_ASSOC);
$ids = array();
if ($row['besteller_id'] != NULL) {
array_push($ids, $row['besteller_id']);
}
if ($row['gast1_id'] != NULL) {
array_push($ids, $row['gast1_id']);
}
if ($row['gast2_id'] != NULL) {
array_push($ids, $row['gast2_id']);
}
if ($row['gast3_id'] != NULL) {
array_push($ids, $row['gast3_id']);
}
if ($row['gast4_id'] != NULL) {
array_push($ids, $row['gast4_id']);
}
$from = "[email protected]";
#getMSG
$file = $URL . 'ABG-Mail.php';
$params = [
'bestellungsHash' => $bestellungsHash
];
$url = $file . '?&bestellungsHash=' . $bestellungsHash;
$message = file_get_contents($url);
$to = "[email protected]";
try {
// Servereinstellungen
#$mail->SMTPDebug = SMTP::DEBUG_SERVER; // Aktiviere detaillierte Debug-Ausgabe
$mail->isSMTP(); // Sende über SMTP
$stmt = $conn->prepare("SELECT id, email FROM menschen WHERE id = :id");
$Bcc = "";
foreach ($ids as $id) {
$stmt->bindParam(':id', $id, PDO::PARAM_INT);
$stmt->execute();
$mail->addBcc($stmt->fetch(PDO::FETCH_ASSOC)['email']);
}
$mail->Host = $smtpHost; // Setze den SMTP-Server für den Versand
$mail->SMTPAuth = true; // Aktiviere SMTP-Authentifizierung
$mail->Username = $mailusername; // SMTP-Benutzername
$mail->Password = $mailpassword; // SMTP-Passwort
$mail->SMTPSecure = "TLS"; // Aktiviere TLS-Verschlüsselung
$mail->Port = $smtpPort; // TCP-Port zum Verbinden; verwende 587, wenn `SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS` gesetzt ist
$mail->CharSet = 'UTF-8';
$mail->Encoding = 'base64';
// Empfänger
$mail->setFrom($from, 'AKS Karlsruhe');
$mail->AddAttachment('./AGBs.pdf', $name = 'AGBs.pdf', $encoding = 'base64', $type = 'application/pdf');
$mail->AddAttachment('./muttizettel.pdf', $name = 'muttizettel.pdf', $encoding = 'base64', $type = 'application/pdf');
$mail->addAddress($to); // Füge einen Empfänger hinzu
//add bcc
// Inhalt
$mail->isHTML(true); // Setze das E-Mail-Format auf HTML
$mail->Subject = 'Reservierung Karten AKS EndOfYear Partayy';
$mail->Body = $message;
$mail->send();
} catch (Exception $e) {
echo "Die Nachricht konnte nicht gesendet werden. Mailer Error: {$mail->ErrorInfo}";
}
?>
<body>
<div class="container">
<div class="content">
<div class="inner-content">
<div class="header skew">
<h1>AKS EndOfYear-Partayy</h1>
<h3>Die E-Mail wurde erfolgreich verschickt.</h3>
</div>
<p>Nun musst du deine E-Mail bestätiegen. <br>
Danach erhälst du eine weiter mail mit dem qr code zum abholen der Karten und einer
einverständinsserklärung
die von deinen erlern gelesen und bestätigt werden muss.
</p>
</div>
</div>
</div>
<?php
include 'footer.php';
?>
</body>
<?php
?>