支持WAP功能的移動電話越來越多了。因此,你也應(yīng)該考慮一下建立自己的WML網(wǎng)站了,本文要介紹的是如何建立PHP/WML頁面的站點,使用MySQL數(shù)據(jù)庫,可動態(tài)更新站點的內(nèi)容,具體例子是某個學(xué)院的教授授課時間和測驗時間表。一點也不復(fù)雜哦 :-) 在開始之前,你應(yīng)該準備好以下東東:
1.你已經(jīng)正確安裝好PHP和MySQL,并且有使用兩者編程的經(jīng)驗。 2.你有SQL的相關(guān)知識 3.你運行的是Apache并且可寫.haccess文件;或者你運行IIS并且你可以增加映射(或者你可以讓系統(tǒng)管理員幫你的忙); 4.你有WML的相關(guān)知識;
好了,第一步首先讓你的服務(wù)器知道使用PHP來處理WML文件,以下介紹如何做到這一點。
設(shè)置服務(wù)器
如果你使用的是Apache,你必須在你的目錄中找到一個.htaccess文件。然后,加入以下行:
AddType application/x-httpd-php3 .wml
如果你找不到該文件,可以加入一個,并且加入以上行,放在你的目錄中。
如果你使用的是IIS,你必須做一些改動,與安裝PHP時差不多:看一下.php和.php3擴展名的映射,并且為.wml加入同樣的映射處理。
通常你會發(fā)現(xiàn)PHP被映射到:
C:\php\php4isapi.dll
或者
C:\php\php.exe
準備工作
如果你使用的是微軟的操作系統(tǒng),你可以安裝NOKIA的開發(fā)工具包。它可以檢查你的語法,并且讓你通過一個類似電話的界面來預(yù)覽WML頁面,該工具包還帶有關(guān)于WML和WML腳本的參考文檔。如果你的電話沒有WAP支持,或者你不能使用一個WAP網(wǎng)關(guān),這可以幫上大忙哦。
要下載這個工具,你首先必須以一個WAP開發(fā)者的身份在這個網(wǎng)站登記(http://www.forum.nokia.com/main/0,6668,1_1_4,00.html),要記住的是你需要Java2 Runtime Enviroment的支持(Java2運行環(huán)境的支持)。你可以使用任何的文本編輯器來寫頁面。
在寫任何PHP/WML代碼前,你需要建好MySQL的表格。
該數(shù)據(jù)庫由4個表夠成。
1.professors表包括教授的相關(guān)數(shù)據(jù); 2.subjucts表包括主題的相關(guān)數(shù)據(jù); 3.exams表包括測驗的相關(guān)數(shù)據(jù); 4.teach表包括教授和他們所授科目的關(guān)系信息
在連接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的表結(jié)構(gòu)。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是學(xué)院采用的代表每個科目的名字,它的值是唯一的,并且是這個表的主鍵。Cod_number是一個數(shù)字的字段,相同科目的不同課程都屬于一個組,這個數(shù)字就是組的識別號。
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指學(xué)院采用的代表每個科目的名字,是唯一的,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的含義同上,兩者構(gòu)成了該表的主鍵。
下一步是在數(shù)據(jù)庫中填入一些數(shù)據(jù),這步可以自行完成。
|