您的位置:首页网页设计PHP实例 → 建立动态的WML站点三

建立动态的WML站点三

时间:2004/11/7 3:27:00来源:本站整理作者:蓝点我要评论(0)

接着用户必须在下一个文件(index3.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'?>;");  

>;

<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"

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

<CARD id=card3 title=Name>

<?php  

echo ("<p>Insert ");  

if (${$choice} == "surname") {  

echo ("professor's surname (or part of it).n");  

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

echo ("the subject (or part of it).n");

} else {  

echo ("Maybe there is some problem.n");  

} echo ("<INPUT name='"${$choice}"' type='"text"'>");  



?>  

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

<GO href="query.wml" method="get">

<?php  



echo ("<POSTFIELD value='"$"."$choice".""/' name='"$choice"'>");  



echo ("<POSTFIELD value='"$"."${$choice}".""/' name='"${$choice}"'>");  



?>  

</GO>

</DO>

<P></P>

</CARD>

</WML>







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

<GO href="index3.wml#card3" method="get">

<?php  

echo ("<POSTFIELD value='"$"."$choice".""/' name='"$choice"'>");  

echo ("<POSTFIELD value='"$choice"/' name='"choice"'>");  

?>  







</CARD>

</WML>

写查询代码



以下的文件负责处理查询。它的名字是query.wml,我们将更详细地分析它。



<?php  



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

printf("<?xml version="1.0"?>n");  

printf("n");  

printf("n");  





// 以下各行是用来为查询授课时间构造SQL语句的  





$consulting_tables =  

"(professors left join teach on (professors.Id = teach.Id), subjects)";  

$consulting_columns =  

"professors.Surname, professors.Name, subjects.Subject , ";  

$consulting_columns .=  

"subjects.Cod_number, professors.Consulting_hour, professors.Consulting_place";  

$consulting_query=  

"subjects.Cod_Subject = teach.Cod_subject ";  





// 以下各行是用来为查询测验时间构造SQL语句的  



$exams_tables= "(exams left join professors ON (exams.Id = professors.Id), subjects)";  

$exams_columns= "subjects.Subject , subjects.Cod_number, professors.Surname, ";  

$exams_columns.= "professors.Name, exams.Date, exams.Time, exams.Room, exams.Test";  

$exams_query= "exams.Cod_Subject = subjects.Cod_Subject ";  



// 以下各行是用来为查询测验时间表的sql语句增加查询限制





if ($exams_data) {  



switch($exams_data) {  

case "subject":  

$exams_query.= " and subjects.Subject like '%$subject%'";  

break;  

case "surname":  

$exams_query.= " and professors.Surname like '%$surname%'";  

break;  

}  

}  





// 以下各行是用来为查询授课时间的sql语句增加查询限制



if ($consulting_data) {  

switch($consulting_data) {  

case "subject":  

$consulting_query  

.= " and subjects.Subject like '%$subject%'";  

break;  

case "surname":  

$consulting_query.= " and professors.Surname like '%$surname%'";  

break;  

}  

}  





// 处理与数据库的连接  





function connect($tables, $data, $condition_passed) {  

//  

// put your password and username in next line  

//  



$db = mysql_pconnect("localhost","***","***");  



// put your database name in next line  



mysql_select_db("lanfranchi_co_uk",$db);  



$sql = "SELECT $data FROM $tables WHERE $condition_passed order by professors.Surname";  

$result = mysql_query($sql,$db);  

return $result;  

}  





// 这个函数产生授课时间的wml代码



function consulting_print($consulting_result) {  

global $file;  

printf("n");  

printf(" <P>Receiving hours  



n");  

while ($myrow = mysql_fetch_row($consulting_result)) {  

printf(" <P>$myrow[0], $myrow[1]</P>n");  

printf(" <P>$myrow[2]</P>n");  

printf(" <P>$myrow[3]</P>n");  

printf(" <P>$myrow[4]</P>n");  

printf(" <P>$myrow[5]</P>n");  

}  

printf("</CARD>n");  

}  





// 这个函数产生测验时间表的wml代码



function print_exams($exams_result) {  

global $file;  

printf("<CARD id='"card1"' title='"hours"'>n");  

printf(" <P>Examinations hours  



n");  

while ($myrow = mysql_fetch_row($exams_result)) {  

printf(" <P>$myrow[2], $myrow[3]</P>n");  

printf(" <P>$myrow[0]</P>n");  

printf(" <P>$myrow[1]]</P>n");  

printf(" <P>$myrow[4], $myrow[5]</P>n");  

printf(" <P>$myrow[7]</P>n");  

printf(" <P>$myrow[6]</P>n");  

}  

printf("</CARD>n");  

}  





// 检查你时候选择授课时间或者测验时间,连接数据库并且调用产生wml代码的函数



if ($consulting_data) {  

$connection_result =  

connect($consulting_tables, $consulting_columns, $consulting_query);  

consulting_print($connection_result);  

}  

if ($exams_data) {  

$connection_result =  

connect($exams_tables, $ exams_columns, $ exams_query);  

print_exams($connection_result);  

}  

printf("</WML>n");  



?>  



  好,完成了。你已经建立了首个基于MySQL数据库的PHP/WML页面了,自己继续实践一下吧。 

相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么

文章评论
发表评论

热门文章 没有查询到任何记录。

最新文章 我的php文件怎么打开_php运算符怎么写 php 如何生成静态页面的函数PHP生成图片缩略图PHP session常见问题集锦及解决办法PHP实现同步远程Mysql

人气排行 DEDE在文章列表文章没有缩略图的不显示图片php+mysq修改用户密码我的php文件怎么打开_如何打开php文件的办法FCKeditor的配置和使用方法使用dedecms建站教程PHP+Ajax实现分页技术图片存储与浏览一例Linux+Apache+PHP+MySQLPHP生成图片缩略图