建立动态的WML站点(一)


Posted in PHP onOctober 09, 2006

支持WAP功能的移动电话越来越多了。因此,你也应该考虑一下建立自己的WML网站了,本文要介绍的是如何建立PHP/WML页面的站点,使用MySQL数据库,可动态更新站点的内容,具体例子是某个学院的教授授课时间和测验时间表。一点也不复杂哦 :-)  

在开始之前,你应该准备好以下东东:

1.你已经正确安装好PHP和MySQL,并且有使用两者编程的经验。

2.你有SQL的相关知识

3.你运行的是Apache并且可写.haccess文件;或者你运行IIS并且你可以增加映射(或者你可以让系统管理员帮你的忙);

4.你有WML的相关知识;

好了,第一步首先让你的服务器知道使用PHP来处理WML文件,以下介绍如何做到这一点。

设置服务器

如果你使用的是Apache,你必须在你的目录中找到一个.htaccess文件。然后,加入以下行:

AddType application/x-httpd-php3 .wml

如果你找不到该文件,可以加入一个,并且加入以上行,放在你的目录中。

如果你使用的是IIS,你必须做一些改动,与安装PHP时差不多:看一下.php和.php3扩展名的映射,并且为.wml加入同样的映射处理。

通常你会发现PHP被映射到:

 C:\php\php4isapi.dll

或者

 C:\php\php.exe

准备工作

如果你使用的是微软的操作系统,你可以安装NOKIA的开发工具包。它可以检查你的语法,并且让你通过一个类似电话的界面来预览WML页面,该工具包还带有关于WML和WML脚本的参考文档。如果你的电话没有WAP支持,或者你不能使用一个WAP网关,这可以帮上大忙哦。

