مطمئناً میدانید که جاوا اسکریپت یک زبان سمت کلاینت (Client-side) است.
یعنی اگر فرضاً بگویید زمان را به شما نمایش دهد، زمان سیستم کاربر را نمایش میدهد و نه زمان سرور را.
اگر بخواهید ساعت فعلی سرور را به صورت شمارش به بالا (Count-up) به کاربر نمایش دهید، چه کار میکنید؟
اگر فرضاً بخواهید با PHP زمان سرور را به دست آورید، نمیتوانید به صورت پویا روی صفحه نمایش دهید. یعنی ثانیه و دقیقه و ... شمارش نمیکنند.
اکر بخواهید از جاوااسکریپت استفاده کنید، ساعت سیستم کاربر را نشان میدهد.
راه حل: ترکیبی از جاوااسکریپت و یک زبان سمت سرور:
شما باید با استفاده از یک زبان سمت سرور (Server-side) مثل PHP یا ASP تاریخ و ساعت سرور را به دست آورید و سپس آنرا را به عنوان ساعت شروع برای یک شمارنده جاوااسکریپتی تعیین کنید. سپس بگویید همانطور که ساعت سیستم کاربر را میشمارد، لحظه شروع را هم به صورت افزایشی بشمارد و به کاربر نمایش دهد.
بهترین کد برای این کار، قطعه کدی است که در صفحه زیر شاهد خواهید بود:
http://www.dynamicdrive.com/dynamicindex6/localtime.htm
توجه: این کد هم در PHP قابل استفاده است و هم در ASP
فقط کافیست کدهای Step1 را در یک فایل php (خارج از محدوده تگ < ? php) یا asp قرار دهید و هر کجا که خواستید ساعت سرور نمایش داده شود، قطعه کد step2 را قرار دهید.
توجه: برای PHP باید حتماً در قطعه کد دوم، کلمه server-ssi را به server-php تغییر دهید.
توجه: اگر لینک بالا به هر دلیلی قابل استفاده نبود، یک نسخه از آن در آدرس زیر save as شده است:
http://tutorials.aftab.cc/web_designing/javascript/server_time
موفق باشید؛
حمید رضا نیرومند
آدرس کوتاه این مقاله:
http://yourl.ir/js_server_time