[php] email naar meerdere ontvangers.

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • dossiewossie
  • Registratie: Maart 2004
  • Laatst online: 06-09 18:33
Hoi mensen. Ik moet een website voor school maken waar o.a. de functie in moet zitten dat aangemelde bedrijven emails kunnen sturen naar aangemelde studenten.

Ik heb het nu zo gemaakt, dat in de database wordt gekeken naar emailadressen waarnaar gestuurd word, en daarna wordt er met behulp van een while statement een voor een een email naar een student gestuurd.

Een bedrijf stuurt naar maximaal 100 studenten tegelijk een email.

Is dit een juiste oplossing, of moet ik maar 1 email laten sturen met alle studenten als bcc? Nadeel is dan dat de mail bijvoorbeeld bij hotmail snel in de ongewenste mail box komt....

Owja, als jullie vinden dat het toch als bcc verstuurd moet worden, graag ff zeggen hoe ik de emailadressen dan netjes uit de array in die header krijg... :)

Inderdaad, ik ben een noob.... ;)

Acties:
  • 0 Henk 'm!

  • André
  • Registratie: Maart 2002
  • Laatst online: 12-09 14:32

André

Analytics dude

Altijd als BCC versturen.

En hoe ziet die array er uit dan?

Acties:
  • 0 Henk 'm!

  • M-ThijZ
  • Registratie: Maart 2003
  • Laatst online: 09:07

M-ThijZ

Riding on Rails

Je kunt natuurlijk ook een mail naar meerdere adressen sturen, ik geloof dat het zo gaat:
code:
1
mail("piet@school.nl, klaas@school.nl, kees@school.nl", "Het Onderwerp" , "Het bericht");

Acties:
  • 0 Henk 'm!

  • xantos
  • Registratie: Juni 1999
  • Niet online
De meeste mailservers zien een email met meer dan xx ontvangers als spam.. De oplossing van Acid_Rain zou ik dus niet gebruiken.

Misschien inderdaad een bcc gebruiken en dan opsplitsen per 20 adressen of zo.

[ Voor 25% gewijzigd door xantos op 23-05-2004 16:20 ]


Acties:
  • 0 Henk 'm!

  • dossiewossie
  • Registratie: Maart 2004
  • Laatst online: 06-09 18:33
Nu doe ik gewoon fetch row, en daarna de while waar de mail functie in staat.
Maar ik neem aan dat als ik het in de bcc header wil gooien (heb ik nog nie, hoe ziet die eruit?), ik wel een array moet gebruiken.

Ja, dat kan ook, maar ik wil niet dat de studenten elkaars email adres kunnen zien.

Acties:
  • 0 Henk 'm!

  • dossiewossie
  • Registratie: Maart 2004
  • Laatst online: 06-09 18:33
In het uiterste geval zal er een paar x een mailtje naar 200 studenten tegelijk gestuurd worden, maar meestal zal het gaan om een stuk of 30.
Dit zijn ook kleine mailtjes, met enkel wat tekst erin.

En er zal ook niet erg vaak gebruik van gemaakt worden. Het zal bijvoorbeeld wel heel toevallig zijn als een bedrijf tegelijk met een ander bedrijf mailtjes stuurt...

Mijn vraag is, waarom zou ik dit absoluut niet met een while statement moeten afhandelen?

Thnx voor de replies btw

Acties:
  • 0 Henk 'm!

Verwijderd

dossiewossie schreef op 23 mei 2004 @ 16:30:
In het uiterste geval zal er een paar x een mailtje naar 200 studenten tegelijk gestuurd worden, maar meestal zal het gaan om een stuk of 30.
Dit zijn ook kleine mailtjes, met enkel wat tekst erin.

En er zal ook niet erg vaak gebruik van gemaakt worden. Het zal bijvoorbeeld wel heel toevallig zijn als een bedrijf tegelijk met een ander bedrijf mailtjes stuurt...

Mijn vraag is, waarom zou ik dit absoluut niet met een while statement moeten afhandelen?

Thnx voor de replies btw
Je wilt het *niet* omdat het je extra processortijd en bandbreedte kost. Ik heb toevallig een webaplicatie gemaakt die inderdaad berichten naar honderden of zelfs duizenden studenten stuurt. Het versturen van mail naar duizenden studenten is toch nog aardig wat werk voor een mailserver, daarom gebruik ik de BCC methode.

Trouwens, mailservers weten niets van BCC. Je mailclient vertaalt een BCC namelijk naar een rits "MAIL TO" statements, je krijgt dan iets als:

HELO myname.mydomain.nl
RCPT FROM: <sender@domain .nl>
MAIL TO: <ontvanger1@domain2.nl>
MAIL TO: <ontvanger2@domain2.nl>
MAIL TO: <ontvanger3@domain2.nl>
DATA

Daarna volgen de header en body van de te verzenden mail.

Je loopt inderdaad een zeker risico dat de mailserver problemen gaat maken als je teveel MAILTO's (bbc's) per bericht gebruikt, maar dat is in mijn geval geen probleem. In jouw geval kun je misschien beter het zekere voor het onzekere nemen en gewoon een loopje gebruiken, niet echt veel op tegen tenzij je attachments van 5MB mee stuurt of zo.

[ Voor 3% gewijzigd door Verwijderd op 23-05-2004 16:49 ]


