آموزش برنامه نویسی

موضوعات آموزش

ورود به سیستم

سایر مطالب

رادیو موزیک آنلاین

مجوزها

logo-samandehi

تبلیغات

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

جذابترین های این بخش

مطالب هم شاخه

آیا میدانستید؟

خدمات

گزارشات

سیستم عامل: Unknown OS Platform
مرورگر شما: Unknown Browser
کشور شما: United States
موقعیت شما: 54.161.100.24

بازدید دیروز: 0
بازدید کننده دیروز: 0
بازدید امروز: 314
بازدید کننده امروز: 172
بازدید کل تا به امروز: 2847769

GPS آنلاین

مسیر یاب آنلاین آسان

تبلیغات

دانلود دفترچه راهنمای مدار سیم کشی برق موتورسیکلت

تبلیغات

دانلود دفترچه راهنمای سرویس و نگهداری موتورسیکلت آپاچی 180 و آپاچی 160

تبلیغات

دانلود دفترچه راهنمای سرویس و نگهداری موتورسیکلت تریل سوزوکی

تبلیغات

تبلیغات

دانلود دفترچه راهنمای سرویس و نگهداری موتورسیکلت هندا

آموزش > آموزش برنامه نویسی >  پرکاربردترین نکته ها برنامه نویس > 

آموزش استفاده از jdf و datepicker در تقویم هجری شمسی، میلادی

شاید شما هم جزو آن دسته از برنامه نویسانی باشد که از کلاس jdf برای نمایش تقویم های هجری شمسی و یا میلادی در پروژه های خود استفاده می نمائید و در اکثر مواقع بخواهید اقدام به استفاده از توابعی که در این کلاس قرار دارد بنمائید و ندانید که مناسب ترین روش در بکاربردن توابع کدام است. امروز می خواهیم پرکاربرد ترین توابع که جهت بکارگیری از انها در پروژه ها صورت میگیرد را برای شما قرار دهیم. پس در ادامه همراه ما باشید.

 

توضیحات مختصری در باره jdf:

سایت jdf.scr.ir در تاریخ 22 بهمن 1389 ، اقدام به انتشار یک نرم افزار جدید مشابه با تقویم جلالی ، به زبان پی اچ پی نمود.  از مزایای این نرم افزار ، می توان به موارد زیر اشاره نمود:

حجم ناچیز و سرعت بسیار زیاد نسبت به نرم افزار قدیمی # وجود مجموعه ی کامل آموزشی به زبان فارسی # پارامترهای اضافه برای کنترل دقیق توابع و خروجی ها # امکان اعمال اختلاف ساعت جهانی دلخواه در خروجی # تعیین زبان اعداد خروجی ( فارسی یا انگلیسی ) به دلخواه # احتساب روز شنبه به عنوان روز اوّل هفته در تمامی خروجی ها # توابع جدید تبدیل تاریخ میلادی به هجری شمسی و برعکس ، با خروجی آرایه یا متن ، به دلخواه # تابع تبدیل عناصر زمان ( هجری شمسی ) به برچسب زمان # تابع تبدیل برچسب زمان به آرایه ی عناصر مختلف تاریخ و زمان ( هجری شمسی ) # تابع بررسی صحیح بودن تاریخ هجری شمسی # تبدیل زبان اعداد موجود در متن خروجی ( فارسی یا انگلیسی ) # شبیه سازی توابع کاربردی زمان برای تاریخ هجری شمسی # امکان رفع خطاهای چند دقیقه ای زمان بعضی سرورها # جلو و عقب کشیده شدن ساعت در نیمه های اوّل و دوم سال ، به صورت خودکار # محاسبات و خروجی های بسیار متنوّع از جمله : # سال به حروف ، کامل یا خلاصه # نام فصل از سال به حروف یا شماره ی آن # نام ماه های هجری شمسی به حروف یا شماره ی آن # محاسبه ی نام باستانی برج ها # محاسبه ی نام حیوانی سال ها # تعداد روزهای گذشته یا باقی مانده از سال # درصد گذشته یا باقی مانده از سال # شماره ی روز از ماه ( هجری شمسی ) به حروف یا عدد # محاسبه ی دقیق سال هجری شمسی هفته ای با احتساب روز شنبه به عنوان آغاز هفته # شماره ی هفته در سال ، روز شنبه به عنوان آغاز هفته # نشانگر دقیق کبیسه بودن یا نبودن سال هجری شمسی # شماره ی سال ، 2 یا 4 رقمی # شماره ی ماه ، 1 یا 2 رقمی # شماره ی روز ، 1 یا 2 رقمی # شماره ی روز در هفته ، روز شنبه به عنوان آغاز هفته ، 0-6 یا 1-7 # محاسبه ی تعداد روزهای همان ماه از سال با احتساب اسفند سال های کبیسه # نمایش اوقات روز به فارسی ، کامل یا خلاصه # نشانگر طولانی تر بودن روزها در نیمه ی اوّل سال و جلو کشیدن ساعت # نام روز در هفته ، فارسی ، کامل و خلاصه # نمایش اختلاف ساعت جهانی ، در چند قالب مختلف # تاریخ و زمان کامل و مرکّب در قالب های دلخواه # نام منطقه ی زمانی تنظیم شده ، مخفّف و کامل # ساعت ، دقیقه ، ثانیه ، زمان اینترنتی ، برچسب زمان ، میکرو ثانیه و امکانات بسیار متنوّع دیگر ...

 

