2009-11-02 33 views
9

任何人都知道我可以如何将锚点添加到将强制Outlook日历文件下载的网页?我需要使用outlook打开文件并将日历信息添加到用户的日历中。从网页上的链接添加Outlook日历事件

如何创建MS Outlook日历文件?有没有一种标准/文件化的方式,我可以使用脚本/自动方式创建这些日历文件? (该脚本将在PHP写)

感谢 -

回答

9

创建Outlook .ics文件

更多信息请参见here。这个例子是在.NET中,但它只是写输出,所以很容易翻译成PHP。

14
<?php 
//This is the most important coding. 
header("Content-Type: text/Calendar"); 
header("Content-Disposition: inline; filename=filename.ics"); 
echo "BEGIN:VCALENDAR\n"; 
echo "PRODID:-//Microsoft Corporation//Outlook 12.0 MIMEDIR//EN\n"; 
echo "VERSION:2.0\n"; 
echo "METHOD:PUBLISH\n"; 
echo "X-MS-OLK-FORCEINSPECTOROPEN:TRUE\n"; 
echo "BEGIN:VEVENT\n"; 
echo "CLASS:PUBLIC\n"; 
echo "CREATED:20091109T101015Z\n"; 
echo "DESCRIPTION:How 2 Guru Event\\n\\n\\nEvent Page\\n\\nhttp://www.myhow2guru.com\n"; 
echo "DTEND:20091208T040000Z\n"; 
echo "DTSTAMP:20091109T093305Z\n"; 
echo "DTSTART:20091208T003000Z\n"; 
echo "LAST-MODIFIED:20091109T101015Z\n"; 
echo "LOCATION:Anywhere have internet\n"; 
echo "PRIORITY:5\n"; 
echo "SEQUENCE:0\n"; 
echo "SUMMARY;LANGUAGE=en-us:How2Guru Event\n"; 
echo "TRANSP:OPAQUE\n"; 
echo "UID:040000008200E00074C5B7101A82E008000000008062306C6261CA01000000000000000\n"; 
echo "X-MICROSOFT-CDO-BUSYSTATUS:BUSY\n"; 
echo "X-MICROSOFT-CDO-IMPORTANCE:1\n"; 
echo "X-MICROSOFT-DISALLOW-COUNTER:FALSE\n"; 
echo "X-MS-OLK-ALLOWEXTERNCHECK:TRUE\n"; 
echo "X-MS-OLK-AUTOFILLLOCATION:FALSE\n"; 
echo "X-MS-OLK-CONFTYPE:0\n"; 
//Here is to set the reminder for the event. 
echo "BEGIN:VALARM\n"; 
echo "TRIGGER:-PT1440M\n"; 
echo "ACTION:DISPLAY\n"; 
echo "DESCRIPTION:Reminder\n"; 
echo "END:VALARM\n"; 
echo "END:VEVENT\n"; 
echo "END:VCALENDAR\n"; 
?> 

以防万一有人需要它在PHP中。我正在寻找这个。

+0

这太棒了! – karancan 2013-01-23 17:14:39

相关问题