Acties:
  • 0 Henk 'm!

  • dossiewossie
  • Registratie: Maart 2004
  • Laatst online: 06-09 18:33
Phew!

Thanx, dus dan kan ik het laten zoals het is! Nee, er worden geen bijlagen verstuurd, alleen wat tekst.

Bedankt, nu kan ik weer met een gerust hart slapen! ;)

Acties:
  • 0 Henk 'm!

Verwijderd

Nog iets: Een factor die wel een zekere rol speelt is dat je in een PHP pagina moet wachten tot alle mails verstuurt zijn. Als je het loop model gebruikt zou dat enige tijd kunnen duren bij 200 mailtjes, laat staan bij duizenden.

Mijn applicatie verstuurt de mailtjes dan ook via een apart Perl process dat los staat van de PHP pagina. Berichten worden in de mysql db gemarkeerd als 'te versturen' en het achtergrondscript pikt ze op en regelt het versturen.

Bij grote aantallen mailtjes is een apart achtergrondproces n.m.m. de beste methode.

Acties:
  • 0 Henk 'm!

Verwijderd

Oeps...

[ Voor 99% gewijzigd door Verwijderd op 23-05-2004 17:26 ]


Acties:
  • 0 Henk 'm!

  • dossiewossie
  • Registratie: Maart 2004
  • Laatst online: 06-09 18:33
Hmmm, ok. Was ook iets te mooi om waar te zijn :)

Ik test nu op mijn eigen webspace, en dat is bij flexwebhosting. Het gaat inderdaad beetje traag (nog niet geprobeerd te testen met 200 mails).
Het is een project van de kamer van koophandel, dus ik neem aan dat die wel een lekkere server uitkiezen, anders wordt ik boos :(

Maar wat je net zei over perl, dat gaat mijn petje te boven... Is het mogelijk om het toch op de achtergrond te laten draaien enkel met php?

Misschien domme vraag, maar ben net 3 weken bezig met php, en scripting uberhaupt...

thnx

Acties:
  • 0 Henk 'm!

Verwijderd

dossiewossie schreef op 23 mei 2004 @ 16:54:
Hmmm, ok. Was ook iets te mooi om waar te zijn :)

Ik test nu op mijn eigen webspace, en dat is bij flexwebhosting. Het gaat inderdaad beetje traag (nog niet geprobeerd te testen met 200 mails).
Het is een project van de kamer van koophandel, dus ik neem aan dat die wel een lekkere server uitkiezen, anders wordt ik boos :(

Maar wat je net zei over perl, dat gaat mijn petje te boven... Is het mogelijk om het toch op de achtergrond te laten draaien enkel met php?

Misschien domme vraag, maar ben net 3 weken bezig met php, en scripting uberhaupt...

thnx
Ja, kan ook. PHP is in principe alleen bedoeld voor webpagina's maar je kunt het ook op de achtergrond laten draaien met 'php mijnscript.php' o.i.d. Voor jouw doeleinden moet dat genoeg zijn.

Acties:
  • 0 Henk 'm!

Verwijderd

Verwijderd schreef op 23 mei 2004 @ 17:26:
[...]


Ja, kan ook. PHP is in principe alleen bedoeld voor webpagina's maar je kunt het ook op de achtergrond laten draaien met 'php mijnscript.php' o.i.d. Voor jouw doeleinden moet dat genoeg zijn.
Cronjob's that is...

Acties:
  • 0 Henk 'm!

  • Room42
  • Registratie: September 2001
  • Niet online
Wat je anders kan doen is een offset gebruiken en na bijvoorbeeld de eerste 20 mailtjes redirecten naar /mailscript.php?nextmail=21 en dan dus verder gaan vanaf mailtje $nextmail

Zo kun je eventueel ook helemaal volgen wat er gebeurt.

[ Voor 15% gewijzigd door Room42 op 24-05-2004 02:53 ]

"Technological advancements don't feel fun anymore because of the motivations behind so many of them." Bron


Acties:
  • 0 Henk 'm!

Verwijderd

Absoluut, maar aangezien de meeste tweakers hier een MS product lijken te gebruiken, en ik niet eens zou weten hoe de MS variant van 'cron' heet, heb ik dat maar in het midden gelaten ;)

Ik heb ook wel eens gehoord dat sommige mensen een php pagina waarin de 'job' draait op het web zetten en die dan vervolgens via lynx of wget of curl o.i.d. automatisch (vanuit een cronjob) aan laten roepen.

Creatief, maar ik gebruik liever Perl... :)

Acties:
  • 0 Henk 'm!

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-09 08:50

gorgi_19

Kruimeltjes zijn weer op :9

Verwijderd schreef op 25 mei 2004 @ 14:52:
Absoluut, maar aangezien de meeste tweakers hier een MS product lijken te gebruiken, en ik niet eens zou weten hoe de MS variant van 'cron' heet, heb ik dat maar in het midden gelaten ;)
Da's gewoon de Taakplanner / Task Scheduler

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Acties:
  • 0 Henk 'm!

Verwijderd

gorgi_19 schreef op 25 mei 2004 @ 14:53:
[...]

Da's gewoon de Taakplanner / Task Scheduler
Kan die ook scripts runnen? Dat is wel fantastisch, haha... Ik bedoel, dat ik daar op deze manier achter kom... Niet dat het zo geweldig is dat MS een prog heeft gemaakt dat taakplanner heet ;)
Pagina: 1