ايران ويج

نسخه‌ی کامل: آموزش به دست آوردن تاریخ و ساعت سرور
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
سلام دوستان و اساتید گرامی .
دسترسی به تاریخ و ساعت دقیق و غیرقابل تغییر توسط کاربر همیشه از نیاز های مهم اکثر برنامه هاست.
برای این کار دو راه وجود داره :
1- استفاده از تاریخ و ساعت ویندوز که ریسک بسیار بالایی داره و اصلا قابل اطمینان نیست ، چون به راحتی توسط کاربر تغییر داده میشه و حتی ممکنه تاریخ و ساعت سیستم کاربر اصلا درست تنظیم نشده باشه .


2- بدست آوردن تاریخ و ساعت یک سرور از طریق اینترنت ، در این روش صحت تاریخ و ساعت به دست آمده تضمین شده هست و کاربر امکان تغییر اون رو نداره .

برای اجرای روش دوم نیاز به پیاده سازی موارد زیر دارید :

1 - یک برنامه سرور ساید (برنامه ای که طرف سرور اجرا بشه) که تاریخ و ساعت سرور رو بدست بیاره
برای این بخش ما از از زبان PHP استفاده میکنیم ، چون علاوه بر ساده بودن،بر روی تمامی هاست های ویندوز و لینوکس قابل اجراست .
در زبان PHP برای بدست آوردن تاریخ و ساعت سرور از تابع date استفاده میشه ، که در کد زیر شاهد اون هستید :

کد php:
//www.arshamsoft.com
<?php
echo "{BeginD}";
echo 
date("Y/m/d"); 
echo 
"{EndD}";
echo 
"<br>"
echo 
"{BeginT}";
echo 
date("H:i:s");
echo 
"{EndT}";
?>

* تاریخ و ساعت رو بین دو واژه اختصاصی قرار میدیم که بعدا راحت بتونیم از سورس صفحه تفکیکشون کنیم !

کد های بالا رو کپی کنید تو Note Pad و با هر اسمی که دوست دارید و پسوند .php ذخیره کنید (مثلا datetime.php )، و فایل ذخیره شده رو بر روی هاستتون آپلود کنید .

2 - به دست آوردن سورس صفحه وبی که با PHP نوشته بودیم و بر روی هاست آپلود کرده بودیم ( بنده برای این کار از کنترل Microsoft Internet Transfer استفاده می کنم) ، و جدا کردن تاریخ و ساعت بدست آمده از سورس صفحه :

کد:
'www.arshamsoft.com

Option Explicit

Private Sub Command1_Click()

Dim strPageSource As String, strDate As String, strTime As String

Command1.Enabled = False
Command1.Caption = "Please Wait..."

strPageSource = Inet1.OpenURL("http://www.arshamsoft.com/gdate/datetime.php")

strDate = SearchBetween(strPageSource, "{BeginD}", "{EndD}") 'Get Date

strTime = SearchBetween(strPageSource, "{BeginT}", "{EndT}") 'Get Time

MsgBox "Server Date : " & strDate & vbCrLf & "Server Time : " & strTime, vbInformation, "Arshamsoft"

Command1.Enabled = True
Command1.Caption = "Get Server Date And Time"

End Sub

Public Function SearchBetween(IStringStr As String, IBefore As String, IPast As String)
Dim iString As String
iString = IStringStr
iString = Right(iString, Len(iString) - InStr(iString, IBefore) - Len(IBefore) + 1)
iString = Mid(iString, 1, InStr(iString, IPast) - 1)
SearchBetween = iString
End Function

* به جای'http://www.arshamsoft.com/gdate/datetime.php آدرس و نام فایل PHP بر روی هاست هاست خودتون رو بدید .

* از تابع SearchBetween برای پیدا کردن تاریخ و ساعت در سورس صفحه استفاده شده .

سورس کامل برنامه هم ضمیمه شد .

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

موفق و سربلند باشیدCool.