当前位置: 首页 > 图文教程 > 网络编程 > PHP > php生成outlook-php日历文件

PHP
在PHP中利用XML技术构造远程服务(上)
PHP的FTP学习(二)[转自奥索]
提问的智慧(2)
一个很方便的 XML 类!!原创的噢
DOMXML函数笔记
提问的智慧
PHP安装问题
PHP概述.
Oracle Faq(Oracle的字符集问题)
Oracle Faq(如何在ORACLE中更改表的列名和顺序 )
Oracle Faq(Oracle TAF的配置)
ftp类(example.php)
php中文件上传的安全问题
多文件上载系统完整版
文件上传类
PHP 5昨天隆重推出--PHP 5/Zend Engine 2.0新特性
第1次亲密接触PHP5(1)
Oracle 常见问题解答
PHP也可以當成Shell Script
用PHP读注册表

PHP 中的 php生成outlook-php日历文件


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 162 ::
收藏到网摘: n/a

以下为引用的内容:

 <?php
//$Filename = "SSaa.vcs";
header('Content-Type: text/x-vCalendar; method=REQUEST;charset="utf-8"');
header('Content-Disposition: inline; filename=ssaa.vcs');
    /** Put mysql connection and query statements here **/
//date_default_timezone_set (Asia/Shanghai);
$col='有一份新的简历需要查看!';
$strtime=strtotime($_GET['dateInput']);//得到开始时间,并化为时间戳,就是化为秒,不明白可以看手册,很详细,前面的文章中也有.
$cc=$strtime-(1*8*60*60);这是是算时区差.因为我的服务器设的是美国时间.
$newstrtime= strftime( "%Y-%m-%d %H:%M:%S",$cc);//is start date time
$endtime=strtotime($_GET['enddateInput']);//得到会议结束时间.
$endcc=$endtime-(1*8*60*60);//一样.
$newendtime= strftime( "%Y-%m-%d %H:%M:%S",$endcc);//is end date time
$oo=array("-"," ",":");
$bb=array("","T","");
$vCalStart = str_replace($oo,$bb,$newstrtime);//这里是把会议开始时间转化为outlook识别的时间格式
$vCalEnd = str_replace($oo,$bb,$newendtime);//一样
$exe = "select * from TABLENAME where id=".$_GET['id'];//下在是查询,得到要输出的内容.
$rss=@mysql_query($exe);
$rows=mysql_fetch_array($rss);
$outcontent="\r\r姓    名: \r\r电话号码: ";
$DescDump = str_replace("\r", "=0D=0A",$outcontent);//把内容换在outlook识别的格式
?>
BEGIN:VCALENDAR
VERSION:1.0
PRODID:SSPCA Web Calendar
TZ:-07
BEGIN:VEVENT
ORGANIZER:MAILTO:<?php echo $emailv."\n";?>
SUMMARY;ENCODING=QUOTED-PRINTABLE:<?php echo $col ."\n";?>
LOCATION;ENCODING=QUOTED-PRINTABLE:<?php echo $locol ."\n";?>
DESCRIPTION;ENCODING=QUOTED-PRINTABLE: <?php echo $DescDump . "\n"; ?>
DTSTART:<?php echo $vCalStart . "Z \n"; ?>
DTEND:<?php echo $vCalEnd . "Z \n"; ?>
END:VEVENT
END:VCALENDAR

上面都注释了.都是中文注释,应该会明白.

最重要的不是PHP代码,而是begin to end 中的内容,你可以把中间的php换成字符串,生成一下.试试就知道

begin to end 中的内容,对应的是outlook中的哪些部分了.(如果你的英文比我强,你不用试就知道了.\呵呵.)