本帖最后由 spewen 于 2011-04-26 15:40:02 编辑

解决方案 »

  1.   

    while中的$ROW被里边if中的$ROW覆盖了, 给if里头的$ROW换个变量名试试!
      

  2.   

    应该不是,我换成$ROW3 了,结果一样
      

  3.   

    $cursor3这个你懂得加个“3”分开,但$row怎么不分开呢?if($ROW3=mysql_fetch_array($cursor3))
    $DEPT_NAME1=$ROW3["DEPT_NAME"];试一下
      

  4.   

    exequery是什么?自定义函数?查一下里面的输出有没有冲突
      

  5.   

    exequery 是OA系统inc/conn.php包装的SQL语句执行函数 这个没问题
     当department表中dept_no 为空的时候如下图,$dept_name1就为前一个的值。
      

  6.   

    本帖最后由 xuzuning 于 2011-04-26 16:20:48 编辑
      

  7.   

    本帖最后由 xuzuning 于 2011-04-26 16:24:42 编辑
      

  8.   

    涉及到的就是dept_no  本来空的数据 显示到页面的时候部门列也应该为空的,但是全都变成最后一个赋上的值“机电公司”了。
      

  9.   

    这好像变成一个变量的生命周期问题了,麻烦问一下循环一次后 ,变量$DEPT_NAME1内容清空啊?
      

  10.   

    不说代码的问题,这样取数据效率很低下。应该用SELECT *** LEFT JOIN ***方式取部门名称。
    SELECT e.emp_no, e.emp_name, d.dept_name
    FROM employee e
    LEFT JOIN department d ON d.dept_no = e.dept_no