创建一个新的唯一12位数字PHP

时间:2015-10-04 08:08:49

标签: php mysql

我们在MySQL数据库中有一个条形码表,其中存储了条形码编号,我们正在创建新的条形码编号,但问题是如何生成一个新的12位数字,不应该由我们的数据库表重复我们已经创建了检查重复数字的功能。

  <?php include('dbcon.php');

 function IsBarcodeDuplicate($bcodeno){
 $sqlsearch="SELECT * FROM barcodes where barcodeno='$barcodeno'";
 $rs=mysqli_query($_GLOBALS['con'],$sqlsearch);
 $rowcounts=mysqli_num_rows($rs);
 if($rowcounts>=1){
 return(true);  
 }
return(false);
}//ends here

function GenerateNewnum(){
/*to be implemented here
IsBarcodeDuplicate(number) 
*/
 }//ends here
?>

1 个答案:

答案 0 :(得分:0)

您可以将数据库表中的最大数字增加1吗?然后你不需要检查它是否已经存在。

SELECT barcodeno FROM barcodes ORDER BY barcodeno DESC LIMIT 1

或者你可以使用php的随机数生成器,如果短于12个字符,可以在前面填0。

$no = rand(0, 999999999999);
$no = str_pad($no, 12, "0", STR_PAD_LEFT);