توضیحات مختصری در باره datepicker:

دیتاپیکر یک تقویم میلادی است که با استفاده از کتابخانه های jQuary فعال میشود. datepicker به طور کلی دارای یک قالب میباشد که به صورت جدولی میتواند یک تقویم را برای شما رسم کند. این تقویم با استفاده از CSS رسم میشود و میتوان آن را به سلیقه خود رنگ آمیزی و در آن اقدام به تقییراتی نمود.

 

استفاده از jdf:

برای استفاده از jdf میبایستی ابتدا فایل آن از اینجا و یا آدر همین مطلب دانلود نمائید. سپس همچون زیر در فایل خود با استفاده از تابع require_once فایل jdf.php را فراخوانی نمائید. همانند زیر:

require_once 'jdf.php';

 

حال با استفاده از کد های زیر بر حسب نیاز خود میتوانید اقدام به نمایش و یا محاسبه تاریخ و زمان مورد نظر خود نمائید.

 

1- اگر شما قصد دارید تا بتوانید اختلاف زمانی ( اختلاف فاصله روزهای سال) را بدست بیاورید از کد زیر استفاده نمائید.

// این تابع برای بدست آوردن اختلاف تعداد روز ها میباشد
function DateDifference($firstDate, $secondDate)
{
 list($fdY, $fdM, $fdD) = explode('-', $firstDate);
 list($sdY, $sdM, $sdD) = explode('-', $secondDate);
 $fts = jmktime(0, 0, 0, $fdM, $fdD, $fdY);
 $sts = jmktime(0, 0, 0, $sdM, $sdD, $sdY);
 $diff = $sts - $fts;
 // Return differencereturn
 return round($diff / 86400);
}
$startDate = '1393-12-01';
$endDate = '1394-12-01';
echo DateDifference($startDate, $endDate); // output: 365

 

2-اگر قصد نمایش تاریخ کنونی را دارید آن هم با حروف فارسی از کد زیر استفاده نمائید.

echo jstrftime('%Y/%m/%d');// ۱۳۹۳/۰۱/۰۱ خروجی به حروف فارسی 

 

3-اگر قطد دارید تا تاریخ کنونی را با حروف فارسی و به صورت های مختلف نمایش دهید می توانید از کد زیر استفاده نمائید.

echo $shamsi=jstrftime('%Y-%m-%d','','','','en');// 1393-01-01 خروجی به حروف انگلیسی 

echo $hejri_shamsi=str_replace('-','/',$shamsi);// 1393/01/01 خروجی به حروف انگلیسی 

کد های زیر هم مشابه کد های بالا عمل میکنند

print_r(jalali_to_gregorian(1366,11,26));// خروجی: array(2011,2,11);
echo '
';
echo jalali_to_gregorian(1366,11,26,'-');// خروجی: 2011 - 2 - 11
echo '

'; print_r(gregorian_to_jalali(2014,12,03));// خروجی: array(1389,11,22); echo '
'; echo gregorian_to_jalali(2014,12,03,'/');// خروجی: 1393/9/12

 

4- اگر میخواهید تا نام روزهای هفته را به نمایش بگذارید از کد زیر استفاده نمائید.

echo jstrftime('امروز %A است');// روز هفته را نمایش میدهد مثلا امروز شنبه است

 

5- اگر قصد دارد تا نام ماه های سال را به نمایش دهید از کد زیر استفاده نمائید.

