Avatar billede nielses Nybegynder
15. juni 2012 - 22:06 Der er 2 kommentarer og
1 løsning

Sende daglig mail med datosorteret teksfiler (php)

Jeg har en mappe ( ude hos min udbyder)med tekstfiler sorteret i datoorden. I roden af mappen har jeg en index.php der gør jeg kan vise en ny daglig tekst på min hjemmeside: (<?php
    echo '<p>'.nl2br(htmlentities(file_get_contents(date("mj").".txt",false))).'</p>';
?>)
nu vil jeg gerne kunne sende enmail til min mailliste med samme tekstfil. Jeg ved ikke hvordan man sætter det op til at sende i phpmail.
er 100 point nok?
Niels
Avatar billede Temp_dk Nybegynder
07. juli 2012 - 10:02 #1
Hej prøv nedenstående script

Du skal dog huske at udfylde variabler først

<?php
   
$from = "Din afsender adresse";
$subject = "Det der skal stå i emne";
$message = nl2br(htmlentities(file_get_contents(date("mj").".txt",false)));

$file = ""; // Hvis du vil have et attachment med skal filnavnet skrives som værdi til $file

send_utf8_mail($value, $from, $subject, $message $file = "");

////////////////////////////////////////////
// Function: send_mail()
// UTF-8 Mail sending with html and attachments
////////////////////////////////////////////
function send_utf8_mail($value, $from, $subject, $message, $file = "")
{
    $eol="\r\n";
    if($file != "")
    {
        $fn = explode("/", $file);
        $filename = $fn[sizeof($fn)-1];
        $attachment = chunk_split(base64_encode(file_get_contents($file)));
    }

    $uid = md5(uniqid(time()));
    $header = "From: ".$from.$eol;
    $header .= "Reply-To: ".$from.$eol;
    $header .= "MIME-Version: 1.0".$eol;
    $header .= 'Content-Type: multipart/mixed; boundary="'.$uid."\"$eol";
    $header .= "This is a multi-part message in MIME format.".$eol;
    $header .= "--".$uid.$eol;
    $header .= "Content-Type: text/html; charset=\"UTF-8\"".$eol;
    $header .= "Content-Transfer-Encoding: 7bit".$eol.$eol;
    $header .= $message.$eol.$eol;

    if($file != "")
    {
        $header .= "--".$uid.$eol;
        $header .= "Content-Type: application/octet-stream; name=\"".$filename."\"".$eol;
        $header .= "Content-Transfer-Encoding: base64".$eol;
        $header .= "Content-Disposition: attachment; filename=\"".$filename."\"".$eol;
        $header .= $attachment.$eol.$eol;
    }
    $header .= "--".$uid."--";
    if(mail($value['navn']."<".$value['email'].">", '=?UTF-8?B?'.base64_encode($subject).'?=', $message, $header))
    {
        return true;
    }
    else
    {
        return false;
    }
}
?>
Avatar billede nielses Nybegynder
12. december 2012 - 10:25 #2
tak
Avatar billede nielses Nybegynder
09. august 2015 - 22:33 #3
Er blevet løst
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester