رفع اختلاف زماني با ساعت سرور در asp

دوستان با چه تابعب ميتوان اختلاف زماني با سرور را بر حسب ساعت و دقيقه و حتي ثانيه بر طرف کرد ؟
من فقط ميتونم ساعت را تنظيم کنم و دقيقه و ثانيه را نميتونم ميتونيد کمکم کنيد دقيقا (اگه ميشه با مثال)
در ضمن ساعت سرور بستگي به موقعيت سرور داره و يا اينکه ساعت گرينويچ هست؟
 
یعنی کسی اینا توی این فرم نمیدنست؟
پس شما که برنامه مینویسید چه کار می کنید اگه بخواهید زمان را با زمان کشورمون تنظیم کنید؟
لطفا کمک کنید خیلی بهش نیاز دارم
 

mosyhey

Member
گمان می کنم معمولاً ساعت سرور منطبق بر کشور همان سرور است و برای جبران اختلاف:
ابتدا یک دستور Now را روی سرور اجرا کنید مثلاً اینگونه:
کد:
Response.Write(Now())
سپس محاسبه کنید چقدر با ساعت رسمی ایران فاصله دارد. البته اگر ساعت کامپیوتر شما و ساعت سرور هر دو دقیق باشند این اختلاف هیچ گاه در ثانیه نیست. اکثراً اختلاف n ساعت و 30 دقیقه می باشد. مثلاً 3.5 ساعت یا 8.5 و ....
حال که اختلاف معلوم شد بایستی این مقدار را با ساعتی که از سرور می گیرید جمع کنید تا ساعت محلی به دست آید. مثلاً اگر با کسر 10.5 ساعت از ساعت سرور، ساعت ایران به دست می آید می توانید ساعت ایران را اینگونه به دست آورید و آن را چاپ کنید:
کد:
Response.Write(Now()+(-10.5/24))
توجه کنید اختلاف را درست اعمال کنید چون جمع با 20 ساعت یا کسر 4 ساعت هرچند در زمان یکسان است ولی تاریخ روز را عوض می کند.
همچنین توابع بسیاری برای کار با ساعت و تاریخ هست که این یکی از ساده ترین راه ها بود.
همچنین به علت اختلاف ساعات بهاری و تابستانی و زمان جلو و عقب کشیدن ساعت کشور ها و این که ایران برنامه اش مشخص نیست ممکن است اشکالاتی در حوالی بهار یا پاییز پیش بیاید که بایستی بررسی کنید.
 

جدیدترین ارسال ها

بالا