Your Last Name is missing.
"); } if (!(eregi("^[a-z0-9\._-]+@+[a-z0-9\._-]+\.+[a-z]{2,4}$",$contactEmail))): exit("Email Address appears to be invalid.
"); endif; $emailDomain = ltrim(strstr($contactEmail, '@'), '@'); if(!(checkdnsrr($emailDomain, ANY))) exit("Email Address Domain can not be found on the internet.
"); /* Ensure that the file was uploaded, renamed and moved to your personal temporary storage area. */ /* We rename the uploaded file from filename.ext (the file is assumed to have an extension) to filename_yyyymmdd_xxx.ext, where xxx equals the first 3 letters of the person's last name. */ /* The whole intent of renaming is to prevent us from receiving the same filenames as attachments. Think about the submit resume case. */ /* Would you rather receive: resume_20030818_jon.doc and resume_20030819_smi.doc or would you prefer: resume.doc and resume1.doc. Or worse, the second resume.doc overwrites the first resume.doc */ /* This method assumes low traffic volume. For higher volumes, you could add minutes or a random number to the date. */ if(!isset($_FILES['contactUploadedFile'])) exit("The expected file wasn't a part of the submitted form.
"); if($_FILES['contactUploadedFile']['error'] != UPLOAD_ERR_OK) exit("The file uploaded failed.
"); $dateForUploadedFile = date("Ymd"); $firstThreeLettersLastName = substr($contactLastName, 0, 3); $charactersToBeAdded = "_" .$dateForUploadedFile ."_" .$firstThreeLettersLastName; $uploadedFileName = str_replace(" ", "_", $_FILES['contactUploadedFile']['name']); /* All spaces in filename replaced with underscores */ $positionOfLastPeriodInUploadFileName = strrpos($uploadedFileName, "."); $newUploadedFileName = substr_replace($uploadedFileName, $charactersToBeAdded, $positionOfLastPeriodInUploadFileName, 0); if(!move_uploaded_file($_FILES['contactUploadedFile']['tmp_name'], $tempDirectory . $newUploadedFileName)) exit("Moving the uploaded file failed.
"); $uploadedFileType = $_FILES['contactUploadedFile']['type']; $newUploadedFilePath = $tempDirectory . $newUploadedFileName; /* Construct list of favorite characters */ $favoriteCharactersList = ""; if ($contactCharacterBugs == "YES") $favoriteCharactersList .= "Bugs Bunny, "; if($contactDaffy == "YES") $favoriteCharactersList .= "Daffy Duck, "; if($contactRoadRunner == "YES") $favoriteCharactersList .= "Road Runner, "; if($contactCoyote == "YES") $favoriteCharactersList .= "Wiley Coyote"; /* Create Date Time in Human Readable Form */ $humanDateTime = date("Y") . strtoupper(date("M")) . date("d H:i"); /* Replace all LineFeeds within Comments with 2 spaces. */ $commentsSingleLine = str_replace("\n", " ", $contactComments); $commentsSingleLine = str_replace("\r", " ", $commentsSingleLine); /* Construct the email message sent to Acme Company */ $mimeBoundary = "Boundary_" .md5(time()); $fullRequestorName = $contactFirstName ." " .$contactLastName; $fp = fopen($newUploadedFilePath,"rb"); $myAttachment = fread($fp,filesize($newUploadedFilePath)); $myAttachment = chunk_split(base64_encode($myAttachment)); fclose($fp); unlink($newUploadedFilePath); /* Delete the file from OUR temporary storage area */ $mailAcmeHeaders = "From: \"" .$fullRequestorName ."\"<" .$contactEmail .">\n"; $mailAcmeHeaders .= "Reply-to: " .$contactEmail ."\n"; $mailAcmeHeaders .= "MIME-Version: 1.0\n"; $mailAcmeHeaders .= "Content-Type: multipart/mixed; boundary=\"" .$mimeBoundary ."\"\n"; $messageToAcme = "This is a multi-part message in MIME format.\n"; $messageToAcme .= "\n"; /* This line MUST be here or it won't work */ $messageToAcme .= "--" .$mimeBoundary. "\n"; $messageToAcme .= "Content-Type: text/plain; charset=\"iso-8859-1\"\n"; $messageToAcme .= "Content-Transfer-Encoding: quoted-printable\n"; $messageToAcme .= "\n"; /* This line MUST be here or it won't work */ $messageToAcme .= "Please send me more information about Acme products"; $messageToAcme .= "\n\n First Name: " . $contactFirstName; $messageToAcme .= "\n Last Name: " . $contactLastName; $messageToAcme .= "\n Email: " . $contactEmail; $messageToAcme .= "\n\n My interests are below:"; $messageToAcme .= "\n Favorite Characters: " . $favoriteCharactersList; $messageToAcme .= "\n Age Group: " . $contactAgeGroup; $messageToAcme .= "\n Add me to mailing list: " . $contactAddMailingList; $messageToAcme .= "\n\n Comments:\n" . $contactComments; $messageToAcme .= "\n"; /* This line MUST be here or it won't work */ $messageToAcme .= "--" .$mimeBoundary. "\n"; $messageToAcme .= "Content-Type: " .$uploadedFileType ."; name=\"" .$newUploadedFileName ."\"\n"; $messageToAcme .= "Content-Transfer-Encoding: base64\n"; $messageToAcme .= "Content-Disposition: attachment\n"; $messageToAcme .= "\n"; /* This line MUST be here or it won't work */ $messageToAcme .= $myAttachment; $messageToAcme .= "--" .$mimeBoundary ."--\n"; /* Construct the email message sent to the visitor (the requestor) */ $messageToRequestor = "Thanks, " .$contactFirstName .", for requesting information about Acme products"; $messageToRequestor .= "\n Your email will totally ignored just like 38% of the F500 ignore emails."; $mailRequestorHeaders = "From: \"Acme Wizard\"<". $senderAcme .">\n"; $mailRequestorHeaders .= "Reply-to: " .$senderAcme; /* Build the line of data to be appended to the data file */ /* WARNING - Do not change the order of the items in the file */ /* This file is imported (using a map) by Marketing */ $messageDataLine = $humanDateTime . "|"; $messageDataLine .= "reqinfo" . "|"; $messageDataLine .= $contactFirstName . "|"; $messageDataLine .= $contactLastName . "|"; $messageDataLine .= $contactEmail . "|"; $messageDataLine .= $favoriteCharactersList . "|"; $messageDataLine .= $contactAgeGroup . "|"; $messageDataLine .= $contactAddMailingList . "|"; $messageDataLine .= $commentsSingleLine . "|" . "\n"; /* Do all the final actions */ /* 1. send am email to Acme that includes the uploaded file as an attachment */ /* 2. send an email to the requestor */ /* 3. write a line to a text (so you have a record of all requests) */ /* 4. go to the Thank You (success or faliure) page */ if(mail($recipientAcme, "Please Send Acme Info", $messageToAcme, $mailAcmeHeaders)) { mail($contactEmail, "Acme Request Received", $messageToRequestor, $mailRequestorHeaders); $handleAcmeFile = fopen($fileToBeWritten, "a"); $fwriteSuccess = fwrite($handleAcmeFile, $messageDataLine); $fcloseSuccess = fclose($handleAcmeFile); header("Location: ../../ThankYous/Thanks_Request_Info_Success.html"); /* Redirect browser */ exit; } else { header("Location: ../../ThankYous/Thanks_Request_Info_Failure.html"); mail("webmaster@marketingtactics.com", "Acme, Request Info Failure", $messageToAcme, $mailAcmeHeaders); exit; } } ?>