Ik heb een adressen bestand dat helaas in twee delen verstuurd moet worden, op twee verschillende systemen. Mensen met een microsoft account krijgen een mail van het ene systeem, de rest van een ander systeem. Dit vanwege de spam regels. Microsoft wil geen php mail hebben.
Met een query probeer ik de boel uit elkaar te houden. Voor het microsoft systeem heb ik:
SELECT *
FROM subscribers
WHERE blacklisted = '0'
AND email LIKE '%outlook.com'
OR email LIKE '%hotmail.com'
OR email LIKE '%live.com'
OR email LIKE '%msn.com'
ORDER BY id
DESC LIMIT 0,200");
Het gekke is dat hij op zich goed scheidt, maar dat ook de mensen die bij blacklist een '1' hebben staan mail krijgen. Hoe kan dat? Ik snap daar niks van.
Dan nog een probleempje. Ik dacht, ik pas de query aan en zet overal NOT voor, voor het andere systeem:
SELECT *
FROM subscribers
WHERE blacklisted = '0'
AND email NOT LIKE '%outlook.com'
OR email NOT LIKE '%hotmail.com'
OR email NOT LIKE '%live.com'
OR email NOT LIKE '%msn.com'
ORDER BY id DESC
LIMIT 0 , 200
Hierbij krijg ik gewoon een lijst met alle hotmail etc adressen er gewoon in. Weet iemand wat ik verkeerd doe?
2.912 views