تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




صفحه 1 از 2 12 آخرآخر
نمايش نتايج 1 به 10 از 15

نام تاپيک: ساختن عدد 10 رقمی تصادفی عیر تکراری در Php

  1. #1
    پروفشنال LOVEMT's Avatar
    تاريخ عضويت
    Apr 2006
    پست ها
    740

    پيش فرض ساختن عدد 10 رقمی تصادفی عیر تکراری در Php

    سلام دوستان من دارم یه برنامه مینویسم که که در اون نیاز دارم یه عدد 10 رقمی رو به صورت تصادفی تولید کنم و در دیتا بیس ذخیره کنم ! من نمیخام این عدد هیچ وقت تکرار بشه و همیشه یک عدد جدید بسازه ! ممنون میشم اگه تابعی که این کار رو میکنه به من معرفی کنید .. با تشکر .

  2. #2
    حـــــرفـه ای Bill Gates's Avatar
    تاريخ عضويت
    Jan 2008
    محل سكونت
    @ Company
    پست ها
    3,465

    پيش فرض

    اگر کسی هست جواب بده چون منم نیاز فوری دارم
    تشکر //

  3. #3
    پروفشنال peyman1987's Avatar
    تاريخ عضويت
    Sep 2006
    محل سكونت
    تهران
    پست ها
    995

    پيش فرض

    هیچ تابع آماده ای این کار رو نمیکنه.
    الگوریتمش اینه که شما اونقدر عدد تصادفی ده رقمی ( بین 1000000000 و 9999999999 ) تولید کنین و با اعداد قبلی مقایسه کنین تا به یه عدد غیر تکراری برسین. بعد اون رو توی دیتابیس میزارین تا دفعه بعد دیگه اونو تولید نکنین.

    اینم بگم که حساب کنین که با هر بار ساخته شدن یه عدد جدید احتمال پیدا شدن عدد تصادفی کمتر میشه. یعنی شاید به حدی برسه که شما مجبور بشین 10000000 بار عدد تصادفی بسازین تا به یه عدد غیرتصادفی برسین.

    بنظرم اگر فقط unique بودن عدد براتون مهمه از auto increment استفاده کنین. یعنی از 1000000000 شروع کنین و هر بار یه دونه بهش اضافه کنین.

  4. #4
    پروفشنال LOVEMT's Avatar
    تاريخ عضويت
    Apr 2006
    پست ها
    740

    پيش فرض

    هیچ تابع آماده ای این کار رو نمیکنه.
    الگوریتمش اینه که شما اونقدر عدد تصادفی ده رقمی ( بین 1000000000 و 9999999999 ) تولید کنین و با اعداد قبلی مقایسه کنین تا به یه عدد غیر تکراری برسین. بعد اون رو توی دیتابیس میزارین تا دفعه بعد دیگه اونو تولید نکنین.

    اینم بگم که حساب کنین که با هر بار ساخته شدن یه عدد جدید احتمال پیدا شدن عدد تصادفی کمتر میشه. یعنی شاید به حدی برسه که شما مجبور بشین 10000000 بار عدد تصادفی بسازین تا به یه عدد غیرتصادفی برسین.

    بنظرم اگر فقط unique بودن عدد براتون مهمه از auto increment استفاده کنین. یعنی از 1000000000 شروع کنین و هر بار یه دونه بهش اضافه کنین.
    ok متوجه شدم .. چه جوری عدد تصادفی بسازم !

  5. #5
    پروفشنال peyman1987's Avatar
    تاريخ عضويت
    Sep 2006
    محل سكونت
    تهران
    پست ها
    995

    پيش فرض

    تابع زیر یه عدد تصادفی بین 1000000000 تا 9999999999 برمیگردونه.

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

  6. #6
    حـــــرفـه ای Bill Gates's Avatar
    تاريخ عضويت
    Jan 2008
    محل سكونت
    @ Company
    پست ها
    3,465

    پيش فرض

    سلام
    این کد رو در کجا قرار بدم؟؟؟؟

  7. #7
    اگه نباشه جاش خالی می مونه saghishab's Avatar
    تاريخ عضويت
    Sep 2007
    محل سكونت
    iran
    پست ها
    223

    پيش فرض

    سلام
    این کد رو در کجا قرار بدم؟؟؟؟


    دوست عزيز تابع rand يك عدد بر مي گردونه پس شما بايد اين تابع رو لا بلاي كد هاي خودتون بذارين و عددي رو كه بر مي گردونه رو بريزين تو يه متغير و بعد مي تونين با اون متغير هر كاري بكنين مثلا اينطوري
    (n$num=rand(100000,99999
    print $ num;

  8. #8
    حـــــرفـه ای Bill Gates's Avatar
    تاريخ عضويت
    Jan 2008
    محل سكونت
    @ Company
    پست ها
    3,465

    پيش فرض

    میشه کدش رو برامون اجرا کنید/
    تشکر//

  9. #9
    پروفشنال LOVEMT's Avatar
    تاريخ عضويت
    Apr 2006
    پست ها
    740

    پيش فرض

    درست نتونستم برنامه رو بفهمم ..

    من 20 تا عدد بین 1000000000 تا 9999999999 ساختم و در MySQL ذخیره کردم حالا چکار کنم که از تکرار اون جلوگیری کنم ..

    ببین این درسته

    باید تمام 20 عدد رو از دیتابیس بازیابی کنم و بعدش در یک ارایه ذخیره کنم و بعد هم یا تابع rand عدد جدید بسازم و اون عدد رو با اون ارایه مقایسه کنم و اگه اون عدد در ارایه وجود نداشت در دیتا بیس ذخیره کنم .
    و حالا اگه وجود داشت چی ... ؟؟؟؟

    اگه میشه یکی از دوستان برنامش رو بنویسه و اپلود کنه و اینجا برای دانلود بزاره .. که ما بهتر متوجه الگریتم برنامه بشیم

    با تشکر .

  10. #10
    پروفشنال LOVEMT's Avatar
    تاريخ عضويت
    Apr 2006
    پست ها
    740

    پيش فرض

    پیداش کردم !!!

    $possible = '23456789bcdfghjkmnpqrstvwxyz';
    $code = '';
    $i = 0;
    while ($i < 10) {
    $code .= substr($possible, mt_rand(0, strlen($possible)-1), 1);
    $i++;
    }
    echo($code);
    فقط یکی بگه میتونم مطمئن باشم که Code$ هیچ وقت تکراری نیست !
    این رو از تو یه اسکریپت ساختن تصویر امنیتی استخراج کردم درست هم کار میکنه !

صفحه 1 از 2 12 آخرآخر

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •