form posting messages at times and failing at other times

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • davibugi
    New Member
    • Sep 2007
    • 8

    form posting messages at times and failing at other times

    I have some code for sending email from a form and it has some attachment

    The problem is at times it sends and at other times it fails to send what could the issues be and how do i fix it here is a sample of the code

    I will appreciate any help thanks in advance here is the code.

    [code=php]
    <?php

    // Receiving variables
    $subject = "Barter Center";
    $to = "mail@example.c om";
    $pfw_ip= $_SERVER['REMOTE_ADDR'];
    $first_name = addslashes($_PO ST['first_name']);
    $last_name = addslashes($_PO ST['last_name']);
    $country = addslashes($_PO ST['country']);
    $address = addslashes($_PO ST['address']);
    $from = addslashes($_PO ST['from']);
    $product = addslashes($_PO ST['product']);
    $make = addslashes($_PO ST['make']);
    $model = addslashes($_PO ST['model']);
    $year_made = addslashes($_PO ST['year_made']);
    $value = addslashes($_PO ST['value']);
    $description = addslashes($_PO ST['description']);



    // 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_fi le($fileatt)) {
    // Read the file to be attached ('rb' = read binary)
    $file = fopen($fileatt, 'rb');
    $data = fread($file,fil esize($fileatt) );
    fclose($file);

    // Generate a boundary string
    $semi_rand = md5(time());
    $mime_boundary = "==Multipart_Bo undary_x{$semi_ rand}x";

    // Add the headers for a file attachment
    $headers .= "\nMIME-Version: 1.0\n" .
    "Content-Type: multipart/mixed;\n" .
    " boundary=\"{$mi me_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" .
    "Visitor's IP: $pfw_ip\n"
    . "first_name : $first_name\n"
    . "last_name: $last_name\n"
    . "country: $country\n"
    . "address: $address\n"
    . "from: $from\n"
    . "product: $product\n"
    . "make: $make\n"
    . "model: $model\n"
    . "year_made: $year_made\n"
    . "value: $value\n"
    . "descriptio n: $description\n\ n";

    // Base64 encode the file data
    $data = chunk_split(bas e64_encode($dat a));

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

    // Send the message
    $ok = @mail($to, $subject, $message, $headers);
    if ($ok) {
    echo "<p>Your product will be uploaded to the site shotly . </p>";
    } else {
    echo "<p>Mail could not be sent. Sorry!</p>";
    }


    ?>
    [/code]
    Last edited by Atli; Jun 16 '08, 07:49 PM. Reason: Added [code] tags and removed the real email address.
  • Atli
    Recognized Expert Expert
    • Nov 2006
    • 5062

    #2
    Are you getting any errors?
    Try removing the @ from the mail function to see if that generates any helpful messages.

    Comment

    Working...