
نوشته اصلی توسط
alborzhost
سلام
یک سوال دیگه هم دارم
میخام یک عدد رندوم تولید کنم برای کد رهگیری یک تابعی بگید که تکراری نده بیرون !
در ضمن من میتونم 2 تا کلید اصلی تو دیتابیس داشته باشم ؟
هم میخوام Id و هم کد رهگیری کلید اصلی باشن
تشکر
براي رندوم من از كد زير استفاده مي كنم :
کد PHP:
function GEN($num) {
$rashlist = 'ABDEFGHJKMNPRSTZ23456789';
$rashg = '';
$i = 0;
while ($i < $num) {
$rashg .= substr($rashlist, mt_rand(0, strlen($rashlist)-1), 1);
$i++;
}
return $rashg;
}
مثلا يك رشته رندوم 10 كاراكتري :
* بايد بعد از توليد عدد از صحت منحصر به فرد اون با يك كوئري مطمئن بشيد و در صورت تكراري بودن اقدام به تعويض اون كنيد.
* احتمال رشته تصادفي تكراري تقريبا نزديك به صفر است اما جانب احتياط رو بايد رعايت كرد.
* نمي تونيم دو primary key مستقل داشته باشيم اما تركيبي چرا :
کد PHP:
create table example_of_2_primary(
id varchar(50) not null,
code varchar(50) not null,
title varchar(255),
link varchar(255),
primary key(id, code));