我的数据库是mysql,sale表里有一个hit列,hit列用来存放用户点击次数假如sale表里hit的初始值是10$num=取得sale表里hit列的值是10,到此为止没问题
$num+=1;//此时输出$num的值是11,也没有问题
Mysql_Query("Update `sele` set hit='{$num}' where id='{$id}'");//到这里就出错了,打开数据库后你会发现hit的值是12,按理说应该是11的.注意:程序代码绝对没错,我用同样的代码操作news表,一切正常
只有在操作这个sale表时一旦执行update操作就会出错,所以我怀疑可能是这个sale表的问题或者是mysql的bug之类的问题导致的.请朋友们指教!!!sale表的结构如下:
CREATE TABLE `sele` (
  `id` mediumint(9) NOT NULL auto_increment,
  `uid` mediumint(9) NOT NULL default '0' COMMENT '發布者id,對應user',
  `cid` mediumint(9) NOT NULL default '0' COMMENT '小分類id,對應class',
  `tid` mediumint(9) NOT NULL default '0' COMMENT '所屬城市,對應cache_town的key值',
  `typ` tinyint(2) NOT NULL default '2' COMMENT '狀態:參考Arr(1)',
  `btyp` varchar(50) NOT NULL default '1' COMMENT '交易類型:1擔保交易;2私下交易',
  `styp` varchar(50) default NULL COMMENT '運送方式,逗號分隔并包裹,如:,1,2,',
  `title` varchar(200) default NULL COMMENT '標題',
  `price` int(11) default '0' COMMENT '價格:0價格面議',
  `mess` varchar(2000) default NULL COMMENT '詳細內容',
  `img` varchar(500) default NULL COMMENT '片圖路徑和名稱(不含根路徑@up),逗號分隔包裹',
  `user` varchar(10) default NULL COMMENT '聯繫人',
  `tel` varchar(50) default NULL COMMENT '電話或手機',
  `jishi` tinyint(2) default '1' COMMENT '即時通的類型',
  `jishi1` varchar(50) default NULL COMMENT '即時通的號碼',
  `hit` mediumint(9) default '0' COMMENT '點擊次數',
  `ord` mediumint(9) default '0' COMMENT '排序值',
  `tim` int(9) default '0' COMMENT '添加的時間',
  PRIMARY KEY  (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=35 DEFAULT CHARSET=utf8;

解决方案 »

  1.   

    删除掉$num+=1
    修改SQL语句为:
    "Update `sele` set hit=hit + 1 where id='{$id}'"再试试看呢?
      

  2.   

    好了,问题我已经解决了,是因为 <span style="background:url();">导致的好吧,既然問題已經解決了,接下來誰能幫我找一个mongoDB的中文使用手册,分数就给谁了.
      

  3.   

    http://wenku.baidu.com/view/2fa7761dc281e53a5802fff2.html
      

  4.   

    我再次捉摸了一下,覺得我的這個說法也不成立,倘若真如我所說的話,那麼這個bug還是可以利用起來的,例如完全可以利用此bug實現服務器推技術
    但是實際狀況並非如此,可能需要讀一下PHP的html解析部份才能知道答案了.
      

  5.   

    PDF版,http://ishare.iask.sina.com.cn/f/20149547.html?f