הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   מחפש| שיטה מקורית לשעון ספירת העומר! (https://hosts.co.il/forums/showthread.php?t=73522)

israeli 12-04-09 23:45

מחפש| שיטה מקורית לשעון ספירת העומר!
 
ב"ה

שלום חברים!

אני מחפש מונה שיספור מספר ויעלה אותו רק משעה 18 בערב ולא מ00 בלילה

אני ממש מודה לכם!

AlmogBaku 13-04-09 00:01

CronJobs

אגב תודה שהזכרת לי :)

israeli 13-04-09 00:20

ציטוט:

נכתב במקור על ידי Baku (פרסם 708336)
CronJobs

אגב תודה שהזכרת לי :)

איך בדיוק CronJobs יעזור לי

AlmogBaku 13-04-09 00:43

תריץ כל יום ב18:00 הוספת 1 למשתנה בקובץ או SQL

mlnn 13-04-09 08:01

תחזיר מtime את הmktime שאתה רוצה ותחלק בימים..

Erez | TrustMedia.co.il 13-04-09 08:51

עשיתי לפני כמה זמן משהו דומה,זה הולך ככה:
תעשה משתנה עם זמן התחלתי(זמן unix)
ותעשה משתנה עם הזמן שצריך לעבור עד שזה יעלה ביום
ואז אתה פשוט לוקח את הזמן הננוכחי(הפונקציה time()) ומחסיר ממנו את הזמן ההתחלתי ואז מחלק מזה את הזמן שעובר כל פעם,מוריד שארית ומה שנשאר זה הימים

Shay Ben Moshe 13-04-09 09:33

אתה עושה טבלה עם ימים שנותרו ושינוי אחרון
בימים שנותרו אתה שם מן הסתם את ההתחלתי ובשינוי אחרון אתה שם את התאריך של אותו היום.
בקובץ PHP אתה בודק מה השעה + מה השינוי האחרון.
עם השעה היא אחרי 18:00 והשינוי האחרון היה אתמול אתה מוריד 1 מהימים שנותרו ומשנה את השינוי אחרון להיום.

אפשר להריץ על זה CRON JOB ואז לא יהיה מצב שתפספס יום או משהו כי גולשים לא יכנסו...
או אם אתה חושב מכמות נמוכה של גולשים, אז אתה עובד לפי הפרש הימים בשעה 18:00 נניח עדכון אחרון לפני שלושה ימים ועכשיו רק 14:00 אז זה יעלה 2 ויעדכן לתאריך של אתמול..

בהצלחה.

yonatan 13-04-09 10:14

ציטוט:

נכתב במקור על ידי nin770 (פרסם 708332)
ב"ה

שלום חברים!

אני מחפש מונה שיספור מספר ויעלה אותו רק משעה 18 בערב ולא מ00 בלילה

אני ממש מודה לכם!

שירבטתי קצת , נראה לי שזה עובד.

http://www.isra3l.net/bash/counter0.1.sh.gz

קוד:

#!/bin/bash
#
# Script Name : Counter
# Script Purpose : to count what is the time from 18pm and report to a file called " time.txt " the current time.
# Author : Yonatan Pingle
# Real Purpose : waste time while playing with bash
# if you can make it better please feel free to send your ideas to :  yonatan "AT" securehost.co.il
#
# Note: i know its ugly usage of inodes - but it was quicky, so only if u want to make it less filesystem intensive be my guest!
#

        #when to start
        [ `date +%H` -eq "18" ]

# should we start?
if [ $? == '0' ] ; then

# lets count! from 18pm and over ....
while true

        do
                # avoid too much cpu usage
                sleep 1800

        # count the first hours since we started
        for i in `echo {17..23}` ; do echo `expr $i + 1` >$i.txt ; [ `date +%H` -eq `cat $i.txt` ] && expr $i + 1 >time.txt ; done

        # count the rest of the days from now on ....
        for i in `echo {0..8}` ; do echo `expr $i + 1` >$i.txt  ; [ `date +%H | sed -e 's/0//g'` -eq `cat $i.txt` ] && expr $i + 1 >time.txt ; done
        for i in `echo {9..16}` ; do echo `expr $i + 1` >$i.txt ; [ `date +%H` -eq `cat $i.txt` ] && expr $i + 1 >time.txt ; done

# the loop ends.
done

# we should not start!
        else

# if something is very wrong you would see this exit status.
# look at the clock! its not six yet!
exit 3

fi

תכין לזה תיקיה משלו כי זה מלכלך אחריו .. חחח זה הקונספט וזה עובד, משם תמשיך הלאה הכל יהיה סבבה

בעקרון הקובץ שמעניין אותך נקרא time.txt
הוא אומר מה השעה הנוכחית.

מה שלא הבנתי כלכך, אחרי שמגיע חצות , אתה רוצה לספור שוב מ 0 ? או להמשיך מונה עולה ..
אם זה מונה עולה , אז תשתמש ברעיון שלי ותתפרע איתו, בהתחלה בניתי את זה כמונה טיפש שכזה....

ToxicBoy21 13-04-09 10:18

בס"ד

קרון ג'וב השיטה הכי קלה.. תבקש מהחברת אחסון שתעשה שכל יום בשעה 8 השרת נכנס לקובץ שאתה אומר להם, והקובץ הזה מוסיף יום אחד למונה במסד נתונים

AlmogBaku 16-04-09 07:58

פתרון יצירתי יותר!

תשתמש בפונקציות gregoriantojd ו- jdtojewish כדי למצוא את התאריך העברי(תשתמש בפורמט מספרי).
לפי התאריך העברי אתה קובע את העומר עפ"י מערך, לגבי השעה - זה שטות של date.

**חשוב שתגדיר איזור זמן של המדינה בה אתה רוצה להשתמש כדי שה-date יעבוד לפי המדינה ולא לפי המדינה של השרת**


בהצלחה!


כל הזמנים הם GMT +2. הזמן כעת הוא 11:04.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