php mysql开发的最简单在线题库(在线做题系统)完整案例
本文实例讲述了视频教程开发的最简单在线题库。分享给大家供大家参考,具体如下:
题库,对于教育机构,学校,在线教育,是很有必要的,网上也有不少的第三方在线题库系统,但是本次案例,会让有需要的人了解题库的开发思路,其实很简单,无非就是一个表单验证,数据库验证。
1、先构建表单数据
2、把表单数据通过得到或者邮政方式提交到表单验证页面,和数据库进行匹配
3、返回结果,答案正确或者错误
构建表单:
index.php
!DOCTYPE html html head meta http-equiv=' Content-Type ' Content=' text/html;charset=utf-8 ' meta http-equiv=' X-UA-Compatible ' content=' IE=edge ' meta name=' viewport ' content=' width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0 '/meta name=' apple-mobile-web-app-ability ' content=' yes ' meta name=' apple-mobile-web-app-status-bar-style ' content=' black ' meta name=' format-detection ' content=' phone=no ' title题库/title style type=' text/CSS ' * { list-style : none;margin :0 pxpadding : 0px } # tiku { width : 300 pxmargin 336010 px汽车;} #tiku ul li{左侧浮动:}/款式/床头柜?php/获取数据库配置require _ once(' config。PHP’);//连接数据库$con=mysql_connect($host,$username,$ password);//设置数据库字符集MySQL _ query(' SET NAMES UTF8 ');//查询数据库mysql_select_db($db,$ con);//查询数据库//获取最新的一条数据$ all=MySQL _ num _ rows(MySQL _ query(‘从$ TB中选择*));//定义分页所需的参数$ long=1;//每页显示的数量@$page=$_GET['page']?$ _ GET[' page ']:1;//当前页$ offset=($ page-1)* $ length;//每页起始行编号$ all page=ceil($ all/$ lenht);//所有的页数-总数页$ prepage=$ page-1;//上一页if($ page==1){ $ prepage=1;//特殊的是当前页是一时上一页就是1 } $ next page=$ page 1if($ page==$ all page){ $ next page=$ all page;//特殊的是最后页是总数页时下一页就是总数页}$sql='按编号从$tb订单中选择* ASC限额{$offset},{ $ length } ';$ rest=MySQL _ query($ SQL);while($ row=MySQL _ fetch _ assoc($ rest)){ $ id=$ row[' id '];$ title=$ row[' title '];$A=$row['答案_ A '];$ B=$ row[' answer _ B '];$ C=$ row[' answer _ C '];$ D=$ row[' answer _ D '];$ true=$ row[' true '];$ score=$ row[' score '];}?div id='tiku '表单操作='check.php '方法='get' p?php echo $ title?/p输入类型='收音机'名称='宣祥'值='?PHP回显$ A;'a:PHP回显$ A;英国铁路公司输入类型='收音机'名称='宣祥'值='?PHP回显$ B;'乙:PHP回显$ B;英国铁路公司输入类型='收音机'名称='宣祥'值='?PHP echo $ C;'c:PHP echo $ C;英国铁路公司输入类型='收音机'名称='宣祥'值='?PHP echo $ D;'d:PHP echo $ D;芭芭拉输入类型='隐藏'名称='id '值='?php echo $ id?按钮提交/button /form/div br/?php echo ' div id=' tiku回声ul ';echo 'lia href='next.php?页面=$prepage '上一题/a/李;echo 'lia href='next.php?' page=$nextpage '下一题/a/李;echo '/ul ';回声“div”;echo ' br/';echo 'p class='fenye_tips '共$allpage .'道题,当前是第$page .题/p ';echo ' br/br/';echo '/div ';/body/html表单接收
check.php
?phpheader(' Content-type : text/html;charset=utf-8 ');//获取数据库配置require _ once(' config。PHP’);//连接数据库$con=mysql_connect($host,$username,$ password);//设置数据库字符集MySQL _ query(' SET NAMES UTF8 ');//查询数据库mysql_select_db($db,$ con);//获取数据$宣香=$_GET['宣香'];$ id=$ _ GET[' id '];如果(空($玄想)){ echo 'scriptalert('请选择一个答案!');历史。go(-1);/script ';}else{ //查询数据库$ result=MySQL _ query(' SELECT * FROM $ TB WHERE id=').$ id);while($ row=MySQL _ fetch _ array($ result)){ $ true=$ row[' true '];$ next _ id=$ id 1;if($宣祥==$true){ echo 'scriptalert('正确!得5分!');location.href='next.php?page=$ next _ id ';/script ';}else{ echo 'scriptalert('错了!扣5分!');历史。go(-1);/script ';} }}?数据库配置
config.php
?php/配置文件- BY TANKING$host='数据库地址;$username='账号;$password='密码;$db='数据库名;$tb='表名;next.php
下一题
!DOCTYPE html html head meta http-equiv=' Content-Type ' Content=' text/html;charset=utf-8 ' meta http-equiv=' X-UA-Compatible ' content=' IE=edge ' meta name=' viewport ' content=' width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0 '/meta name=' apple-mobile-web-app-ability ' content=' yes ' meta name=' apple-mobile-web-app-status-bar-style ' content=' black ' meta name=' format-detection ' content=' phone=no ' title题库/title style type=' text/CSS ' * { list-style : none;margin :0 pxpadding : 0px } # tiku { width : 300 pxmargin 336010 px汽车;} #tiku ul li{左侧浮动:}/款式/床头柜?php/获取数据库配置require _ once(' config。PHP’);//连接数据库$con=mysql_connect($host,$username,$ password);//设置数据库字符集MySQL _ query(' SET NAMES UTF8 ');//查询数据库mysql_select_db($db,$ con);//查询数据库//获取最新的一条数据$ all=MySQL _ num _ rows(MySQL _ query(‘从$ TB中选择*));//定义分页所需的参数$ long=1;//每页显示的数量@$page=$_GET['page']?$ _ GET[' page ']:1;//当前页$ offset=($ page-1)* $ length;//每页起始行编号$ all page=ceil($ all/$ lenht);//所有的页数-总数页$ prepage=$ page-1;//上一页if($ page==1){ $ prepage=1;//特殊的是当前页是一时上一页就是1 } $ next page=$ page 1if($ page==$ all page){ $ next page=$ all page;//特殊的是最后页是总数页时下一页就是总数页}$sql='按编号从$tb订单中选择* ASC限额{$offset},{ $ length } ';$ rest=MySQL _ query($ SQL);while($ row=MySQL _ fetch _ assoc($ rest)){ $ id=$ row[' id '];$ title=$ row[' title '];$A=$row['答案_ A '];$ B=$ row[' answer _ B '];$ C=$ row[' answer _ C '];$ D=$ row[' answer _ D '];$ true=$ row[' true '];$ score=$ row[' score '];}?div id='tiku '表单操作='check.php '方法='get' p?php echo $ title?/p输入类型='收音机'名称='宣祥'值='?PHP回显$ A;'a:PHP回显$ A;英国铁路公司输入类型='收音机'名称='宣祥'值='?PHP回显$ B;'乙:PHP回显$ B;英国铁路公司输入类型='收音机'名称='宣祥'值='?PHP echo $ C;'c:PHP echo $ C;英国铁路公司输入类型='收音机'名称='宣祥'值='?PHP echo $ D;'d:PHP echo $ D;芭芭拉输入类型='隐藏'名称='id '值='?php echo $ id?按钮提交/button /form/div br/?php echo ' div id=' tiku回声ul ';echo 'lia href='next.php?页面=$prepage '上一题/a/李;echo 'lia href='next.php?' page=$nextpage '下一题/a/李;echo '/ul ';回声“div”;echo ' br/';echo 'p class='fenye_tips '共$allpage .'道题,当前是第$page .题/p ';echo ' br/br/';echo '/div ';/body/html数据库结构
标题-题目答案_A -答案a答案_B -答案Banswer_C -答案can power _ D-答案Dtrue -正确答案得分得分
更多关于服务器端编程语言(专业超文本预处理器的缩写)相关内容感兴趣的读者可查看本站专题: 《php+mysql数据库操作入门教程》 、 《php+mysqli数据库程序设计技巧总结》 、 《php面向对象程序设计入门教程》 、 《PHP数组(Array)操作技巧大全》 、 《php字符串(string)用法总结》 及《php常见数据库操作技巧汇总》
希望本文对PHP编程有所帮助。
版权声明:php mysql开发的最简单在线题库(在线做题系统)完整案例是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。