出自Yahoo_cn_wiki
您在这:首页 > NCP文档中心 > 源码下载 > 天气预报
天气预报
功能介绍
- 天气预报的功能:
- 站长定制城市天气预报
- 根据用户IP自动判断城市显示天气预报
- 显示农历与公历日期、星期
- 显示中西方节日,国家法定节假日红字标注
实现过程
- 前端展示
- NCP平台在调用插件的URL过程中,会传递给天气预报一个模块的id信息,首先获取这个模块id
$y_module_id = _GET['y_module_id'];
- 随同y_module_id还有其他参数,可以打印_GET察看更详细的参数信息
- 根据模块id查询数据库,获得当前模块id的记录,获取当前模块选择的城市,获取相应的气象数据,整理成HTML页面并显示。
- NCP平台在调用插件的URL过程中,会传递给天气预报一个模块的id信息,首先获取这个模块id
- 配置实现
- 只有登陆管理员用户,并且添加了天气预报插件才能调用天气预报的配置实现功能
- 在配置实现功能中,目前可供选择的类型有两种,即根据访问者IP地址判断所在城市和由管理员指定固定的城市。
- 选择城市提交:提交时,需要获取模块ID等等信息,详细参考源代码,添加到weather_city_info表即可。
效果演示
- 可以访问 http://killer.zhan.cn.yahoo.com/page/3100 查看天气预报显示效果(如果显示天气预报图标后面显示的是**节日,鼠标移上看一下效果吧~~)
- 把天气预报添加到你的页面
- 1、 进入页面管理,点击添加新模块,选择本地服务类,你就会看到天气预报插件
- 2、 点击添加新模块,弹出窗口,添加插件名称,点击确定,然后弹出天气预报城市配置页面
- 3、 选择你喜欢的一种模式,点击最下面的提交(一定要点击确定,不然无法使用插件).你的站点就有天气预报插件了.
源码配置使用方法
数据库配置
- 1、创建一个MySQL数据库,在这个数据库中创建天气城市信息表weather_city_info,创建表的脚本如下
CREATE DATABASES `weather_app`; USE `weather_app`; CREATE TABLE `weather_city_info` ( `module_id` CHAR(64) NOT NULL DEFAULT '', `city_name` CHAR(50) NOT NULL DEFAULT '', PRIMARY KEY (`module_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
- 2、在数据上创建一个前端服务器可以访问本数据库的用户
前端配置
- 将inc文件夹移动到web根目录以外的安全目录
- 修改./weatherapp/weatherapp.php文件
/* 设置inc文件夹的路径,请放在htdocs(web根目录)目录以外的地方, 如无法转移到web根目录以外,请将所有的文件扩展名修改为.php */ $inc_dir = "."; /* 临时文件的目录,请确保你的php程序有读写权限 */ $tmp_dir = "/tmp";
- 修改./weatherapp/inc/config.inc文件
// 数据库设置HOST define("DATABASE_HOST","localhost"); // 对应你的数据库 define("DBNAME","weather_app"); // 访问数据库的帐号和密码 define("DBUSER","weatherapp"); define("DBPASS","weatherapp"); //设置天气预报详细信息地址 define("WEATHER_URL","http://weather.cn.yahoo.com"); //设置申请应用时的secret_key define("secret_key","weatherapp34134asdfsfaqwer342435");
- 添加天气预报应用
- 访问应用管理中心添加新应用
- 添加新应用时填写的回调URL是http://[你的前端HOST]/[对应路径]/index.php
- 应用路径:weatherapp
- 选择框架嵌入IFrame
- 选择有配置视图
- 应用图标设置为http://[你的前端HOST]/[对应路径]/icon/weather.jpg
- 提交--这样就可以测试应用了.在配置过程中,有任何问题可以与我联系swai2698@yahoo.com.cn


