建立动态的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 相关文章推荐
PHP学习之PHP运算符
Oct 09 PHP
网页游戏开发入门教程二(游戏模式+系统)
Nov 02 PHP
PHP+JS+rsa数据加密传输实现代码
Mar 23 PHP
使用php实现快钱支付功能(涉及到接口)
Jul 01 PHP
让CodeIgniter的ellipsize()支持中文截断的方法
Jun 12 PHP
PHP中的gzcompress、gzdeflate、gzencode函数详解
Jul 29 PHP
怎样搭建PHP开发环境
Jul 28 PHP
php+ajax实现带进度条的上传图片功能【附demo源码下载】
Sep 14 PHP
PHPCMS V9 添加二级导航的思路详解
Oct 20 PHP
thinkPHP5.0框架环境变量配置方法
Mar 17 PHP
Laravel框架自定义验证过程实例分析
Feb 01 PHP
thinkphp框架表单数组实现图片批量上传功能示例
Apr 04 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 过滤危险html代码
2009/06/29 PHP
ajax+php打造进度条代码[readyState各状态说明]
2010/04/12 PHP
PHP中使用CURL模拟登录并获取数据实例
2014/07/01 PHP
PHPMailer ThinkPHP实现自动发送邮件功能
2018/06/10 PHP
ThinkPHP 5.x远程命令执行漏洞复现
2019/09/23 PHP
php 实现银联商务H5支付的示例代码
2019/10/12 PHP
Jquery Ajax 学习实例2 向页面发出请求 返回JSon格式数据
2010/03/15 Javascript
购物车选中得到价格实现示例
2014/01/26 Javascript
node.js读取文件到字符串的方法
2015/06/29 Javascript
JQuery+Ajax实现数据查询、排序和分页功能
2015/09/27 Javascript
学习Node.js模块机制
2016/10/17 Javascript
vue.js中$set与数组更新方法
2018/03/08 Javascript
详解滑动穿透(锁body)终极探索
2019/04/16 Javascript
js实现div色块碰撞
2020/01/16 Javascript
详解JavaScript中的链式调用
2020/11/27 Javascript
python使用win32com在百度空间插入html元素示例
2014/02/20 Python
wxpython 最小化到托盘与欢迎图片的实现方法
2014/06/09 Python
用实例解释Python中的继承和多态的概念
2015/04/27 Python
结合Python的SimpleHTTPServer源码来解析socket通信
2016/06/27 Python
Python中import机制详解
2017/11/14 Python
Django 多语言教程的实现(i18n)
2018/07/07 Python
Python实现打砖块小游戏代码实例
2019/05/18 Python
python文字转语音的实例代码分析
2019/11/12 Python
python实现Pyecharts实现动态地图(Map、Geo)
2020/03/25 Python
解决python中显示图片的plt.imshow plt.show()内存泄漏问题
2020/04/24 Python
使用python-Jenkins批量创建及修改jobs操作
2020/05/12 Python
让Django的BooleanField支持字符串形式的输入方式
2020/05/20 Python
python GUI模拟实现计算器
2020/06/22 Python
Canvas实现放大镜效果完整案例分析(附代码)
2020/11/26 HTML / CSS
上班离岗检讨书
2014/01/27 职场文书
生产文员岗位职责
2014/04/05 职场文书
文明班级申报材料
2014/12/24 职场文书
整改通知书
2015/04/20 职场文书
开学典礼观后感
2015/06/15 职场文书
工作简报范文
2015/07/21 职场文书
Centos系统通过Docker安装并搭建MongoDB数据库
2022/04/12 MongoDB