/
  • ذخیره و بازیابی تاریخ شمسی در mysql

  • ارسال پاسخ   امتیاز موضوع:
    • 1 رأی - میانگین امیتازات: 5
    • 1
    • 2
    • 3
    • 4
    • 5

    حالت موضوعی | حالت خطی ذخیره و بازیابی تاریخ شمسی در mysql
    نویسنده پیام
    parazitt آفلاین
    عضو جدید
    **

    ارسال‌ها: 36
    تاریخ عضویت: ۱۳۸۹ فروردين ۱
    اعتبار: 2
    تشکرها : 42
    ( 37 تشکر در 14 ارسال )
    ارسال: #1
    ذخیره و بازیابی تاریخ شمسی در mysql
    همواره با این مشکل موجه هستیم که امکان ذخیره و بازیابی تاریخ شمسی وجود ندارد مگر آنکه از چند فیلد عددی استفاده کنید که مزایا و معایب خودش را دارد و دیگری تبدیل تاریخ از شمسی به میلادی و بلعکس که مشخصا مشکلاتی از جمله آرشیو بندی را به همراه دارد
    در این جا خواهیم دید چگونه می توان یک فیلد تاریخ معمولی را با تاریخ شمسی مقدار دهی کرد
    // البته ممکن است این روش مشکلاتی به همراه داشته باشد.
    در مای اسکیو ال محدودیتی در وارد کردن سال وجود ندارد اما برای ماه و روز محدودیت وجود دارد مثلا ۶ ماهه اول سال ما ۳۱ روزه است ولی در میلادی یک ماه در میان ۳۱ روزه هستند و ماه ۲۹ روزه ی آنها ماه سوم است در تابع زیر ماه شمسی را آماده می کنیم برای مای اسکیوال
    کد PHP:
    function gdate2sql($month){
            if(
    $month==8){$month=12;}elseif($month==12){$month=8;}
            if(
    $month<=6){
                
    $month*=2;
            }else{
                
    $month=$month-(13-$month);
            }
            return 
    $month;
        } 
    و تابع زیر عکس تابع بالا عمل می کند یعنی ماهی را که برای مای اسکیو ال آماده کرده ایم را به ماه قابل درک برای کاربر تبدیل می کند:
    کد PHP:
    function sql2gdate(){
        if(
    $month==11){$month=3;}elseif($month==3){$month=11;}
        if((
    $month%2)==0){
            
    $month/=2;
        }else{
            
    $month=($month+13)/2;
        }
        return 
    $month;
        } 
    همچنین این تابع ممکن است خرد باشد با تکیمل آن به ایران پی اچ پی کمک کنید (اسمایلی ویکی پدیا)
    ۱۳۸۹ خرداد ۱۳ ۰۱:۴۳ صبح
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط : molana parsig oia
    oia آفلاین
    محمد ثانی
    *****

    ارسال‌ها: 2,012
    تاریخ عضویت: ۱۳۸۷ آذر ۲۶
    اعتبار: 66
    تشکرها : 2330
    ( 2091 تشکر در 1290 ارسال )
    ارسال: #2
    RE: ذخیره و بازیابی تاریخ شمسی در mysql
    کاره جالبی بود
    یعنی ازادیم که روز رو اونطور که هست ذخیره کنیم؟
    ۱۳۸۹ خرداد ۱۳ ۰۷:۲۲ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    parazitt آفلاین
    عضو جدید
    **

    ارسال‌ها: 36
    تاریخ عضویت: ۱۳۸۹ فروردين ۱
    اعتبار: 2
    تشکرها : 42
    ( 37 تشکر در 14 ارسال )
    ارسال: #3
    RE: ذخیره و بازیابی تاریخ شمسی در mysql
    همین طوره
    ۱۳۸۹ خرداد ۱۴ ۰۲:۳۲ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    zoghal آفلاین
    صالح سوزنچی
    *****

    ارسال‌ها: 1,760
    تاریخ عضویت: ۱۳۸۷ دي ۲۵
    اعتبار: 23
    تشکرها : 1500
    ( 1729 تشکر در 992 ارسال )
    ارسال: #4
    RE: ذخیره و بازیابی تاریخ شمسی در mysql
    به نظر من باید شما یک تاریخ واحد داشته بشید و ببر اساس اون تاریخ های دیگه رو بدست بیارید.


    شما به مشکل آرشو اشاره کردید. هالا روش خودتون رو با روش من امتحان کنید.

    http://saleh.soozanchi.ir/1388/07/05/%d8...%b1-mysql/
    ۱۳۸۹ خرداد ۱۵ ۱۲:۲۹ صبح
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط : oia
    « قدیمی تر | تازه‌ تر »

    ارسال پاسخ
    پرش به انجمن:


    کاربرانِ درحال بازدید از این موضوع: 1 مهمان
    IranPHP.org | تماس با ما | بازگشت به بالا | بازگشت به محتوا | بایگانی | پیوند سایتی RSS