echo jstrftime('امروز %B ماه است');// ماه سال را نمایش میدهد مثلا امروز فروردین ماه است

 

6- اگر قصد دارد تا موقعید ظمانی صبح یا ظهر را به نمایش بگذارید از کد زیر استفاده کنید.

echo jstrftime('زمان %p است');// موقعیت زمان کنونی را نمایش میدهد مثلا زمان قبل از ظهر است

echo jstrftime('زمان %P است');// موقعیت زمان کنونی را نمایش میدهد مثلا زمان ق.ب است

 

7- اگر قصد نمایش فصل های سال را دارید از کد زیر استفاده کنید.

echo jdate('f');// فصل سال را نمایش میدهد مثلا پاییز

 

8- اگر قصد نمایش نام برج های سال ( منظور ماه های سال به واسطه  نام های حیوانات) را به نمایش در بیاورد از کد زیر استفاده کنید.

echo jdate('p');// نام برج ها(ماه ها) به نام های حیوان آنها سال را نمایش میدهد مثلا حمل

 

9- اگر قصد نمایش نام سال ها بر اساس نام حیوانات را دارید از کد زیر استفاده کنید.

echo jdate('q');// نام سال را نمایش میدهد مثلا اسب

 

10- اگر قصد نمایش موقعیت زمانی کشور را دارد از کد زیر استفاده نمائید.

echo jdate('T');// مخفّف منطقه ی زمانی تنظیم شده مثلا IRST

 

11- اگر قصد دارید تا موقعیت جغرافیایی زمانی را به نمایش در بیاورد از کد زیر استفاده کنید.

echo $tim_zone=jdate('e');// نمایش موقیعت جغرافیایی زمانی مثلا Asia/Tehran

 

12- اگر ثصد نمایش اختلاف زمانی نسبت به ساعت گرینویچ را دارید از کد زیر استفاده نمائید.

echo $tim_zone=jdate('P');// اختلاف ساعت جهانی به ساعت مثلا +۰۳:۳۰

echo jdate('Z');// اختلاف ساعت جهانی به ثانیه

 

13- اگر قصد نمایش تاریخ را به صورت حروف دارد از کد زیر استفاده نمائید.

echo jdate('امروز : Jم F ماه سال V است'); // امروز : دوازدهم آذر ماه سال هزار و سیصد و نود و سه است

 

14- اگر قصد نمایش ساعت، دقیقه و ثانیه را با اعداد فارسی دارید از کد زیر استفاده نمائید.

echo jdate('H:i:s');// ساعت و دقیقه و ثانبه به اعداد فارسی

 

15- اگر قصد نمایش ساعت، دقیقه و ثانیه را با اعداد انگلیسی داردید از کد زیر استفاده نمائید.

echo $shamsi=jdate('H:i:s','','','','en');// ساعت و دقیقه و ثانبه به اعداد انگلیسی

 

16- اگر قصد دارید تا میزان زمان ساعت، دقیقه و ثانیه را به عقب و یا جلو ببرید از کد زیر استفاده نمائید.

توجه برای تغییر زمان میبایستی از ثانیه استفاده نمائید مثلا برای جلو بردن 2 دقیقه می بایستی وارد نمائید 120 یعنی 120 ثانیه

echo jdate('H:i:s',time()-120,'','','en');// برای عقب بردن زمان با وارد نمودن ثانبه

echo jdate('H:i:s',time()+120,'','','en');// برای جلو بردن زمان با وارد نمودن ثانبه

 

17- اگر قصد دارید تاریخ را به جلو یا عقب ببرید میتوانید از کد زیر استفاده نمائید.

echo $today = '1393/01/01';// افزایش یا کاهش روز به تاریخ کنونی
echo '
';
  list($y, $m, $d) = explode('/', $today);
  $todayTimestamp = jmktime(0, 0, 0, $m, $d, $y);
  $date=3*86400;// تعداد روزها در میزان ثانیه های یک شبانه روز ضرب شده است
  $tomorrowTimestamp = $todayTimestamp + $date;
echo $HejriShamsiEN=jstrftime('%Y/%m/%d',$tomorrowTimestamp,'','','en');// خروجی به حروف انگلیسی
echo '
';
echo $HejriShamsiFA = jdate('Y/m/d', $tomorrowTimestamp);// خروجی به حروف فارسی

 

18- اگر قصد دارید تا یک تاریخ هجری شمسی را به میلادی و یا میلادی را به شمسی  تبدیل کنید از کد زیر استفاده نمائید.

