mysql_query("LOCK TABLES `counter` WRITE;") or die(mysql_error());
$res = mysql_query("SELECT `unID` FROM `counter`;") or die(mysql_error());
$row = mysql_fetch_assoc($res);
$unID = $row['unID'] + 1;
mysql_query("UPDATE `counter` SET `unID`=`unID`+1;") or die(mysql_error());
mysql_query("UNLOCK TABLES;") or die(mysql_error());

这是100%保证$unID对于每个访问web的用户都是唯一的?
mysql表类型:MyISAM

最佳答案

从手册中:
只有持有锁的会话才能访问表。在释放锁之前,其他会话无法访问它。
所以答案是肯定的,这个数字是唯一的。

08-17 09:50