建立动态的WML站点(二)

  写PHP/WML代码

  现在我们写首个PHP/WML页面,名字为index.wml

  <?php

  Header("Content-type: text/vnd.wap.wml");

  Header("Cache-Control: no-cache, must-revalidate");

  Header("Pragma: no-cache");

  echo ("<?xml version='1.0'?>");

  ?>

  "http://www.wapforum.org/DTD/wml_1.1.xml" >

  <WML>

  <CARD id=card1 title=UNITO/Database><P>

  You can search for professors' consulting hours or for examinations timetables.

  <SELECT name=choice title=Research value="1"> <OPTION selected value=exams_data>Examinations timetables</OPTION> <OPTION value=consulting_data>Consulting hours</OPTION></SELECT>

  <DO type="text" label="Go">

  <GO href="index2.wml#card2" method="get">

  <POSTFIELD value="$(choice)" name="choice">

  </GO>

  </DO>

  </P>

  </CARD>

  </WML>

  第一行告诉浏览器该文件的MIME类型,如果没有头文件的话,浏览器是不懂得接收的是属于什么类型的内容,而且有了这一行的话,文件的扩展名就不重要了。对于你想写一个多样式的页面,这个功能是十分有用的,你可以通过一个脚本来检测设备或者它的性能,然后根据浏览器的类型返回WML或者HTML。

  检查PHP是否已经装有短标签支持。如果是的话,你可以做一个类似<?xml version='1.0'?>的声明,并且将它嵌套到PHP代码中以免混淆。

  该页面的余下代码只是让你搜索测验的时间或者咨询的时间。选择的项目会记录在$choice变量中。

  下一页称为index2.wml,让你选择是通过科目还是姓来查询数据库。

  Header("Content-type: text/vnd.wap.wml");

  Header("Cache-Control: no-cache, must-revalidate");

  Header("Pragma: no-cache");

  echo ("<?xml version='1.0'?>");

  ?>

  "http://www.wapforum.org/DTD/wml_1.1.xml" >

  <WML>

  <CARD id=card2 title="Kind of research">

  <P><BR><?php

  echo ("You are checking ");

  if ($choice == "exams_data") {

  echo (" examinations timetables.<BR>n");

  } else if ($choice == "consulting_data") {

  echo (" consulting hours.<BR>n"); <BR>} else { <BR>echo ("I don't know what and there is some problem.<BR>n");

  }

  ?>

  <P><BR>You can search by surname (either exact or partial) or by subject (either exact or partial).<BR><BR>Select the kind of research. <BR><P>

  <SELECT name="<?php echo (" $choice?);<br> ?>" value="surname" title="research"> <OPTION selected value=surname>professor's name</OPTION> <OPTION value=subject>subject</OPTION>