0

我有一个 2 部分代码。代码的第一部分根据情况告诉我表中的记录数,代码的第二部分提取并显示实际记录信息。在下面的代码中,它显示正确的记录数为 3,但是当它尝试提取信息以显示它时,它只显示 1 条记录。

  $depcourselist=mysql_query("select * from organization_dep_courses odc left join course c on odc.courseid=c.id where orgid=$orgid and depid=$departmentid");
echo '<table width="100%" border="0" cellspacing="0" cellpadding="5">
<tr bgcolor="#eaeaea" height="40">
<th align="left">Course Catalog<span>('.$countdepcourses.')</span></th>
</tr>';
while($courselist=mysql_fetch_array($depcourselist) )
$coursename = $courselist['fullname'];
{
if($coursecolor==1)
{
echo "<tr bgcolor='#f1f1f1' width='100%' height='25'>
  <td align='left'>".$coursename."<a href='#'><img src='".$remove."' /></a></td>
  </tr>";
$coursecolor="2";
}
else 
{
echo '<tr bgcolor="#ffffff" height="25">
   <td align="left">'.$coursename.'<a href="#"><img src="'.$remove.'" /></a></td>
   </tr>';
$coursecolor="1";
}  
}
echo '</table>';

任何帮助找出导致记录无法正确显示的原因总是非常感谢。

4

2 回答 2

2

更改此部分:

while($courselist=mysql_fetch_array($depcourselist) )
$coursename = $courselist['fullname'];
{

对此:

while($courselist=mysql_fetch_array($depcourselist) )
{
$coursename = $courselist['fullname'];

注意花括号 {

并使用

mysql_fetch_assoc 

代替

mysql_fetch_array 

(最好这样做,因为它更优化你只需要关联数组,不需要数字数组)

于 2013-03-26T05:01:38.190 回答
0

使用此代码,

  $depcourselist=mysql_query("select * from organization_dep_courses odc left join course c on odc.courseid=c.id where orgid=$orgid and depid=$departmentid");
echo '<table width="100%" border="0" cellspacing="0" cellpadding="5">
<tr bgcolor="#eaeaea" height="40">
<th align="left">Course Catalog<span>('.$countdepcourses.')</span></th>
</tr>';
while($courselist=mysql_fetch_array($depcourselist) )
{ // Changed here
$coursename = $courselist['fullname'];
if($coursecolor==1)
{
echo "<tr bgcolor='#f1f1f1' width='100%' height='25'>
  <td align='left'>".$coursename."<a href='#'><img src='".$remove."' /></a></td>
  </tr>";
$coursecolor="2";
}
else 
{
echo '<tr bgcolor="#ffffff" height="25">
   <td align="left">'.$coursename.'<a href="#"><img src="'.$remove.'" /></a></td>
   </tr>';
$coursecolor="1";
}  
}
echo '</table>';

我改变了循环,

   while($courselist=mysql_fetch_array($depcourselist) )
        { // Changed here
        $coursename = $courselist['fullname'];
.
.
.
于 2013-03-26T05:05:21.417 回答