$time = strtotime('2015/01/01'); // خروجی تبدیل تاریخ میلادی به شمسی با حروف انگلیسی
echo jdate('Y/m/d', $time);


echo gregorian_to_jalali(2015,03,21,' / ');// خروجی تبدیل تاریخ میلادی به هجری شمسی 1393/11/22


echo jalali_to_gregorian(1394,01,01,' / ');// خروجی با اعداد فارسی ۱۳۹۳/۱۰/۱۱
echo '
';

 

 

آموزش بکار گیری datepicker:

استفاده از این پلاگین همانند تمام پلاگینهای دیگر jQuery است. برای این کار باید فایلهای css مربوط به theme مورد علاقه خود را به فایل html اضافه کنید.
سپس بعد از اضافه کردن اسکریپتهای jquery.js و ui.core.js (که در تمام پلاگینهای jQuery انجام میشود)، فایلهای ارایه شده در اینجا (ui.datepicker-cc.min.js و calendar.min.js و ui.datepicker-cc-fa.js) را اضافه کنید. به عنوان مثال در بخش head فایل html خود، قسمتی مشابه کد زیر خواهید داشت:


 

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


 

 

 


 

    حالت پیشفرض
    تاریخ:    

    نمایش شماره هفته
    تاریخ:    

    پرکردن فیلد اضافی
    تاریخ:        

    نمایش دکمه ها
    تاریخ:    

    تغییر قالب نمایش تاریخ و تغییر سایز خودکار فیلد
    تاریخ:        

    استفاده از dropdown
    تاریخ:    

    انتخاب با کلیک بر روی عکس
    تاریخ:    

    نمایش inline
   

    نمایش چند ماه
    تاریخ:    

    غیرفعال کردن روزها
    تاریخ:    

    تاریخ پیشفرض
    تاریخ:    

    تنظیم حداقل و حداکثر
    تاریخ:    

    تنظیم حداقل بصورت پویا
    از تاریخ:         تا تاریخ:    

    استفاده همزمان از تقویم میلادی
    تاریخ:    

    استفاده همزمان از تقویم هجری قمری
    تاریخ:    

جهست کسب اطلاعات بیشتر درباره datepicker به اینجا مراجعه نمائید

 

پیش نمایش

 

حجم فایل: 151Kb

رمز فایل: www.hassas-computer.com



نام: 8856
ایمیل:
سایت:


رضا 1396/12/28

ممنون از نمونه ارسالی،برای تبدیل شمسی به میلادی با ثابت قرار دادن تاریخ شمسی همه چیز درست کارمیکنه، اما اگه بخوای با دستور post از یک textbox دریافت کنید، تاریخی رو که نشون میده فقط یک تاریخ با روز و ماه و سال ثابت است، و سال رو با عددی مثل 0622 نشون میده .اگه کسی میتونه کمک کنه ممنون میشم

نمونه سمپل همراه فایل وجود دارد.


1

admin141 1396/08/27

سلام می خوام نمایش inline داشته باشم چیکار باید بکنم

از نمونه سمپل ارائه شده استفاده کنید.


صابر 1395/08/15

سلام. فایل .js بسیار شلوغ و غیر قابل فهمه. بنده میخوام یه تاریخ فارسی به تابع بدم و ازش روزش رو بگیرم مثلا 15/08/1395 رو بهش بدم روز شنبه رو برگردونه. راهی هست که با تابع jdate به نتیجه برسم؟

با تعیین تاریخ در تابع JQuary روز برای شما نمایش داده می شود اما اگر قصد استفاده از خود ایام هفته نسبت به یک تاریخ خاص را دارید اینجا را مطالعه نماید..

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


نوید مسائلی 1395/07/22

سلام بنده دانلود کردم ولی کاری که بنده میخوام انجام بدم این است که مثلا امروز که 22 هست روز های قبل 22 غیر فعال باشه آیا چنین چیزی امکان دارد لطفا راهنمایی کنید و جواب بی زحمت به ایمیل بنده ارسال کنید

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


1

نادر 1395/03/12

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


مرتضی 1394/11/01

ممنونم . خیلی خوب و کامل توضیح دادید .


1

محمد مصطفی شهرکی 1393/10/21

ممنون بابت مقاله مفیدتون. فقط نمیدونم چرا اینقدر تابع DateDiff آشنا بنظر میاد ;) ای کاش ذکر منبع میکردین. بهرحال سایت خوبی دارین. امیدوارم موفق باشید.