主要代码如下:
for($i=0;$i<count($dqdm);$i++)
{
$sjhzbje=$sjhzbrs[$i]*5000;
$dsjhzbje=$dsjhzbrs[$i]*5000;
$xqjhzbje=$xqjhzbrs[$i]*5000;
$checkexist=mysql_query("select * from ".$DB_NAME_GZ.".t_dqjhzbb where dqdm=$dqdm[$i]"); //检查记录是否已经存在了
echo $checkexist."<br>";
if($checkexist)
{
 $updatequery=mysql_query("update ".$DB_NAME_GZ.".t_dqjhzbb set nddm=YEAR(NOW()), sjhzbrs=$sjhzbrs[$i],dsjhzbrs=$dsjhzbrs[$i],xqjhzbrs=$xqjhzbrs[$i] ,sjhzbje=$sjhzbje,dsjhzbje=$dsjhzbje, xqjhzbje=$xqjhzbje where dqdm=$dqdm[$i]");
}
else {
    $insertquery=mysql_query("insert into ".$DB_NAME_GZ.".t_dqjhzbb (dqdm,sjhzbrs,dsjhzbrs,xqjhzbrs,sjhzbje,dsjhzbje,xqjhzbje) values($dqdm[$i],$sjhzbrs[$i],$dsjhzbrs[$i],$xqjhzbrs[$i],$sjhzbje,$dsjhzbje,$xqjhzbje)");
         }
  
   if($insertquery==true)
   {
  echo "insert !you did it<br>";
   
   }
   if($updatequery==true)
   {
  echo "update you did it<br>";
   }

}
}录入页面为两个已存在数据!当输入新数据,而不是修改数据时候!全部转向了update!
结果如下
Resource id #19
update you did it
Resource id #20
update you did itupdate you did itupdate you did itupdate you did itupdate you did itupdate you did itupdate you did itupdate you did itupdate you did itupdate you did it我要的时候后面不是Update!而是insert you did it !

解决方案 »

  1.   

    ".$DB_NAME_GZ.".t_dqjhzbb 在你检查记录是否存在的时候,这中间的应该是表名,但是你这还连接起来,你的表名到底叫什么?echo $checkexist."<br>";你打印出这句没有用,如果想检测是否查询出结果的话,最好打印mysql_fetch_array($checkexist);下面的建议还是一样的,mysql_query的结果打印出来就是Resource id #**,我常用的就是把结果mysql_fetch_array()一下,然后检查结果是否为空