码迷,mamicode.com
首页 > 其他好文 > 详细

通达OA 一个数据循环输出程序异常调试的案例

时间:2014-12-27 20:32:02      阅读:223      评论:0      收藏:0      [点我收藏+]

标签:通达oa   二次开发   调试   php   

今天,通达OA二次开发交流群里有一个朋友问这样一个问题,通过代码连接数据库后,可以正常显示数据库中的数据,但是循环输出的代码只能输出单行数据,数据表里实际有多条数据,是什么原因导致循环失败的呢?

技术分享

<?
include_once("inc/conn.php"); // 如需要连接数据库则包含
include_once("inc/utility_all.php"); // 如需要使用公用函数则包含
include_once("inc/check_type.php"); // 如需要使用类型检验函数则包含
//如已包含auth.php,则无须包含conn.php
?>
<html>
<head>
<title>重要事项交办单</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body style="background-image:url(%E5%B7%A5%E4%BD%9C%E4%BA%A4%E5%8A%9E%E8%B7%9F%E8%B8%AA%E7%B3%BB%E7%BB%9F%E7%95%8C%E9%9D%A2.jpg) ; background-repeat:no-repeat;">
<?php
echo"<table class=\"TableList\" width=\"95%\" style=\"margin-top:345\" align=\"center\"><tr class=\"TableHeader\">\r\n
<td nowrap align=\"center\">编号</td>\r\n
<td nowrap align=\"center\">交办人</td>\r\n
<td nowrap align=\"center\">交办日期</td>\r\n
<td nowrap align=\"center\">承办人</td>\r\n
<td nowrap align=\"center\">要求日期</td>\r\n
<td nowrap align=\"center\">工作内容</td>\r\n
<td nowrap align=\"center\">完成情况</td>\r\n "."</br>";
$query="select*from flow_data_50 order by id desc";
 $cursor= exequery(TD::conn(),$query);
 //$count=0;
while($ROW=Mysql_fetch_array($cursor));
{
 $cunt++;
 echo"<tr>";
 echo "<td nowrap width=\"40\" align=\"center\">" . $ROW[‘id‘] . "</td>\r\n";
 if($count % 30==0){
 echo"</tr><tr>";
 }
  echo "<td nowrap width=\"115\" align=\"center\">" . $ROW[‘data_23‘] . "</td>\r\n ";
  echo "<td nowrap width=\"115\"align=\"center\">" . $ROW[‘data_24‘] . "</td>\r\n ";
  echo "<td nowrap width=\"115\"align=\"center\">" . $ROW[‘data_30‘] . "</td>\r\n ";
  echo "<td nowrap width=\"115\"align=\"center\">" . $ROW[‘data_29‘] . "</td>\r\n ";
  echo "<td nowrap width=\"300\"align=\"center\">" . $ROW[‘data_25‘] . "</td>\r\n ";
   echo "<td nowrap width=\"150\"align=\"center\">" . $ROW[‘data_26‘] . "</td>\r\n ";
 echo "</tr>";
}
echo "</table>";
?>
</body>
</html>
 
为了快速定位错误代码,可以将非关键代码先删除,只保留数据库连接和最不容易出错的字段代码输出。同时将php调试开关打开。

将代码精简:

<?
include_once("inc/conn.php"); // 如需要连接数据库则包含
?>
<?php
$query="select * from flow_data_50 order by id desc";
$cursor = exequery( $connection, $query );
while($ROW=mysql_fetch_array($cursor));
{
 echo "i=" . $ROW[‘id‘] ;
}
?>

技术分享

最后发现是在while行最后多了一个分号,这样相当于到这行这个循环就结束了,后续根本就没有再循环,大括号也并不和while是一起的了。至此,找到问题原因,问题解决。

通达OA 一个数据循环输出程序异常调试的案例

标签:通达oa   二次开发   调试   php   

原文地址:http://blog.csdn.net/upi2u/article/details/42195259

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!