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

PHP
PHP删除MYSQL数据库中所有表的代码
php教程:php设计模式介绍之注册模式
php教程:php设计模式介绍之伪对象模式
PHPnow轻松打造专业PHP服务器环境
php教程:php设计模式介绍之策略模式
php教程:php设计模式介绍之迭代器模式
Windows环境下Apache与Tomcat共存
简单学习php遇到的主要问题
php教程:php设计模式介绍之观测模式
php教程:php设计模式介绍之规范模式
php教程:php设计模式介绍之代理模式
php教程:php设计模式介绍之装饰器模式
Perl操作mysql数据库的方法
php教程:php设计模式介绍之适配器模式
PHP单件模式和命令链模式的基础知识
PHP大师指点:优秀的PHP代码怎么来?
PHP开发的Myers 订单跟踪系统 (MOTS)
PHP控制网页过期时间的程序
Cannot modify header information出错的原因
PHP 5.3的date_create_from_format()函数

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 216 ::
收藏到网摘: 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中的哪些部分了.(如果你的英文比我强,你不用试就知道了.\呵呵.)