如何使用php结束记录集

如何使用php结束记录集

这是代码:

<?php
  require'connection.php';

  $cons = mysql_query( 'SELECT Subject FROM tblsubject' );

  $total_rows = mysql_num_rows($cons);
  $counter = 0;
  $fields="";
  while($row = mysql_fetch_array($cons)) {
    if(++$counter == $total_rows) {
$fields .= $row['Subject']. ': { <br/> title: \''.$row['Subject'].'\',<br/> width:     \'20% \' <br/>}<br/>';
  }
  else {
$fields =  $row['Subject'].': { <br/> title: \''.$row["Subject"].'\',<br/> width:    \'20% \' <br/>},<br/>';
   }
  }

  echo $fields;
?>


上述代码应产生如下输出:

General: {
  title:'General',
  width: '20%',
},
Math: {
  title:'Math',
  width: '20%',
}


但是,如果查询到达其最后一行,则应在最后一个“}”之后省略“,”。
我做对了,但是当我在while循环之外回显它时,仅回显了数据库的最后两行。

有人可以帮我弄这个吗?请告诉我我要去哪里了。非常感谢你:D
我需要回显表中的所有数据,而不仅仅是最后两个。

最佳答案

甚至不必理会复杂的状态检查器。只需构建一个数组,然后分解它。自动“正确”数量的逗号。

while($row = mysql_fetch_array()) {
    $array[]= $row['data_you_want'];
}
echo implode(',', $array);

关于php - 如何使用php结束记录集?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21568023/

10-11 05:20