要下载这个工具,你首先必须以一个WAP开发者的身份在这个网站登记(http://www.forum.nokia.com/main/0,6668,1_1_4,00.html),要记住的是你需要Java2 Runtime Enviroment的支持(Java2运行环境的支持)。你可以使用任何的文本编辑器来写页面。

在写任何PHP/WML代码前,你需要建好MySQL的表格。

该数据库由4个表够成。

1.professors表包括教授的相关数据;

2.subjucts表包括主题的相关数据;

3.exams表包括测验的相关数据;

4.teach表包括教授和他们所授科目的关系信息

在连接MySQL时,可通过以下的代码建立表格

CREATE TABLE professors (
Id int(11) DEFAULT '0' NOT NULL auto_increment,
Surname varchar(24) NOT NULL,
Name varchar(24) NOT NULL,
Email varchar(48) DEFAULT 'Not avaliable',
Cod_course varchar(16) DEFAULT 'Not avaliable',
Consulting_hour varchar(128) DEFAULT 'Not avaliable',  
Consulting_place varchar(128) DEFAULT 'Not avaliable',
PRIMARY KEY (Id)
);  

这些语句建立了professors的表结构。ID为每个教授分配了一个唯一的识别号,而且是表的主键。其它字段,Surname, Name, Email用来表示每个教授的姓、名字和e-mail地址。Cod_course为唯一识别每个科目值。最后Consulting_hour和Consulting_place表示授课时间和授课的地点。  

CREATE TABLE subjects (
Subject varchar(96) NOT NULL,
Cod_Subject varchar(24) NOT NULL,
Cod_number varchar(12) NOT NULL,
PRIMARY KEY (Cod_subject )
);  

Subject是科目的名字,Cod_subject是学院采用的代表每个科目的名字,它的值是唯一的,并且是这个表的主键。Cod_number是一个数字的字段,相同科目的不同课程都属于一个组,这个数字就是组的识别号。

CREATE TABLE exams (
Cod_Subject varchar(24) NOT NULL,
Id int(11) NOT NULL,
Date date DEFAULT '0000-00-00',
Time time DEFAULT '00:00:00',
Room varchar(64),
Test varchar(16) DEFAULT 'Oral'
);  

Cod_subject指学院采用的代表每个科目的名字,是唯一的,ID是教授的唯一识别号,Date, Time和Room用来记录测验举行的日期、时间和地点,Test用来表示测验的类型(包括书面、口头等)

CREATE TABLE teach (
Cod_Subject varchar(16) NOT NULL,
Id int(11) DEFAULT '0' NOT NULL,
PRIMARY KEY (Id, Cod_subject )
);  

在teach表中,ID是教授的识别号,Cod_Subject的含义同上,两者构成了该表的主键。

下一步是在数据库中填入一些数据,这步可以自行完成。

PHP 相关文章推荐
我的论坛源代码(十)
Oct 09 PHP
PHP字符编码问题之GB2312 VS UTF-8解决方法
Jun 23 PHP
探讨:使用XMLSerialize 序列化与反序列化
Jun 08 PHP
PHP session_start()问题解疑(详细介绍)
Jul 05 PHP
xss防御之php利用httponly防xss攻击
Mar 21 PHP
php实现httpRequest的方法
Mar 13 PHP
php文件下载处理方法分析
Apr 22 PHP
Yii2创建多界面主题(Theme)的方法
Oct 08 PHP
Zend Framework动作控制器用法示例
Dec 09 PHP
php图形jpgraph操作实例分析
Feb 22 PHP
thinkPHP5 ACL用户权限模块用法详解
May 10 PHP
PHP const定义常量及global定义全局常量实例解析
May 28 PHP
建立动态的WML站点(三)
Oct 09 #PHP
Session的工作方式
Oct 09 #PHP
用Flash图形化数据(一)
Oct 09 #PHP
PHP中Session的概念
Oct 09 #PHP
虚拟主机中对PHP的特殊设置
Oct 09 #PHP
用Flash图形化数据(二)
Oct 09 #PHP
用php来检测proxy
Oct 09 #PHP
You might like
PHP cron中的批处理
2008/09/16 PHP
CI框架开发新浪微博登录接口源码完整版
2014/05/28 PHP
php实现的zip文件内容比较类
2014/09/24 PHP
基于PHP技术开发客服工单系统
2016/01/06 PHP
Yii2 中实现单点登录的方法
2018/03/09 PHP
Yii框架数据库查询、增加、删除操作示例
2019/10/14 PHP
为JavaScript类型增加方法的实现代码(增加功能)
2011/12/29 Javascript
使用jQuery简单实现模拟浏览器搜索功能
2014/12/21 Javascript
Bootstrap Paginator分页插件使用方法详解
2016/05/30 Javascript
原生js更改css样式的两种方式
2017/03/15 Javascript
详解VueJS 数据驱动和依赖追踪分析
2017/07/26 Javascript
Mobile Web开发基础之四--处理手机设备的横竖屏问题
2017/08/11 Javascript
vue router 配置路由的方法
2018/07/26 Javascript
Angularjs之ngModel中的值验证绑定方法
2018/09/13 Javascript
React组件对子组件children进行加强的方法
2019/06/23 Javascript
layui自定义ajax左侧三级菜单
2019/07/26 Javascript
vue项目中使用particles实现粒子背景效果及遇到的坑(按钮没有点击响应)
2020/02/11 Javascript
[03:21]辉夜杯主赛事 12月25日TOP5
2015/12/26 DOTA
Python二维码生成库qrcode安装和使用示例
2014/12/16 Python
python实现2048小游戏
2015/03/30 Python
在Django的URLconf中使用命名组的方法
2015/07/18 Python
python生成器表达式和列表解析
2016/03/10 Python
Python selenium 三种等待方式详解(必会)
2016/09/15 Python
详解python 发送邮件实例代码
2016/12/22 Python
Mac中Python 3环境下安装scrapy的方法教程
2017/10/26 Python
Python基于递归和非递归算法求两个数最大公约数、最小公倍数示例
2018/05/21 Python
解决Python 命令行执行脚本时,提示导入的包找不到的问题
2019/01/19 Python
python利用百度云接口实现车牌识别的示例
2020/02/21 Python
VSCODE配置Markdown及Markdown基础语法详解
2021/01/19 Python
学校就业推荐信范文
2014/05/19 职场文书
公共机构节能宣传周活动总结
2014/07/09 职场文书
开学典礼致辞
2015/07/29 职场文书
读《方与圆》有感:交友方圆有度
2020/01/14 职场文书
关于Python OS模块常用文件/目录函数详解
2021/07/01 Python
天谕手游15杯全调酒配方和调酒券的获得方式
2022/04/06 其他游戏
【D4DJ】美少女DJ企划 动画将于明年冬季开播第2季
2022/04/11 日漫