Contactformulier met Bijlages

Status
Niet open voor verdere reacties.

Brekelmans

Gebruiker
Lid geworden
21 mei 2007
Berichten
13
Ik ben bezig met een aanmeldformulier, en nu wil ik hebben dat de aanmelder een pasfoto kan uploaden.

Alleen deze bijlage wilt de foto niet mee versturen in de e-mail..

Kan iemand mij hiermee helpen?

Bestanden:
File.php
PHP:
<?php
//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*50)
             {
                  $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";
                //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";
                mail($email,$_POST['subject'],$body,$headers);
                echo 'Email (Met een bijlage) is verzonden';
            }
            else
            {
                 echo 'Bestands groote is te groot';
             }
        }
        else
        {
            $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'];
               mail($email,$_POST['subject'],$bericht,$headers);
               echo 'Email (Zonder een bijlage) is verzonden';
         }
     }
?>

SendEmail.php
PHP:
<?php

$mailTo = 'k-brekelmans@live.nl';



$mailFrom = $_POST['email'];
$subject = $_POST['subject'];
$email = 'U heeft een aanmelding van uw website gekregen (hartaktief.nl)
		<b>Ondertekende: </b>
		Geslacht:  '.$_POST['geslacht'].'
		Naam:  '.$_POST['vnaam'].'  '.$_POST['naam'].'
		Geboortedatum:  '.$_POST['dob'].'
		Adres:  '.$_POST['adres'].'
		Postcode:  '.$_POST['postcode'].' 
		Woonplaats:  '.$_POST['woonplaats'].' 
		Telefoon:  '.$_POST['telefoonthuis'].' 
		Mobiel:  '.$_POST['mobiel'].' 
		Bank/Giro nummer:  '.$_POST['bgn'].'
		Zorgverzekeraar:  '.$_POST['zorg'].'
		Behandelde arts:  '.$_POST['arts'].'
		
		//Pasfoto
		'.$_POST['file'].'';

			
mail($mailTo, $subject, $email, "Van: ".$mailFrom);
?>
 
Laatst bewerkt:
wat is hier je bedoeling mee? Je heb 2 scripts gepost welke beide mailen.
script 1 is bedoeld om bijlages te verzenden en script 2 verzend alleen een form.
welke van de twee gebruik je voor het verzenden?
 
wat is hier je bedoeling mee? Je heb 2 scripts gepost welke beide mailen.
script 1 is bedoeld om bijlages te verzenden en script 2 verzend alleen een form.
welke van de twee gebruik je voor het verzenden?

Formulier 2 is de verstuur bestand

En de formulier 1 is het bijlage bestand
Als je op formulier 1 upload, moet hij het sturen via formulier 2.
Alleen dat wordt neit gedaan
 
File.php is opgezet om ook mail te verzenden.
Op regel 49 en 63 van dat script staan de mail functie.
 
File.php is opgezet om ook mail te verzenden.
Op regel 49 en 63 van dat script staan de mail functie.

Hoe kan ik dit kan combineren met Sendmail.php???
Want ik wil juist hebben dat de bijlage meegestuurd wordt met de rest van de aanmeldformulier...
 
probeer eens wat met plakken en knippen.
De inhoud (ex. mail-functie) van sendmail.php invoegen in file.php
file.php hernoemen naar sendmail.php
Maar voor je dat doet kijk eerst eens goed naar de code en probeer te snappen wat wat doet.
Het makkelijkste is het te beginnen met sendmail.php. En vergelijk die code met file.php.
Als je snapt wat het doet en hoe het werkt, dan is het aanpassen een koud kunstje
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan