uaintgotthisid Posted November 12, 2008 Share Posted November 12, 2008 Hi all.I've had problems with PHP e-mail but have now found out my host does not support sendmail() and I've been told to use SMTP instead. Herein lies my issue.I didn't find the W3schools tutorial massively helpful, although it could be due to my own ignorance.Here are my examples following the normal tutorial. I believe this may be a sendmail() version but I can't really tell at this stage. I've come at this from so many angles I've lost myself completely.This is a pure text e-mailThis one incorporates a HTML formNeither work.this is my SMTP version I tried to make SMTP Version I found somewherePlease if anyone can put me out of my misery, I'd very much appreciate it.My conclusion thus far is that (a ) I do not have access to php.ini (b ) I need access to this or else to create a version of this.I'm weary of making things worse, so I'll wait for advice first. Cheers. Link to comment Share on other sites More sharing options...
jlhaslip Posted November 13, 2008 Share Posted November 13, 2008 All that we see on that last link is the html form.Can you post the php code inside "code" bbcode tags, please. Link to comment Share on other sites More sharing options...
uaintgotthisid Posted November 13, 2008 Author Share Posted November 13, 2008 this is the code in mail.php which is refered to by the form: <html><head><title> Sample E-mail Page </title></head><body><?php// Read POST request params into global vars$to = $_POST['to'];$from = $_POST['from'];$subject = $_POST['subject'];$message = $_POST['message'];// 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($to, $subject, $message, $headers);if ($ok) { echo "<p>Your Mail has been sent! We will be in contact soon.</p>";} else { echo "<p>Mail could not be sent. Sorry! Feel free to contact us directly <a href='mailto:info@uglyfashionmedia.com'> info@uglyfashionmedia.com</a></p>";}?></body></html> Link to comment Share on other sites More sharing options...
Synook Posted November 13, 2008 Share Posted November 13, 2008 http://email.about.com/od/emailprogramming...qt/et073006.htm Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.