ebichuhamster
08-19-2010, 02:20 AM
Thankyou in advance for taking a look at this.
Been at this for a long while.
I don't usually take such challenges when I know I don't have the experience or the knowledge but this task has gotten the best of me.
my code is the following
<?php
if(isset($_POST['submit'])){
$email_from = $_POST['owner_email']; // Who the email is from
$email_subject = "asf"; // The Subject of the email
$email_message = "asdf"; // Message that the email has in it
$email_to = "ebichuhamster+mailtest@gmail.com"; // Who the email is too
$headers = "From: ".$email_from;
$semi_rand = md5(time());
$mime_boundary = "==Multipart_Boundary_x{$semi_rand}x";
$headers .= "\nMIME-Version: 1.0\n" .
"Content-Type: multipart/mixed;\n" .
" boundary=\"{$mime_boundary}\"";
$email_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" .
$email_message . "\n\n";
/********************************************** First File ********************************************/
$fileatt = $_FILES['file']['tmp_name']; // Path to the file
$fileatt_type = "application/octet-stream"; // File Type
$fileatt_name = "thegame.jpg"; // Filename that will be used for the file as the attachment
$file = fopen($fileatt,'r+');
//$data = fread($file,filesize($fileatt));
//fclose($file);
$data = chunk_split(base64_encode($file));
$email_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";
unset($data);
unset($file);
unset($fileatt);
unset($fileatt_type);
unset($fileatt_name);
/********************************************** Second File ********************************************/
/********************************************** End of File Config ********************************************/
// To add more files just copy the file section again, but make sure they are all one after the other! If they are not it will not work!
$ok = @mail($email_to, $email_subject, $email_message, $headers);
if($ok) {
echo "<font face=verdana size=2>The file was successfully sent!</font>";
} else {
die("Sorry but the email could not be sent. Please go back and try again!");
}
}
?>
to collect the data im using a standard input file tag on the HTML.
from what I understand, the file must be temporarily upoloaded to the server. This is done with simple html. To acces the file i use the $_FILES superglobal.
When I upload the whole php file to a server on godaddy, run, it simply says the email failed to send. With no errors.
Btw i found this code on line, so maybe thats's important...
Been at this for a long while.
I don't usually take such challenges when I know I don't have the experience or the knowledge but this task has gotten the best of me.
my code is the following
<?php
if(isset($_POST['submit'])){
$email_from = $_POST['owner_email']; // Who the email is from
$email_subject = "asf"; // The Subject of the email
$email_message = "asdf"; // Message that the email has in it
$email_to = "ebichuhamster+mailtest@gmail.com"; // Who the email is too
$headers = "From: ".$email_from;
$semi_rand = md5(time());
$mime_boundary = "==Multipart_Boundary_x{$semi_rand}x";
$headers .= "\nMIME-Version: 1.0\n" .
"Content-Type: multipart/mixed;\n" .
" boundary=\"{$mime_boundary}\"";
$email_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" .
$email_message . "\n\n";
/********************************************** First File ********************************************/
$fileatt = $_FILES['file']['tmp_name']; // Path to the file
$fileatt_type = "application/octet-stream"; // File Type
$fileatt_name = "thegame.jpg"; // Filename that will be used for the file as the attachment
$file = fopen($fileatt,'r+');
//$data = fread($file,filesize($fileatt));
//fclose($file);
$data = chunk_split(base64_encode($file));
$email_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";
unset($data);
unset($file);
unset($fileatt);
unset($fileatt_type);
unset($fileatt_name);
/********************************************** Second File ********************************************/
/********************************************** End of File Config ********************************************/
// To add more files just copy the file section again, but make sure they are all one after the other! If they are not it will not work!
$ok = @mail($email_to, $email_subject, $email_message, $headers);
if($ok) {
echo "<font face=verdana size=2>The file was successfully sent!</font>";
} else {
die("Sorry but the email could not be sent. Please go back and try again!");
}
}
?>
to collect the data im using a standard input file tag on the HTML.
from what I understand, the file must be temporarily upoloaded to the server. This is done with simple html. To acces the file i use the $_FILES superglobal.
When I upload the whole php file to a server on godaddy, run, it simply says the email failed to send. With no errors.
Btw i found this code on line, so maybe thats's important...