Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
File Manager
/
Opamps
/
Debug
:
outlook01.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?PHP //$firstname is the first name of target //$lastname is the last name of target //$email is the targets email address //$meeting_date is straight from a DATETIME mysql field and assumes UTC. //$meeting_name is the name of your meeting //$meeting_duretion is the duration of your meeting in seconds (3600 = 1 hour) function sendIcalEmail($firstname,$lastname,$email,$meeting_date,$meeting_name,$meeting_duration) { $from_name = "My Name"; $from_address = "myname@mydomain.com"; $subject = "Meeting Booking"; //Doubles as email subject and meeting subject in calendar $meeting_description = "Here is a brief description of my meeting\n\n"; $meeting_location = "My Office"; //Where will your meeting take place //Convert MYSQL datetime and construct iCal start, end and issue dates $meetingstamp = STRTOTIME($meeting_date . " UTC"); $dtstart= GMDATE("Ymd\THis\Z",$meetingstamp); $dtend= GMDATE("Ymd\THis\Z",$meetingstamp+$meeting_duration); $todaystamp = GMDATE("Ymd\THis\Z"); //Create unique identifier $cal_uid = DATE('Ymd').'T'.DATE('His')."-".RAND()."@mydomain.com"; //Create Mime Boundry $mime_boundary = "----Meeting Booking----".MD5(TIME()); //Create Email Headers $headers = "From: ".$from_name." <".$from_address.">\n"; $headers .= "Reply-To: ".$from_name." <".$from_address.">\n"; $headers .= "MIME-Version: 1.0\n"; $headers .= "Content-Type: multipart/alternative; boundary=\"$mime_boundary\"\n"; $headers .= "Content-class: urn:content-classes:calendarmessage\n"; //Create Email Body (HTML) $message .= "--$mime_boundary\n"; $message .= "Content-Type: text/html; charset=UTF-8\n"; $message .= "Content-Transfer-Encoding: 8bit\n\n"; $message .= "<html>\n"; $message .= "<body>\n"; $message .= '<p>Dear '.$firstname.' '.$lastname.',</p>'; $message .= '<p>Here is my HTML Email / Used for Meeting Description</p>'; $message .= "</body>\n"; $message .= "</html>\n"; $message .= "--$mime_boundary\n"; //Create ICAL Content (Google rfc 2445 for details and examples of usage) $ical = 'BEGIN:VCALENDAR PRODID:-//Microsoft Corporation//Outlook 11.0 MIMEDIR//EN VERSION:2.0 METHOD:PUBLISH BEGIN:VEVENT ORGANIZER:MAILTO:'.$from_address.' DTSTART:'.$dtstart.' DTEND:'.$dtend.' LOCATION:'.$meeting_location.' TRANSP:OPAQUE SEQUENCE:0 UID:'.$cal_uid.' DTSTAMP:'.$todaystamp.' DESCRIPTION:'.$meeting_description.' SUMMARY:'.$subject.' PRIORITY:5 CLASS:PUBLIC END:VEVENT END:VCALENDAR'; $message .= 'Content-Type: text/calendar;name="meeting.ics";method=REQUEST\n'; $message .= "Content-Transfer-Encoding: 8bit\n\n"; $message .= $ical; //SEND MAIL $mail_sent = @MAIL( $email, $subject, $message, $headers ); IF($mail_sent) { RETURN TRUE; } ELSE { RETURN FALSE; } } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>iCal Test</title> </head> <body> <?PHP //$firstname is the first name of target //$lastname is the last name of target //$email is the targets email address //$meeting_date is straight from a DATETIME mysql field and assumes UTC. //$meeting_name is the name of your meeting //$meeting_duration is the duration of your meeting in seconds (3600 = 1 hour) $firstname = "John"; $lastname = "Smith"; $email = "patrice.delpy@onsemi.com"; $meeting_date = "2015-07-01 20:40:00"; //mysql format $meeting_name = "Hello"; $meeting_duration = 3600; //returns true or false $result = sendIcalEmail($firstname,$lastname,$email,$meeting_date,$meeting_name,$meeting_duration); //display result IF($result) { ECHO "Email sent successfully."; } ELSE { ECHO "A problem occurred sending email"; } ?> </body> </html>