Home  >  Article  >  php教程  >  建立动态的WML站点(一)

建立动态的WML站点(一)

WBOY
WBOYOriginal
2016-06-13 12:40:42852browse

支持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的含义同上,两者构成了该表的主键。

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

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn