Jump to content

mktgbill

Members
  • Posts

    7
  • Joined

  • Last visited

    Never

Profile Information

  • Gender
    Not Telling

mktgbill's Achievements

Newbie

Newbie (1/5)

0

Reputation

  1. Of course as I'm typing this I've gotten 4 answers I've figured it out (and pretty stinking easy, can't believe I didn't try this before) <! <?php echo $description; ?> > like stupid easy
  2. Probably a simple solution to this so I'm here to ask the experts.... I'm echoing an html comment which I'd like to appear on page as text.... echo "<!" . $data . ">" Any thoughts on how to accomplish this? thanks, bill
  3. OK, I've changed the text document to a CSV document and the multiple attachments seem to work. CSV is fine for me for this planned use (importing into a database). I'm assuming there is something different about the way the chunk_split / encode needs to be stated though I've not found any resources for how to specify for proper chunk_split / encode for a text only document. -- hope this last part makes sense -- if anyone has a way to deal with TXT files please post here.  Anyway here's my code that's working right now. *************************************************** <?php // this file gets named something like mailer.php and is referenced in your form with something like <form action="mailer.php" method="POST" ....> $_POST data below is from the form $message_to = "me@mydomain.com"; $message_subject = "some subject for the message"; // here's it's also valuable to customize based on form submitted data like request type (billing, tech support, complaint) etc. $removes = array("\n", "\r"); $posted_message = str_replace($removes, "  ", $_POST['message']); // replaces new lines and returns with space $posted_message = str_replace(",", ";", $posted_message); // replace the commas for the csv file - feel free to rename this variable for csv only use /// Generate and save a vcard $vcf_dir = "saved_files/vcf/"; // make sure you've got write privileges here $vcf_filename = $_POST['first_name']." ".$_POST['last_name'].".vcf"; $vcf_content = ("BEGIN:VCARD \nVERSION:2.1 \nN:".$_POST['last_name']."; ".$_POST['first_name']." \nFN:".$_POST['first_name']." ".$_POST['last_name']."\nORG:".$_POST['company']." \nTITLE:".$_POST['Title']." \nNOTE;ENCODING=QUOTED-PRINTABLE:".$posted_message." \nTEL;WORK;VOICE:".$_POST['phone']." \nTEL;CELL;VOICE:".$_POST['cellular']." \nTEL;WORK;FAX:".$_POST['fax']." \nADR;WORK:;".$_POST['city'].";".$_POST['address1'].",".$_POST['address2'].";".$_POST['city'].";".$_POST['state'].";".$_POST['zip'].";".$_POST['country']." \nURL;WORK:".$_POST['website']."\nEMAIL;PREF;INTERNET:".$_POST['email']." \nREV: \nEND:VCARD \n") ; $vcf_go = fopen($vcf_dir."/".$vcf_filename,"w"); fwrite($vcf_go, $vcf_content); fclose($vcf_go); /// Generate and save a delimited text file - remove/replace commas used in message field $csv_dir = "saved_files/csv";  // make sure you've got write privileges here $csv_filename = $_POST['first_name']." ".$_POST['last_name'].".csv"; $csv_content = ($_POST['last_name'].",".$_POST['first_name'].",".$_POST['first_name']." ".$_POST['last_name'].",".$_POST['company'].",".$_POST['Title'].",".$posted_message.",".$_POST['phone'].",".$_POST['cellular'].",".$_POST['fax'].",".$_POST['address1'].",".$_POST['address2'].",".$_POST['city'].",".$_POST['state'].",".$_POST['zip'].",".$_POST['country'].",".$_POST['email'])." \n " ; // add here any other form fields you would like to keep track of that correspond to your database fields - and of course add them to your form $csv_go = fopen($csv_dir."/".$csv_filename,"w"); fwrite($csv_go, $csv_content); fclose($csv_go); // Email Message content $message_content = "Name=              ".$_POST['first_name']." ".$_POST['last_name']." \nTitle=              ".$_POST['Title']." \nCompany=            ".$_POST['company']."  \nWeb Site=          ".$_POST['website']." \nOwner=              ".$_POST['Owner']." \nAddress 1=          ".$_POST['address1']." \nAddress 2=          ".$_POST['address2']." \nCity=              ".$_POST['city']." \nState=              ".$_POST['state']." \nZip=                ".$_POST['zip']." \nCountry=            ".$_POST['country']." \nPhone=              ".$_POST['phone']." \nFax=                ".$_POST['fax']." \nCellular=          ".$_POST['cellular']." \n\nEmail=        ".$_POST['email']."message=".$-POST['message']." "; // message assembly vcf attachment $thisfile = $vcf_dir.$vcf_filename ; $file_content =file_get_contents($thisfile); $encoded = chunk_split(base64_encode($file_content)); // second attachment csv doc $thisfile2 = $csv_dir.$csv_filename ; $file_content2 =file_get_contents($thisfile2); $encoded2 = chunk_split(base64_encode($file_content2)); // headers $headers = 'MIME-Version: 1.0' . "\n"; $headers .= "Content-Type: multipart/mixed;   boundary=\"----MessageBoundary\"\n"; // additional headers $headers .= "From:".$_POST['email']; $email_message = ' This is a multi-part message in MIME format. ------MessageBoundary Content-Type: text/plain;       charset="us-ascii" Content-Transfer-Encoding: 7bit '.$message_content.' ------MessageBoundary Content-Type: application/octet-stream;  name="'; $email_message .= "$csv_filename"; $email_message .= '" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="'; $email_message .= "$csv_filename"; $email_message .= '" '; $email_message .= "$encoded2"; $email_message .= ' ------MessageBoundary Content-Type: application/octet-stream;  name="'; $email_message .= "$vcf_filename"; $email_message .= '" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="'; $email_message .= "$vcf_filename"; $email_message .= '" '; $email_message .="$encoded"; $email_message .= ' ------MessageBoundary-- '; // do the mailing mail($message_to, $message_subject, $email_message, $headers); header ("location: thanks.php"); unlink ($thisfile); // to keep the file on the server simply comment out this line unlink ($thisfile2); // to keep the file on the server simply comment out this line ?> ************************************************************* I customize the message subject depending on the input for the form including a "scoring system" to determine which emails are best for me to respond to right away. You could even redirect to a different e-mail address depending on a form submitted value (billing, tech support, etc.).
  4. Actually... neither attachment is being e-mailed properly. Both files, though attached to the e-mail, are empty..... Let me play with this a while longer...
  5. Michael: Again, thanks for your input. Here's what I have and it's working to a certain extent.... ************************************************************************** <?php // Email Message content $message_content = "MESSAGE CONTENT GOES HERE"; $message_to = "ME@MYEMAIL.com"; $message_subject = "MESSAGE SUBJECT"; // message assembly vcf attachment $thisfile = $vcf_dir.$vcf_filename ; $file_content =file_get_contents($thisfile); $encoded = chunk_split(base64_encode($file_content)); // second attachment txt doc $thisfile2 = $txt_dir.$txt_filename ; $file_content2 =file_get_contents($thisfile2); $encoded2 = chunk_split(base64_encode($file_content2)); // headers $headers = 'MIME-Version: 1.0' . "\n"; $headers .= "Content-Type: multipart/mixed;   boundary=\"----MessageBoundary\"\n"; // additional headers $headers .= "From:".$_POST['email']; $email_message = ' This is a multi-part message in MIME format. ------MessageBoundary Content-Type: text/plain;       charset="us-ascii" Content-Transfer-Encoding: 7bit '.$message_content.' ------MessageBoundary Content-Type: application/octet-stream;  name="'; $email_message .= "$vcf_filename"; $email_message .= '" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="'; $email_message .= "$vcf_filename"; $email_message .= '" '; $email_message .="$encoded"; $email_message .= ' ------MessageBoundary Content-Type: application/octet-stream;  name="'; $email_message .= "$txt_filename"; $email_message .= '" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="'; $email_message .= "$txt_filename"; $email_message .= '" '; $email_message .= "$encoded2"; $email_message .= ' ------MessageBoundary-- '; // do the mailing mail($message_to, $message_subject, $email_message, $headers); header ("location: RECEIVED.php"); unlink ($thisfile); // unlink ($thisfile2); ?> ******************************************************************* I've commented out the second unlink statement (just above) for testing purposes. The txt document gets generated properly (as I can read the content) but as attachment it comes through as an empty document. I have a feeling I'm messing up in the encode/chunk_split portion of the code.  Any suggestions?
  6. Michael, thanks for the help. The form has been working great and it's nice to not have to input the data into Outlook. Now I'm wondering how I'd go about adding a second attachment with delimited data to input into my contact management package. Generating a delimited text document is the easy part. Any thoughts on how to accomplish a second attachment? 
  7. I'm using dreamweaver with an extension (Kaos Mailer) to e-mail a submitted form's content to our e-mail address. What I'd like to try to do is use the submitted data to generate a vCard (vcf) file for importing into Outlook and our contact manager package.  Though I don't consider myself an expert on this I'm pretty sure I can work up the PHP code generate the vCard file but would be stuck on how to attach it to the e-mail we receive. Has anyone here done this (or something similar) before?
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.