View Full Version : سوال: چگونه می توان از ساعت ایران در یک نرم افزار برای برنامه ریزی استفاده کرد؟
mtn677
چهارشنبه 01 خرداد 1392, 16:07 عصر
سلام
من میخوام یه نرم افزار داشته باشم که مثلا وقتی ساعت 18 شد یک کاری انجام بده به عنوان مثال اگه ساعت 18 شد رنگ یک متن که در نرم افزار هست تغییر کنه ولی نمیخوام از ساعت ویندوز استفاده کنم چون ساعت ویندوز ممکنه تنظیم نباشه یا تنظیماتش بعد از یک مدت به هم بریزه.باید چه کار کنم؟نرم افزار به اینترنت هم دسترسی داره آیا میشه از ساعت یک سایت برای اینکار استفاده کرد؟
SlowCode
چهارشنبه 01 خرداد 1392, 16:30 عصر
سلام
کنترل webbrowser رو به فرمت اضافه کن بعد این کد رو بریز تو فرمت:
Private Sub Form_Load()
WebBrowser1.Navigate "http://www.time.ir/"
timer1.interval=1000
End Sub
Private Sub Timer1_Timer()
On Error Resume Next
Label1 = WebBrowser1.Document.GetElementByID("timeWrapper").innerhtml
Label1.Refresh
End Sub
mtn677
چهارشنبه 01 خرداد 1392, 17:11 عصر
یک سوال دیگه
فرض کن نرم افزار من شامل دوتا فرم هست و به صورت exe ذخیره شده حالا می خوام اگه ساعت بین 18 تا 19 بود اگه نرم افزار رو اجرا کردم فرم یک نمایش داده بشه و در غیر اینصورت فرم دو.میشه؟
SlowCode
پنج شنبه 02 خرداد 1392, 10:17 صبح
اگه همینی رو که گفتی به انگلیسی تبدیل کنی تقریبا همون کد وی بی میشه!
Private Sub Form_Load()
WebBrowser1.Navigate "http://www.time.ir/"
Timer1.Interval = 1000
End Sub
Private Sub Timer1_Timer()
On Error Resume Next
t = WebBrowser1.Document.GetElementByID("timeWrapper").innerhtml
If IsDate(t) Then
If Not (Hour(t) <= 19 And Hour(t) >= 18) Then
Form2.Show
Hide Me ' Or Unload me
End If
Label1 = t
Label1.Refresh
End If
End Sub
vbhamed
جمعه 03 خرداد 1392, 08:13 صبح
سلام
البته به يك موضوع دقت كنيد
اگر وب سايت time.ir بسته بشه يا بالا نياد يا Id باكس تايم در اون تغيير كنه يا اينترنت قطع بشه، برنامتون به مشكل بر ميخوره
بهتره اولا نه با يك سايت بلكه با چند تا سايت معتبر كار كنيد يا اگر خودتون دامين و هاست داريد با اون كار كنيد
يا اينكه بهتره در فواصل زماني مشخص با استفاده از همين روش، ساعت كامپيوتر رو تنظيم كنيد و از اون استفاده كنيد
اگر هم خيلي كارتون مهمه بايد يك مدار الكترونيكي ساعت و تاريخ سفارش بدين كه به كامپيوتر وصل بشه و اطلاعات رو بفرسته و تغييرش هم يه صورت نرم افزاري و دست خودتون باشه
mtn677
جمعه 03 خرداد 1392, 11:13 صبح
سلام
البته به يك موضوع دقت كنيد
اگر وب سايت time.ir بسته بشه يا بالا نياد يا Id باكس تايم در اون تغيير كنه يا اينترنت قطع بشه، برنامتون به مشكل بر ميخوره
بهتره اولا نه با يك سايت بلكه با چند تا سايت معتبر كار كنيد يا اگر خودتون دامين و هاست داريد با اون كار كنيد
يا اينكه بهتره در فواصل زماني مشخص با استفاده از همين روش، ساعت كامپيوتر رو تنظيم كنيد و از اون استفاده كنيد
اگر هم خيلي كارتون مهمه بايد يك مدار الكترونيكي ساعت و تاريخ سفارش بدين كه به كامپيوتر وصل بشه و اطلاعات رو بفرسته و تغييرش هم يه صورت نرم افزاري و دست خودتون باشه
بله دوست عزیز حرف شما کاملا درسته.دامین و هاست دارم ولی نمی خوام از اون استفاده کنم. با وبلاگ میشه این کارو انجام داد؟مثلا از کد جاوا اسکریپت استفاده کرد؟من چندتا کد جاوا اسکریپت گرفتم ولی متاسفانه از ساعت ویندوز استفاده میکرد؟کد فلش هم گرفتم که دوتا مشکل داشت یکی اینکه ساعتش به صورتی نبود که بشه از کد ان استفاده کرد و دیگر اینکه از یک سایت دیگه برای تنظیم ساعت استفاده می کرد.اگه یک کد باشه که هم مستقل از ساعت ویندوز باشه و هم از سایت دیگه تغذیه نشده باشه خوبه نمیدونم کدی با این ویژگیها وجود داره یا نه؟
vbhamed
جمعه 03 خرداد 1392, 20:01 عصر
سلام
با اين حساب پس از كجا ميخواد ساعت رو بياره، البته براي وب سايت ميشه ساعت سرور رو بخونه ولي در مورد وبلاگ اگر سايت پشتيبان وبلاگ اجازه استفاده از همه دستورات مثلا php رو بده شايد بشه ساعت سرورش رو خوند
mtn677
جمعه 03 خرداد 1392, 21:06 عصر
سلام
پس با این حساب استفاده از دامنه و هاست خودمان بهترین راه حل می باشد.
vbhamed
شنبه 04 خرداد 1392, 00:06 صبح
سلام
بله مطمئن تره اما باز هم بهتره از چند تا همزمان استفاده كنيد چون شايد سرور خودتون هم down بشه
mtn677
یک شنبه 05 خرداد 1392, 14:09 عصر
سلام
اگه بخوام از هاست خودم استفاده کنم باید چه کار کنم؟از php باید استفاده کنم؟هاست من ایرانی نیست من ساعت ایرانو میخوام.
SlowCode
یک شنبه 05 خرداد 1392, 16:21 عصر
سلام
بله باید از php و Ajax jQuery استفاده کنی.
مشکلی نیست، تو php میتونی timezone رو رو ساعت تهران تنظیم کنی بعد زمان رو توی صفحه چاپ میکنی حالا با ای جکس میای زمان رو هرلحظه رو صفحه چاپ میکنی.
به جای این کار بهتره ساعت رو از چندتا سایت بگیری بعد مقایسه کنی و نشون بدی.
mtn677
پنج شنبه 06 تیر 1392, 17:53 عصر
سلام
کنترل webbrowser رو به فرمت اضافه کن بعد این کد رو بریز تو فرمت:
Private Sub Form_Load()
WebBrowser1.Navigate "http://www.time.ir/"
timer1.interval=1000
End Sub
Private Sub Timer1_Timer()
On Error Resume Next
Label1 = WebBrowser1.Document.GetElementByID("timeWrapper").innerhtml
Label1.Refresh
End Sub
سلام
امکان این هست که ساعت موجود در سایت www.time.ir رو توی یک وبلاگ یا سایت خودم نمایش بدم بعدش از این کد که نوشتی استفاده کنم و به جای www.time.ir آدرس وبلاگ یا سایت خودم رو وارد کنم؟
SlowCode
پنج شنبه 06 تیر 1392, 19:34 عصر
سلام
آره امکانش هست ولی اینکه شما بیای زمان رو از اون سایت بخونی بعد تو سایت خودت نشون بدی اصلا کار درستی نیست! مشکلات هم بیشتر میشن.
شما اگه سایت داری کافیه از کلاس PersianCalendar یا کلاس های مشابه اون برای بدست آوردن زمان استفاده کنی.
mtn677
پنج شنبه 06 تیر 1392, 19:56 عصر
سلام
آره امکانش هست ولی اینکه شما بیای زمان رو از اون سایت بخونی بعد تو سایت خودت نشون بدی اصلا کار درستی نیست! مشکلات هم بیشتر میشن.
شما اگه سایت داری کافیه از کلاس PersianCalendar یا کلاس های مشابه اون برای بدست آوردن زمان استفاده کنی.
از چه نظر درست نیست؟
من از برنامه نویسی وب سر در نمیارم.یه هاست رایگان از somee.com گرفتم که هاست ویندوز هست رو اون میشه پیاده کنم؟میشه سورس کاملشو بگی؟
alipoor2009
جمعه 07 تیر 1392, 05:56 صبح
می تونی یه دستور شرطی تعریف کنی که اگه اینترنت قطع بود ناچارا از ساعت ویندوز استفاده کنه و هر وقت هم که به اینترنت وصل شدی ساعت سیستم با ساعت سایت مچ بشه - دستوراتشم خیلی راحته ! نتونستی بگو اگه وقت کردم می زارم
alipoor2009
جمعه 07 تیر 1392, 06:07 صبح
تاریخ و ساعت رو بین دو واژه اختصاصی قرار میدیم که بعدا راحت بتونیم از سورس صفحه تفکیکشون کنیم !
کد های بالا رو کپی کنید تو Note Pad و با هر اسمی که دوست دارید و پسوند .php ذخیره کنید (مثلا nazanin.php )، و فایل ذخیره شده رو بر روی هاستتون آپلود کنید .
2 - به دست آوردن سورس صفحه وبی که با PHP نوشته بودیم و بر روی هاست آپلود کرده بودیم ( بنده برای این کار از کنترل Microsoft Internet Transfer استفاده می کنم) ، و جدا کردن تاریخ و ساعت بدست آمده از سورس صفحه :
<?php
echo "{BeginD}";
echo date("Y/m/d");
echo "{EndD}";
echo "<br>";
echo "{BeginT}";
echo date("H:i:s");
echo "{EndT}";
?>
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.tug.ir/clock/nazanin.php")
strDate = SearchBetween(strPageSource, "{BeginD}", "{EndD}") 'Get Date
strTime = SearchBetween(strPageSource, "{BeginT}", "{EndT}") 'Get Time
MsgBox "Server Date : " & strDate & vbCrLf & "Server Time : " & strTime, vbInformation, "MSG"
Command1.Enabled = True
Command1.Caption = "Get Server Date And Time"
End Sub
به جای http://www.tug.ir/clock/nazanin.php آدرس و نام فایل PHP بر روی هاست هاست خودتون رو بدید .
از تابع SearchBetween برای پیدا کردن تاریخ و ساعت در سورس صفحه استفاده شده .:لبخندساده:
mtn677
جمعه 07 تیر 1392, 11:49 صبح
سلام
تشکر
اگه بخوام ساعت در صفحه اول سایتم نمایش داده بشه باید چکار کنم؟
AxissXs
جمعه 07 تیر 1392, 12:31 عصر
درود
نظر من اینه که از سرور های معتبر و پایداری مثل:
time.nist.gov
time-a.timefreq.bldrdoc.gov
utcnist.colorado.edu
ntp1.cmc.ec.gc.ca
clock.via.net
time.asia.apple.com
استفاده کنی
میتونی با تلنت تایم رو ازشون بگیری و به منطقه زمانی تهران برگردونی
این سرور های معمولا تایم منطقه گرینویچ رو بهت میدن
mtn677
جمعه 07 تیر 1392, 13:43 عصر
درود
نظر من اینه که از سرور های معتبر و پایداری مثل:
time.nist.gov
time-a.timefreq.bldrdoc.gov
utcnist.colorado.edu
ntp1.cmc.ec.gc.ca
clock.via.net
time.asia.apple.com
استفاده کنی
میتونی با تلنت تایم رو ازشون بگیری و به منطقه زمانی تهران برگردونی
این سرور های معمولا تایم منطقه گرینویچ رو بهت میدن
سلام
اگه ممکنه بیشتر توضیح بدید.من میخوام ساعت ایران رو در سایت خودم نشون بدم حالا هرجور باشه مهم نیست فقط پایدار باشه.این تلنت که گفتی چی هست؟
alipoor2009
جمعه 07 تیر 1392, 14:23 عصر
من باید بدونم شما با کدوم CMS داری کار می کنی یا نه فقط می خوای برای ساعت برنامت از اون استفاده کنی ؟ اگه می شه آدرس سایتت رو قرار بده
mtn677
جمعه 07 تیر 1392, 14:52 عصر
من باید بدونم شما با کدوم CMS داری کار می کنی یا نه فقط می خوای برای ساعت برنامت از اون استفاده کنی ؟ اگه می شه آدرس سایتت رو قرار بده
فعلا از هاست رایگان somee.com استفاده میکنم.شکل ظاهری ساعت یا موقعیت مکانی ساعت در سایتم مهم نیست فقط می خوام صفحه اول سایتم یک ساعت داشته باشه و بتونم برای ساعت برنامم از اون استفاده کنم.متاسفانه اسم سایت رو نمیتونم بگم.
alipoor2009
جمعه 07 تیر 1392, 16:39 عصر
فایل PHP که درست کردی را با نام index در Public_html آپلود کن ---- > index.html
AxissXs
جمعه 07 تیر 1392, 18:34 عصر
دوست عزیز
من یک سورس برات آماده کردم
توش بجای تلنت از XMLHTTP استفاده کردم
اگه متوجه کدها نشدی بگو تا برات توضیح بدم
توش کلی سرور نوشتم برات
یه لیست سرور با اطلاعات هم اینجا هست:
NIST Internet Time Servers (http://tf.nist.gov/tf-cgi/servers.cgi)
به نظر من بهترین سرور time.nist.gov هست که توی لیست برات گذاشتم
امیدوارم کمکت کنه
.:|AxissXs|:.
mtn677
جمعه 07 تیر 1392, 20:12 عصر
دوست عزیز
من یک سورس برات آماده کردم
توش بجای تلنت از XMLHTTP استفاده کردم
اگه متوجه کدها نشدی بگو تا برات توضیح بدم
توش کلی سرور نوشتم برات
یه لیست سرور با اطلاعات هم اینجا هست:
NIST Internet Time Servers (http://tf.nist.gov/tf-cgi/servers.cgi)
به نظر من بهترین سرور time.nist.gov هست که توی لیست برات گذاشتم
امیدوارم کمکت کنه
.:|AxissXs|:.
واقعا که خیلی خیلی عالی بود به ویژه برای time.nist.gov ممنون.
ولی بعضی وقتا خطا میده و به این گیر میده: xPost.Send
سرعت رسیدن به تایم خیلی برام مهمه این سرعت به سرعت اینترنت بستگی داره؟
alipoor2009
جمعه 07 تیر 1392, 20:33 عصر
سرعت اینترنت و سرعت هاست و ترافیک شبکه و سایت time.nist.gov سرعت خوبی نداره و همچنین هاست های رایگان - اگه خیلی مهمه بهتره یک هاست خوب بخری
mtn677
جمعه 07 تیر 1392, 20:51 عصر
سرعت اینترنت و سرعت هاست و ترافیک شبکه و سایت time.nist.gov سرعت خوبی نداره و همچنین هاست های رایگان - اگه خیلی مهمه بهتره یک هاست خوب بخری
آره کاملا درسته ولی من فعلا به صورت آزمایشی دارم رو یه برنامه کار میکنم.یه هاست 10 مگ هم کارمو راه میندازه:لبخندساده:بابت راهنمایی ممنون:لبخندساده:فعلا می خوام بهترین راه رو پیدا کنم.
AxissXs
شنبه 08 تیر 1392, 11:34 صبح
قابلی نداشت دوست من
مشکلی که میگی احتمالا از اینترنته یا از سروری که انتخاب کردی
اگر به لینکی که دادم بری
میتونی یه لیست عالی از سرور ها با وضعیت آنلاین یا آفلاین بودنشون ببینی
در ضمن
سرور time.nist.gov سرعت پاسخگوییش روی پورت 80 به طور متوسط 150 میلی ثانیه و در زمان ترافیک بسیار سنگین 350 میلی ثانیه
و من هم توی اون برنامه از پورت 80 استفاده کردم
و همچنین پاسخگوییش به تلنت زیر 100 میلی ثانیه هست و روی پورت 13 (همان پورت SNTP یا زمان سرور) 210 میلی ثانیه
سرور Time.nist.gov یک سرور دولتی هست و میتونی بهش اعتماد کنی
توجه داشته باش که بعضی از اون سرور هایی که دادم واسه کشور های خاصی هست و اگر UTC رو False بذاری تایم محلی سرور رو بهت میده
mtn677
شنبه 08 تیر 1392, 20:53 عصر
قابلی نداشت دوست من
مشکلی که میگی احتمالا از اینترنته یا از سروری که انتخاب کردی
اگر به لینکی که دادم بری
میتونی یه لیست عالی از سرور ها با وضعیت آنلاین یا آفلاین بودنشون ببینی
در ضمن
سرور time.nist.gov سرعت پاسخگوییش روی پورت 80 به طور متوسط 150 میلی ثانیه و در زمان ترافیک بسیار سنگین 350 میلی ثانیه
و من هم توی اون برنامه از پورت 80 استفاده کردم
و همچنین پاسخگوییش به تلنت زیر 100 میلی ثانیه هست و روی پورت 13 (همان پورت SNTP یا زمان سرور) 210 میلی ثانیه
سرور Time.nist.gov یک سرور دولتی هست و میتونی بهش اعتماد کنی
توجه داشته باش که بعضی از اون سرور هایی که دادم واسه کشور های خاصی هست و اگر UTC رو False بذاری تایم محلی سرور رو بهت میده
تشکر
میتونی سورس مربوط به تلنت رو هم بذاری؟فقط برای سرور Time.nist.gov چون اینطور که از حرفهات فهمیدم سرعتش بالاتره.
mtn677
یک شنبه 09 تیر 1392, 23:50 عصر
تاریخ و ساعت رو بین دو واژه اختصاصی قرار میدیم که بعدا راحت بتونیم از سورس صفحه تفکیکشون کنیم !
کد های بالا رو کپی کنید تو Note Pad و با هر اسمی که دوست دارید و پسوند .php ذخیره کنید (مثلا nazanin.php )، و فایل ذخیره شده رو بر روی هاستتون آپلود کنید .
2 - به دست آوردن سورس صفحه وبی که با PHP نوشته بودیم و بر روی هاست آپلود کرده بودیم ( بنده برای این کار از کنترل Microsoft Internet Transfer استفاده می کنم) ، و جدا کردن تاریخ و ساعت بدست آمده از سورس صفحه :
<?php
echo "{BeginD}";
echo date("Y/m/d");
echo "{EndD}";
echo "<br>";
echo "{BeginT}";
echo date("H:i:s");
echo "{EndT}";
?>
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.tug.ir/clock/nazanin.php")
strDate = SearchBetween(strPageSource, "{BeginD}", "{EndD}") 'Get Date
strTime = SearchBetween(strPageSource, "{BeginT}", "{EndT}") 'Get Time
MsgBox "Server Date : " & strDate & vbCrLf & "Server Time : " & strTime, vbInformation, "MSG"
Command1.Enabled = True
Command1.Caption = "Get Server Date And Time"
End Sub
به جای http://www.tug.ir/clock/nazanin.php آدرس و نام فایل PHP بر روی هاست هاست خودتون رو بدید .
از تابع SearchBetween برای پیدا کردن تاریخ و ساعت در سورس صفحه استفاده شده .:لبخندساده:
نمیشه کاری کرد که ساعت ایرانو نشون بده؟
ارور میده.اونجا که نوشتی strPageSource
mtn677
دوشنبه 10 تیر 1392, 09:39 صبح
مشکل ساعت ایرانو حل کردم با گذاشتن کد:
date_default_timezone_set('Asia/Tehran');
ولی هنوز نتونستم با vb ساعتو دریافت کنم
alipoor2009
دوشنبه 10 تیر 1392, 13:33 عصر
یه لیبل درست کن تو php و بهش یه آی دی بده و مقدار ساعت رو بریز توش و بعد تو وی بی آی دی شو فراخوانی کن
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.