A. 用php+mysql做一个题库系统,随机抽取五百题左右生成考试卷,最有效率的做法是什么
php里面有array_rand函数,你要是一道题一道题的读出来,或许也可以尝试一下。但是要是一下子都读出来,即便这个函数效率可以的话,随机取出id数组,查询 “where id in 数组” 就不如直接在数据库里随机抽取记录。
如何从数据表里随机抽取记录呢,想想办法还是有一些,就是不知道效率如何。有的是说用max_id*rand(),那一条一条抽取还是可以的。怎么批量随机抽取呢,可以试着排序,然后选取前500题,排序可以想办法用一些函数(选取一些执行效率高的),如何md5,sha1,这种。如果为了使结果更具有随机性,可以把字段值再与一个随机数运算一下。仅供参考。
========================
我想你还是用array_rand随机抽500个id存到数组,然后遍历数组吧。这样也避免了题目重复。在数据库里如果一次一条记录随机抽取,要考虑碰巧重复的问题。批量选取你就按上面我说的试试。
B. 求助下几道PHP选择题
6. D
7.$n=3 $n =4 $n=5
8.D
9.B
10.A
C. php程序设计选择题
a.
a.
a.
d. Select * from employees where 姓名 like ‘%文%’
d.
d.
b.
cd.
b.
D. PHP练习题
1、PHP语言标记是(B )。
A、<……>
B、<?php……?>
C、?…………?
D、/*………*/
2、PHP代码要想以“<?”为开头,以“?>”为结束,需要启用配置文件中的(A )选项。
A、short_open_tag
B、asp_tags
C、allow_call_time_pass_reference
D、safe_mode_gid
4、PHP语句以什么符号结束( C )
A、 .
B、 :
C、 ;
D、无需任何符号,换行就行
5、PHP中那些字符被认为是间隔字符(空白符)( A )。
A、空格
B、下划线字符
C、制表符
D、回车符
E. PHP 选择题
$a和$b虽然都是浮点数
不能按常规的符号来比较
php手册没看过吧
php官方手册的原话
关于浮点数精度的警告
显然简单的十进制分数如同 0.1 或 0.7
不能在不丢失一点点精度的情况下转换为内部二进制的格式。这就会造成混乱的结果:例如,floor((0.1+0.7)*10) 通常会返回
7 而不是预期中的 8,因为该结果内部的表示其实是类似 7.9。
这和一个事实有关,那就是不可能精确的用有限位数表达某些十进制分数。例如,十进制的 1/3 变成了 0.3。
所以永远不要相信浮点数结果精确到了最后一位,也永远不要比较两个浮点数是否相等。如果确实需要更高的精度,应该使用任意精度数学函数或者 gmp 函数。
我怎样给你解释吧,浮点数会要根据系统平台有差异。会出现不是你想要的结果
要用专门的精度函数来比较浮点数
var_mp(bccomp($a,$b)); bccomp就是比较两个浮点数,相等的时候返回0,这就正常了
F. PHP 选择题
如果or die("Could not query: . mysql_error()); 这里的" ' " 不少的话就是
B、打印第三个雇员的名字
mysql_result($result,2); //2为打印的行索引,从0开始
另经测试以上代码,确实打印第3行的雇员名字
其实这道题出的还是有漏洞的。
如果这行SELECT name FROM work.employee不加order by id的话表中的主键也不是按顺序插入的显示的就不一定是第3行了。。
G. PHP选择题
在函数体内的时候, $A的作用域仅仅是在当前函数体内, 它无法访问函数体外$A的值.
但是当你设置了global以后, 变量会由局部变量升级为全局变量, 这个时候它会受外部变量的影响.
所以, 你在函数体内的赋值会失效, 转而会得到函数体外的$A的值!
H. php选择题
1、A
2、D
3、A
4、C
5、C
很简单
自己网上查查就行
I. 用php怎么实现选择题答题系统,主要是把所有题目列出来后该如何实现用户选择提交,用分页显示的,每页
if(empty($_POST['submit'])){
$i=0;
}else{
$i=$_POST[i];
}
if($_POST['submit']!=""){
$arrayid[$i]=$arrayid[$i+1];
$array[$i]=$array[$i+1];
$arrayA[$i]=$arrayA[$i+1];
$arrayB[$i]=$arrayB[$i+1];
$arrayC[$i]=$arrayC[$i+1];
$arrayD[$i]=$arrayD[$i+1];
}
echo "".$arrayid[$i].".";
echo "".$array[$i]."";
J. 用PHP做多项选择题,数据库怎么设计, 代码怎么写....
常规思路
表1(问题)
question
id(主键) text(问题内容) rightAnswer(正确答案)
表2(备选答案)
answer
id(主键) qid(对应的问题id) text(备选答案)
$sql="SELECT * FROM question";
$r = mysql_query($sql);
while($row = mysql_fetch_rows($r)){
//输出题干
echo $row[1];
$subsql="SELECT * FROM answer WHERE qid = '".$row[0]."'";
$subr = mysql_query($subsql);
while($subrow = mysql_fetch_rows($subr)){
//输出备选答案
echo subrow[2];
}
}
我相信这是比较主流的设计思路,希望的帮到你
至于比对答案的时候,有一种简单做法,你传回来的答案不是数组吗,将数据库正确答案以字符串形式输出,打散成数组,求2个数组的交集,根据交集数量判断正确个数
不懂欢迎追问