第4行的判断出错:$row = mysql_fetch_row($res);
此行默认附一条值,且减少一条纪录。
改为if(mysql_num_rows($result))

解决方案 »

  1.   

    第三行的$row = mysql_fetch_row($res);去掉,这里fetch一次了,
    再写while ($row=mysql_fetch_row($res))当然就少一条记录
    用$num=mysql_num_rows($res)取出记录数
    在下面的if 里判断 if($num>0){  while循环}else{ echo "<select name=\"select\">
    </select> "l}
      

  2.   

    <?
    $sql="SELECT TYPE FROM POINT_TYPE  ORDER BY ID";
    $res = mysql_query($sql,$db);
    $num = mysql_num_rows($res);
    if($num<1){echo "No data";exit;}
    while ($row=mysql_fetch_row($res))
    {
      .............
    }