Results 1 to 4 of 4

Thread: mail form

  1. #1
    Join Date
    Aug 2008
    Posts
    7
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Default mail form

    hey guys ive been stressing out all weekend over something probably quite simple!

    basically i have this form http://www.lincolnwebenterprises.co....ttachform.html

    and behind it is this code:

    PHP Code:
    <html>
    <head>
    <title> Sending Email </title>
    </head>
    <body>
    <?php

    // Read POST request params into global vars
    $subject    "Steel Beam Design Calculation";
    $recipient    "d.reaper@hotmail.co.uk";
    $from    $_POST['from'];
    $message $_POST['message'];

    /* Page to display if script called directly or if mandatory fields empty */
    $try_again    "errorattach.html";

    /* Page to display if mail was sent ok */
    $return_ok    "thank-you-attach.html";

    /* Page to display if mail went wrong */
    $return_bad    "oooop.html";

    // Obtain file upload vars
    $fileatt      $_FILES['fileatt']['tmp_name'];
    $fileatt_type $_FILES['fileatt']['type'];
    $fileatt_name $_FILES['fileatt']['name'];

    $headers "From: $from";

    if (
    is_uploaded_file($fileatt)) {
      
    // Read the file to be attached ('rb' = read binary)
      
    $file fopen($fileatt,'rb');
      
    $data fread($file,filesize($fileatt));
      
    fclose($file);

      
    // Generate a boundary string
      
    $semi_rand md5(time());
      
    $mime_boundary "==Multipart_Boundary_x{$semi_rand}x";
      
      
    // Add the headers for a file attachment
      
    $headers .= "\nMIME-Version: 1.0\n" .
                  
    "Content-Type: multipart/mixed;\n" .
                  
    " boundary=\"{$mime_boundary}\"";

      
    // Add a multipart boundary above the plain message
      
    $message "This is a multi-part message in MIME format.\n\n" .
                 
    "--{$mime_boundary}\n" .
                 
    "Content-Type: text/plain; charset=\"iso-8859-1\"\n" .
                 
    "Content-Transfer-Encoding: 7bit\n\n" .
                 
    $message "\n\n";         

      
    // Base64 encode the file data
      
    $data chunk_split(base64_encode($data));

      
    // Add file attachment to the message
      
    $message .= "--{$mime_boundary}\n" .
                  
    "Content-Type: {$fileatt_type};\n" .
                  
    " name=\"{$fileatt_name}\"\n" .
                  
    //"Content-Disposition: attachment;\n" .
                  //" filename=\"{$fileatt_name}\"\n" .
                  
    "Content-Transfer-Encoding: base64\n\n" .
                  
    $data "\n\n" .
                  
    "--{$mime_boundary}--\n";
    }

    // Send the message
    $ok = @mail($recipient$subject$message$headers);
    if (
    $ok) {
      echo 
    "<p>$return_ok</p>";
    } else {
      echo 
    "<p>$try_again</p>";
    }
    ?>
    </body>
    </html>
    I want it so that each of the form fields are displayed in the email on seperate lines, as at the moment just the message (details) are is displayed.

    can anyone please help me??

    Thankyou

  2. #2
    Join Date
    Jan 2008
    Posts
    4,168
    Thanks
    28
    Thanked 628 Times in 624 Posts
    Blog Entries
    1

    Default

    Take a look at this: http://us3.php.net/manual/en/function.mail.php Example 4. You must use the HTML mine type, and use the <br /> or <br> in your email.
    Jeremy | jfein.net

  3. #3
    Join Date
    Aug 2008
    Posts
    7
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Default

    i dont get how to intergrate that into the code i have?

    Ive tried and tried but keep getting different errors, i thought you could just set a var to each field such as $name = $_POST ['name'] then call it later on in the code, but not sure what to use to call it.

  4. #4
    Join Date
    Jan 2008
    Posts
    4,168
    Thanks
    28
    Thanked 628 Times in 624 Posts
    Blog Entries
    1

    Default

    In your code change:
    PHP Code:
      $message "This is a multi-part message in MIME format.\n\n" .
                 
    "--{$mime_boundary}\n" .
                 
    "Content-Type: text/plain; charset=\"iso-8859-1\"\n" .
                 
    "Content-Transfer-Encoding: 7bit\n\n" .
                 
    $message "\n\n"
    To this:
    PHP Code:
      $message "This is a multi-part message in MIME format.\n\n" .
                 
    "--{$mime_boundary}\n" .
                 
    "Content-Type: text/html; charset=\"iso-8859-1\"\n" .
                 
    "Content-Transfer-Encoding: 7bit\n\n" .
                 
    $message "\n\n"
    And then after each sent variable, concatenate a <br />.
    Jeremy | jfein.net

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •