Gå til innhold

Avansert mail funksjon. Vil ikke sende mail!


Anbefalte innlegg

Skrevet

Hællæ.

 

Har lest gjennom php.net og har modifisert et eksempel jeg fant der om mail().

 

<?php 
///////////////////////////////////////////////////
/// NYHETSBREV FREDRIKTSTAD CUP - HOAXEDBASEINC ///
///////////////////////////////////////////////////



$to = "[email protected]"; 
$subject = "Fredrikstad Cup 08 - Nyhetsbrev";
$fromandress = "[email protected]";
$fromname = "Fredrikstad Cup";
$fromextra = "?subject=IKKE SVAR PA DENNE MAILEN&body=Vennligst ikke svar pa denne mailen. Ga heller inn på folgende url for a svare; www.fredrikstad-cup.no/08/index.php?side=kontakt";

function send_mail($to, $body, $subject, $fromaddress, $fromname, $attachments=false)
{
 $eol="\r\n";
 $mime_boundary=md5(time());

 # Common Headers
 $headers .= "From: ".$fromname."<".$fromaddress.">".$eol;
 $headers .= "Reply-To: ".$fromname."<".$fromaddress."".$fromextra.">".$eol;
 $headers .= "Return-Path: ".$fromname."<".$fromaddress."".$fromextra.">".$eol;    // these two to set reply address
 $headers .= "Message-ID: <".time()."-".$fromaddress.">".$eol;
 $headers .= "X-Mailer: PHP v".phpversion().$eol;          // These two to help avoid spam-filters

 # Boundry for marking the split & Multitype Headers
 $headers .= 'MIME-Version: 1.0'.$eol;
 $headers .= "Content-Type: multipart/mixed; boundary=\"".$mime_boundary."\"".$eol.$eol;

 # Open the first part of the mail
 $msg = "--".$mime_boundary.$eol;

 $htmlalt_mime_boundary = $mime_boundary."_htmlalt"; //we must define a different MIME boundary for this section
 # Setup for text OR html -
 $msg .= "Content-Type: multipart/alternative; boundary=\"".$htmlalt_mime_boundary."\"".$eol.$eol;

 # Text Version
 $msg .= "--".$htmlalt_mime_boundary.$eol;
 $msg .= "Content-Type: text/plain; charset=iso-8859-1".$eol;
 $msg .= "Content-Transfer-Encoding: 8bit".$eol.$eol;
 $msg .= strip_tags(str_replace("<br>", "\n", substr($body, (strpos($body, "<body>")+6)))).$eol.$eol;

 # HTML Version
 $msg .= "--".$htmlalt_mime_boundary.$eol;
 $msg .= "Content-Type: text/html; charset=iso-8859-1".$eol;
 $msg .= "Content-Transfer-Encoding: 8bit".$eol.$eol;
 $msg .= $body.$eol.$eol;

 //close the html/plain text alternate portion
 $msg .= "--".$htmlalt_mime_boundary."--".$eol.$eol;

 if ($attachments !== false)
 {
   for($i=0; $i < count($attachments); $i++)
   {
     if (is_file($attachments[$i]["file"]))
     {   
       # File for Attachment
       $file_name = substr($attachments[$i]["file"], (strrpos($attachments[$i]["file"], "/")+1));

       $handle=fopen($attachments[$i]["file"], 'rb');
       $f_contents=fread($handle, filesize($attachments[$i]["file"]));
       $f_contents=chunk_split(base64_encode($f_contents));    //Encode The Data For Transition using base64_encode();
       $f_type=filetype($attachments[$i]["file"]);
       fclose($handle);

       # Attachment
       $msg .= "--".$mime_boundary.$eol;
       $msg .= "Content-Type: ".$attachments[$i]["content_type"]."; name=\"".$file_name."\"".$eol;  // sometimes i have to send MS Word, use 'msword' instead of 'pdf'
       $msg .= "Content-Transfer-Encoding: base64".$eol;
       $msg .= "Content-Description: ".$file_name.$eol;
       $msg .= "Content-Disposition: attachment; filename=\"".$file_name."\"".$eol.$eol; // !! This line needs TWO end of lines !! IMPORTANT !!
       $msg .= $f_contents.$eol.$eol;
     }
   }
 }

 # Finished
 $msg .= "--".$mime_boundary."--".$eol.$eol;  // finish with two eol's for better security. see Injection.

 # SEND THE EMAIL
 ini_set(sendmail_from,$fromaddress);  // the INI lines are to force the From Address to be used !
 $mail_sent = mail($to, $subject, $msg, $headers);

 ini_restore(sendmail_from);

 return $mail_sent;
}
?> 

Problemet er at jeg rett og slett ikke får den til å sende noen mail. Hmm..

Videoannonse
Annonse
Gjest Slettet+142
Skrevet

Hvor i koden kaller du egentlig den avanserte funksjonen?

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...