Alles Anzeigen ausser.... ?

goto;

Erfahrenes Mitglied
Hallo liebe Community,
arbeite zurzeit an einem Mailpogramm. Soweit funktioniert alles. Hab gerade angefangen Eine Art Blockierung einzubinden. Sprich, dass man eine bestimmte mail adresse oder einen Absender Namen Blockieren kann. Nun hab ich aber das Problem das ich nicht wirklich weiß, wie ich damit dann Arbeiten soll.

Also wenn eine Mail Adresse blockiert ist bsp.: meinname@meinedomain.de ist als blockiert gekennzeichnet.

Wenn ich nun auf der Startseite meine Mails aus der Datenbank holen will.. sieht das ganze wie folgt aus.

SQL:
SELECT * FROM mails WHERE domain = treuhand@mmo-inc.de
So werden mir alle Mail ausgegeben die der Domain treuhand@mmo-inc.de angehören.

Um das ignorieren der blockierten adressen umzusetzen würde ich jetzt in der while-schleife mit einer if-bedingung arbeiten.. also
PHP:
 if ($blockierte_mail["domain"] != $mails_in_datenbank["domain"]) {  // ausgabe 
}else{
echo "Mail Blockiert";
}
Kommt mir aber ziemlich unsauber vor. Mir fällt aber momentan nichts besseres ein. Gibt es eine bessere Art dieses zu Realisieren?
Danke für die Antworten :)
 
Zuletzt bearbeitet von einem Moderator:
Hi, erstmal eine Frage vorweg: ist das [ email] und [/ email] so gedacht? Wenn ja wie sieht deine Datenbankstruktur aus? Prinzipiell kannst du einfach die blockierten Mails ausschließen

SQL:
SELECT * FROM mails WHERE domain = treuhand@mmo-inc.de AND absenderadresse NOT
IN ( 'adresse1', 'adresse2' )
 
Sicherlich hast du die gesperrten Adressen in einer DB-Tabelle gespeichert, also musst du JOINen:

SELECT *
FROM mails AS `m`
LEFT OUTER JOIN `geblockte_sender` AS `a`
`m`.`sender` = `a`.`sender`
WHERE domain = 'treuhand@mmo-inc.de'
AND `m`.`sender` = NULL

kapische?
 
Zurück