Hoi allemaal.
Ik ben de laatste maanden intensief met PHP bezig en kom bijna overal zelf wel uit, maar nu zit ik met een klein dilemma.
Ik wil een standaard mail versturen naar verschillende adressen en iedere geadresseerde moet een andere bijlage ontvangen.
Ik dacht: dat knal ik ff in een WHILE loop, maar die deed helemaal niets.
.ini is in orde, want mail versturen lukt prima, alleen niet vanuit de loop.
Stukje script:
$sql = 'SELECT * FROM `tabel` ORDER BY `naam`.`id` ASC';
$result=mysql_query($sql);
while ($row=mysql_fetch_array($result)) {
$naam=$row["naam"];
$id=$row["id"];
$email=$row["email"];
$website=$row["website"];
$attach=$row["imglink"];
$update=$row["update"];
$sitemail="[email protected]";
$subject="Onderwerp!";
$bericht= "Dit wordt het bericht. Verzonden op " . date("d-m-Y") . " om " . date("H:i:s") . " uur.<br> Als dit niet klopt, stuur dan dit bericht terug naar ".$sitemail.".<br>;
$mail= mail($_POST['email'],$subject,$bericht,$attach,"From: ".$sitemail."");
}
regel 8: Je verminkt op deze manier je "bijlage"
regel 26: Dat is nog steeds niet zoals het behoort te zijn
regel 27: Wat er achter de echo staat is lulkoek
Maar ik heb meer het idee dat wat er geschreven wordt als gebakken lucht beschouwd wordt.
Knoeiwerk, nog steeds teveel parameters voor de mail() functie:
mail ( string $to , string $subject , string $message)
Download phpmailer als je geen kaas gegeten hebt van de mail functie en invoegen van een attachment.
[edit] http://php.net/manual/en/function.mail.php
De bijlagen zien er prima uit, niets verminkt. Daarnaast gaat het om kleine bestanden dus zal de uiteindelijke schade reuze meevallen.
Wat er achter de echo staat is nu nog niet denderend belangrijk. Ik heb een werkend script, daar ben ik erg blij mee. Ik ga het nu mooi maken en excuus voor het verwarren van class met functie.
Mooi he, mensen die om hulp vragen en vervolgens de tips die ze krijgen naast zich neerleggen en het wiel opnieuw gaan uitvinden (met doorgaans een minder goed resultaat als uitkomst).....
ik weet nog steeds niet hoe ik vanuit mijn lus een email verstuur en daar ging het me om.
er is hier al meerdere keren gezegd dat je de hele troep weg moet gooien en opnieuw moet beginnen met een mail-class. en neem daarbij ook alle tips mee die gegeven zijn. misschien heb je dan je antwoord.
Ik was gebonden aan een strakke deadline. Ik zal verder gaan bouwen op phpmailer.
Obelix en Idefix op 21/01/2012 09:40:27
Mooi he, mensen die om hulp vragen en vervolgens de tips die ze krijgen naast zich neerleggen en het wiel opnieuw gaan uitvinden (met doorgaans een minder goed resultaat als uitkomst).....
Ik leg de tips zeker niet naast me neer, dan heb je niet opgelet. Ik vind het ook erg kort door de bocht om alle code maar te kopieren. Ik probeer iets te leren, en dat gaat het snelst door eens zelf iets te proberen. Uiteraard waardeer ik het commentaar, enkel de manier waarop sommige mensen dit formuleren vind ik minder netjes. Zeker omdat deze blijkbaar de oorspronkelijke vraag niet eens hebben gelezen.
Ik heb namelijk maar van 1 individu een antwoord gehad waarmee mijn vraag werd beantwoord.
Ik weet (en heb dit aangegeven in de eerste post) dat ik erg onervaren ben in de wereld van PHP. Daarnaast ben ik op vele vlakken erg tevreden over dit forum en hoop ik er nog vaak gebruik van te maken, maar dan hoop ik op opbouwende kritiek EN een antwoord op de vragen die ik heb. Zo kan ik in mijn eigen tempo jullie kennis toepassen in de scripts die ik zelf schrijf (en niet kopieer).
Het werkte, script is al weer offline. Ik had dit slechts nodig om eenmalig een grote groep een mail te sturen, met daarin hun eigen advertentie. De mails zijn succesvol verstuurd. Mij is gevraagd om dit volgend jaar weer te verzorgen. Dit geeft mij de ruimte om een goed werkend en veilig script te schrijven. Ik zal daar zeker de hulpmiddelen en tips bij gebruiken die op deze site te vinden zijn.