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

PHP
PHP学习中遇到的问题,请高手帮忙 - PHPchina
如何获取IIS虚拟目录的绝对路径 - PHPchina
常常说的SQL注入是怎么做的? - PHPchina
怎么对网站的Alexa排名的数据的采集? - PHPchina
遇到一个session丢失的问题。打开含有mediaplayer播放器的页面,会导致session丢失 -
做小偷遇到一个基础问题.请指教 - PHPchina
php5如何连接ACCESS 2003 - PHPchina
帮找下错误 - PHPchina
split 函数的一个问题 - PHPchina
一个全站系统的数据库设计问题,望大家都来帮帮忙 - PHPchina
分享我的PHP配置心得包含MYSQL5乱码解决 - PHPchina
深入浅出分析Linux设备驱动程序中断 (1)(3)
深入浅出分析Linux设备驱动程序中断 (1)(2)
深入浅出分析Linux设备驱动程序中断 (1)
OpenSSH可实现一次性自动管理多台服务器
如何利用程序循环来控制Perl脚本流程
PHP5应用笔记之Cookie实用攻略(上)
从失败中涉取经验 网站设计的十种常见错误
连载1:利用PHP创建由Oracle 驱动的SOAP服务
连载2:利用PHP创建由Oracle 驱动的SOAP服务

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


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