多表的问题,找不出错误,急~

MUMU_428 2007-12-21 09:44:21
本人在做一个多项选择答题的页面,设计了两个表,一个exercise_m用来放题目,选择答案,正确答案 如下所示:
id chapter title A B C D answer
1 fruit which fruit do you like? banana apple pear orange AB
2 fruit which fruit is green? banana apple watermelon pear AC
3 animal which animal do you like? dog cat pig bird BC
4 animal which animal will attack people? dog wolf fish cat AB
5 sky which one is better? blue green brown black AB
6 fruit which one is red? apple pear tomato potato AC
7 animal which animal do you like? dog cat fish bird AD
另一个表exercise_m_temp 用来存放一个用户的答案,1表示他选择了这个答案
ansid ans_A ans_B ans_C ans_D
6 0 0 1 1
2 0 1 1 0
1 1 1 0 0

然后把2张表联起来(exercise_m.id=exercise_m_temp.ansid),用进行进一步操作.把题目,选项,以及他所选择的项都显示出来.但是结果只显示了一个表格
我怀疑不是不是$result,和while语句有问题,但我有找不出错误,想把$row显示出来看看也不行
望有人指点一二,先行谢过. :)

$sql="select * from exercise_m inner join exercise_m_temp on exercise_m.id=exercise_m_temp.ansid";
$result=mysql_query($sql);
$i=1;
while($row=mysql_fetch_row($result));
{
print_r($row);
?>
<table cellSpacing="0" cellPadding="0" width="100%" border="1">
<tr>
<td height="30" colspan="4">
<table cellSpacing="0" cellPadding="0" width="100%" border="0" height="100%">
<tr>
<td width="30" height="29" bgcolor="#6699CC"> <?=$i?></td>
<td width="1003" bgcolor="#6699CC"><?=$row[2]?></td>
</tr>
</table></td>
</tr>
<tr>
<td width="25%" height="29" bgcolor="#CCCCCC"><input type="checkbox" name="checkbox[]" value="A"<?if($row[8]==1)echo "checked";?>><?=$row[3]?></td>
<td width="25%" height="29" bgcolor="#CCCCCC"><input type="checkbox" name="checkbox[]" value="B"<?if($row[9]==1)echo "checked";?>><?=$row[4]?></td>
<td width="25%" height="29" bgcolor="#CCCCCC"><input type="checkbox" name="checkbox[]" value="C"<?if($row[10]==1)echo "checked";?>><?=$row[5]?></td>
<td width="25%" height="29" bgcolor="#CCCCCC"><input type="checkbox" name="checkbox[]" value="D"<?if($row[11]==1)echo "checked";?>><?=$row[6]?></td>
</tr>
<tr><td height="10">
</td></tr>
</table>
<?$i++;}?>
...全文
37 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
qingxia 2007-12-21
  • 打赏
  • 举报
回复
不推荐使用 inner join exercise_m_temp on 这个语句
$sql="select * from exercise_m inner join exercise_m_temp on exercise_m.id=exercise_m_temp.ansid";
改成
$sql="select * from exercise_m,exercise_m_temp where exercise_m.id=exercise_m_temp.ansid";

为了增加程序的可读性
建议把$row[2]这些改成$row[title]

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