Archief - PHP: mail(); nieuwsbrief wordt niet naar iedereen verzonden

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

verdeye

Legacy Member
Hoi,

ik werk aan een scriptje om nieuwsbrieven te verzenden.
Qua content etc .. is alles in orde, het probleem is dat bepaalde domeinen blijkbaar de nieuwsbrief niet ontvangen, zelfs niet in de spam map.

Welke niet: pandora.be, telenet.be <- weet ik al zeker
Welke wel: gmail.com, msn.com, hotmail.com <- weet ik ook al zeker

De adressen worden uit een db gehaald, nadien als string aan elkaar gezet om zo in de Bcc header te passen.

Algemeen overzicht van hoe ik het gebruik.

PHP:
$from = "noreply <[email protected]>";
			$to = "Newsletter <[email protected]>";
			
			$body_simple = "<a href=\"http://www.mijndomein.com/newsletter/1/\">Klik hier</a> als deze email onleesbaar is.<br />";
			
			$boundary = md5(uniqid(time()));		
						
			$headers  = 'From: ' . $from . "\n";
			$headers .= 'To: ' . $to . "\n";
			$headers .= 'Bcc: ' .$ontvangers. "\n";
			$headers .= 'Return-Path: ' . $from . "\n";
			$headers .= 'MIME-Version: 1.0' ."\n";
			$headers .= 'Content-Type: multipart/alternative; boundary="' . $boundary . '"' . "\n\n";
			$headers .= $body_simple . "\n";
			$headers .= '--' . $boundary . "\n";
			$headers .= 'Content-Type: text/plain; charset=ISO-8859-1' ."\n";
			$headers .= 'Content-Transfer-Encoding: 8bit'. "\n\n";
			$headers .= $body_simple . "\n";
			$headers .= '--' . $boundary . "\n";
			$headers .= 'Content-Type: text/HTML; charset=UTF-8' ."\n";
			$headers .= 'Content-Transfer-Encoding: 8bit'. "\n\n";
			$headers .= $inhoud . "\n";
			$headers .= '--' . $boundary . "--\n"; 

mail('', "onderwerp",'', $headers)

Is dit te wijten aan een bepaalde bug, bug in de code, aan de host?
Ik heb geen idee meer waar ik het probleem moet gaan zoeken.

Alvast bedankt,

verdeye

Legacy Member
phpmailer doet net hetzelfde ... niets naar pandora/telenet/...
vreemd, toch dan maar eens bij de host het probleem zoeken.

Radiance

Legacy Member
Imho gaat het toch de Telenet spam filter zijn hoor. Ik geloof dat die standaard alle spam discard, je krijgt daar geen waarschuwing van. Kijk je Telenet instellingen eens na.

verdeye

Legacy Member
Ik heb bij mijn telenet nu de spamfilters gewijzigd: [SPAM] in het onderwerp, eens kijken wat dat geeft, wijziging binnen 30min.

verdeye

Legacy Member
Radiance & frenzal: jullie hebben gelijk! Die verdomde spamfilter van telenet houdt de maisl tegen. Nu hiervoor nog een oplossing vinden.

Radiance

Legacy Member
Waar kan ik verkeerd gemarkeerde e-mails doorgeven aan Telenet?



Je kan eventueel verkeerd gemarkeerde e-mail doorgeven via Mijn Telenet, links in het menu bij "Anti-Spam". Hier kan je ook je Anti-Spam instellingen aanpassen. Indien je opgave wordt goedgekeurd komt hij op de uitzonderingslijst terecht (whitelist). Afzenders op de whitelist krijgen "vrije" doorgang.

Lashknife

Legacy Member
mss eens kijken wat er in je "from" staat, want mss violate jij een helo check ofzo (lees: php server doet zich anders voor dan wie hij is) en dan moet je dit eens checken met je hosting bedrijf

WHiSPy

Legacy Member
Ik zou ook eens kijken of ge niet teveel mensen in de to of cc zet. Dat zijn immers ook negatieve punten bij spamfilters.

verdeye

Legacy Member
geen enkel cc, alles in bcc, anders krijgt iedereen de volledige mailinglist te zien ;)

frenzal

Legacy Member
en als je in een loop per persoon een mail() commando uitvoert ipv met bcc te werken?

verdeye

Legacy Member
is niet aan te raden...
als ik me goed herinner is mail() niet gemaakt om loops van 3000 herhalingen te maken. Aangezien mail() steeds een nieuwe connectie maakt en die weer afbreekt. Dus gewoon een lijst van contacten in BCC zou het moeten doen. Maar ik denk ookal sta je in BCC of als ontvanger, ... nogaltijd spam. Maar ik probeer het eens.

edit: maakt niet uit, To:, Cc: of Bcc:, komt allemaal bij spam.

En als ik mijn header invoeg bij telenet, dan zegtie dat het geen header is ... (die text). (fckrs)

WHiSPy

Legacy Member
Probeer ze eventueel te versturen in batches van 10 ofzo. Afaik worden die bcc headers er nog niet af gestript voor de mailserver ze ziet. Dus die ziet meteen 'n waslijst recipients.

verdeye

Legacy Member
mja maar volgens mij heeft het daar echt niet meet te maken.
Ik test natuurlijk niet door naar 3000 mensen te sturen,
en ook, het gebruik van phpmailer raad van van die dingen niet in een lus te zetten, die klasse is er net voor gemaakt om alles in een keer mee te geven.
Wat ook raar is, meestal doet hotmail lastig met spam ... dit keer telenet.
'k heb echt al alles geprobeerd hoor.

Radiance

Legacy Member
Het zal dan eerder liggen aan de opbouw / inhoud van uw mail misschien de afzender of ip adres van uw host, ik heb al regelmatig gemail()'t naar telenet adressen zonder probleem, en heb toen niet bijzonder veel headers ingesteld.

Maar idd gebruik mail(); NIET om 100'en of zelfs 1000'en berichten in een loopke te mailen, maakt zoals gezegd telkens een nieuwe connectie met de SMTP server en die gaat gewoon connecties gaan weigeren telangenduur, je kan daar dan sleep()'s gaan inbouwen enzo, maar het blijft prullen.

Wat je dan nodig hebt is een mailer die zelf een SMTP connectie start en die eene connectie openhoud om alles mails te versturen. De voorgenoemde mail klasse zal dat misschien doen, uit het Zend Framework heb je Zend_Mail die dat ook heel efficient en logisch doet, met uitgebreide manual / API doc

dJeez

Legacy Member
Radiance zei:
Wat je dan nodig hebt is een mailer die zelf een SMTP connectie start en die eene connectie openhoud om alles mails te versturen. De voorgenoemde mail klasse zal dat misschien doen, uit het Zend Framework heb je Zend_Mail die dat ook heel efficient en logisch doet, met uitgebreide manual / API doc
PHPMailer staat dat uiteraard ook toe, meer zelfs : ze raden zelfs aan van het op die manier te doen. Je kan zelfs direct meerdere SMTP servers opgeven die als failover gebruikt kunnen worden (als de eerste down is wordt de 2e geprobeerd, ...). PHPMailer is qua features ook een pak uitgebreider dan de huidige Zend_Mail (ook nogal logisch aangezien het al veel langer bestaat dan het Zend Framework).

verdeye

Legacy Member
Ik heb telenet gecontacteerd met mijn probleem.
Want echt bij alle andere providers komt de mail erdoor als niet-spam.
Nu wachten, ... en wachten op een antwoord.
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan