Naam:
Email:
Adres:
Onderwerp:
Bestand:
Bericht:
<?php
//mail formulier voor bijlage
$email ='emailadres@gmail.com';
//geneer boundary
DEFINE('bound',md5(uniqid(time())));
//check request method

    
if($_SERVER['REQUEST_METHOD'] == 'POST')
    {
         
//if file upload send with email as mixed
         
if(!empty($_FILES['file']['name']))
         {
            
//check filesize
             
if($_FILES['file']['size'] < 1024*5000)
             {
                  
$headers "From: ".$_POST['from']." <".$_POST['email'].">\r\n";
                
$headers .= "Reply-To: ".$_POST['from']." <".$_POST['email'].">\r\n";
                   
$headers .= "MIME-Version: 1.0\r\n";
                   
//email bestaat uit meerdere  bestanden dus vertel wat de scheidings teken is en dat het een multipart is
                   
$headers .= "Content-Type: multipart/mixed; boundary=\"".bound."\"\r\n";
                   
//we zenden een attachment mee
                   
$headers .= "Content-Disposition:  attachment\r\n";
                   
//readfile
                   
$fp fopen($_FILES['file']['tmp_name'],'r');
                   
$bestand fread($fp,$_FILES['file']['size']);
                   
fclose($fp);
                   
//create body
                   //generenen een body. Dit is een multi part gezeik
                   
$body.= "This is a multi-part message in MIME format.\r\n";
                   
$body.= "\r\n";
                
//boundary
                
$body.= "--".bound."\r\n";
                
//content type + charater set (iso in dit geval)
                
$body.= "Content-Type: text/plain; charset=iso-8859-1\r\n";
                
//codering (7 bit)
                
$body.= "Content-Transfer-Encoding: 7bit\r\n";
                
$body.= "\r\n";
                
//het bericht
                
$body.= $_POST['bericht'] ."\r\n";
                
$body.= $_POST['adres'] ."\r\n";
                
//boundary
                
$body.= "--".bound."\r\n";
                
//content type + naam bestand (database.sql)
                
$body .= "Content-Type: application/octet-stream; name=".$_FILES['file']['name']."\r\n";
                
//codering
                
$body .= "Content-Transfer-Encoding: base64\r\n";
                
//als bijlage toegevoegd
                
$body.= "Content-disposition: attachment\r\n";
                
$body .= "\n";
                
//de inhoud van het bestand
                
$body .= chunk_split(base64_encode($bestand )) . "\r\n";
                
        
///AANZETTEN!!!////
        //mail($email,$_POST['subject'],$body,$headers);
                
echo 'Email (Met een bijlage) is verzonden';
            }
            else
            {
                 echo 
'Het bestand dat verzonden moet worden is te groot.';
             }
        }
        else
        {
        
// zonder bijlage....
            
$headers "From: ".$_POST['from']." <".$_POST['email'].">\r\n";
               
$headers .= "Reply-To: ".$_POST['from']." <".$_POST['email'].">\r\n";
               
$headers .= "MIME-Version: 1.0\r\n";
               
$bericht $_POST['bericht'];
               
$adres $_POST['adres'];
               
$berichtcompleet "$bericht $adres";
               echo 
"berichtcompleet";
               
           
///AANZETTEN!!!////
               //mail($email,$_POST['subject'],$berichtcompleet,$headers);
               
echo 'Email (Zonder een bijlage) is verzonden';
         }
     }
     else
     {
        
//Het formulier 
        
echo "<form action=\"" $_SERVER['PHP_SELF'] . "\" method=\"POST\" enctype=\"multipart/form-data\">";
         echo 
"Naam: <input type='text' name='from'><br>";
         echo 
"Email:<input type='text' name='email'><br>";
         echo 
"Adres:<input type='text' name='adres'><br>";
         echo 
"Onderwerp:<input type='text' name='subject'><br>";
         echo 
"Bestand:<input type='file' name='file'><br>";
         echo 
"Bericht:<textarea name='bericht'></textarea><br />";
        echo 
"<input type=\"submit\" value=\"Verzenden\">";
    }
    
 
// bron weergeven
 
show_source(__FILE__);
?>