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

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

X-T 13-08-07 18:53

[PHP] שעון כלשהו...
 
שלום,

יש לי סקריפט ב JS לתאריך ושעה מסוימת, נוכחתי לכך שישנה בעיה כלשהי בחלק שהוא סופר לשעה מסוימת,

עכשיו, אני רוצה להגדיר 24 שעות ושהשעה תהיה כל 3 שעות, לדוגמא, הפרשים של 3 שעות, כלומר
12,15,18,21... ( וכן הלאה )

עכשיו המטרה פה שנגיד השעה אצלי 12:40 דקות אז הוא ידע שזאת השעה ושהוא אמור לספור ל 3 בצהרים(15)

אני צריך עזרה עם ה PHP כיוון שמה שאני עשיתי לא מזהה את כל השעות וגורם לי בעיות רציניות,

אשמח לשמוע דרכים לפיתרון ועזרה!!

תודה רבה!

DCB 13-08-07 18:57

לא כל כך הבנתי את השאלה
אולי תראה לנו קוד שנבין יותר לעומק?

X-T 13-08-07 19:00

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

Cream 13-08-07 20:48

אמממ נראה לי הבנתי מה אתה רוצה...אתה רוצה שיהיה קוד שיזהה לבד שהגיע שעה שאתה רוצה? במקרה שלך זה 12,15,18,21,00,03,06,09 נכון? יענו כשעה שקבעת מראש הוא יעשה משהו?

X-T 13-08-07 20:52

יותר נכון אני רוצה לעשות דבר כזה

לשלוף את השעה הנוכחית ולקבל את השעה שהכי קרובה אליו, השעה הקרובה אמורה להיות מספר עגול שהוא כל הזמן בקפיצות של 3 מהשעה 12

Cream 13-08-07 21:12

PHP קוד:

$now_hour date("H");
$next_hour 0;

if (
$now_hour == 13 || $now_hour == 14)
{
     
$next_hour 15;
}
if (
$now_hour == 16 || $now_hour == 17)
{
     
$next_hour 18;
}
if (
$now_hour == 19 || $now_hour == 20)
{
     
$next_hour 21;
}
if (
$now_hour == 22 || $now_hour == 23)
{
     
$next_hour 24;
}
if (
$now_hour == 01 || $now_hour == 02)
{
     
$next_hour 3;
}
if (
$now_hour == 04 || $now_hour == 05)
{
     
$next_hour 6;
}
if (
$now_hour == 07 || $now_hour == 08)
{
     
$next_hour 9;
}
if (
$now_hour == 10 || $now_hour == 11)
{
     
$next_hour 12;


נראה לי זה מה שאתה רוצה...
אבל מה לגבי אם עכשיו שעה 12 או 15? מה אתה רוצה שזה יעשה?
בכל מקרה לכל IF אתה יכול להוסיף ELSE וזה יפעל במידה ועכשיו אחת מהשעות שאתה רוצה...

עריכה:
================
קיצר עכשיו בדקתי וזה עובד...

X-T 13-08-07 21:21

ציטוט:

נכתב במקור על ידי Cream (פרסם 541126)
PHP קוד:

$now_hour date("H");
$next_hour 0;

if (
$now_hour == 13 || $now_hour == 14)
{
     
$next_hour 15;
}
if (
$now_hour == 16 || $now_hour == 17)
{
     
$next_hour 18;
}
if (
$now_hour == 19 || $now_hour == 20)
{
     
$next_hour 21;
}
if (
$now_hour == 22 || $now_hour == 23)
{
     
$next_hour 24;
}
if (
$now_hour == 01 || $now_hour == 02)
{
     
$next_hour 3;
}
if (
$now_hour == 04 || $now_hour == 05)
{
     
$next_hour 6;
}
if (
$now_hour == 07 || $now_hour == 08)
{
     
$next_hour 9;
}
if (
$now_hour == 10 || $now_hour == 11)
{
     
$next_hour 12;


נראה לי זה מה שאתה רוצה...
אבל מה לגבי אם עכשיו שעה 12 או 15? מה אתה רוצה שזה יעשה?
בכל מקרה לכל IF אתה יכול להוסיף ELSE וזה יפעל במידה ועכשיו אחת מהשעות שאתה רוצה...

עריכה:
================
קיצר עכשיו בדקתי וזה עובד...

כן זה מה שאני רוצה אבל יש לי בעיות עם מספר שעות מסוימות :\

DCB 13-08-07 21:22

האמת עדיף לך לעבוד עם
אם השעה הנוכחית גדולה\קטנה משעה X תעשה ככה וככה
שעה X היא שעה עגולה בכפולות של 3 לצורך העניין
מה ש cream הציע יפעיל את הפעולה שאתה רוצה רק אם נפלת בול על השעה המיועדת

בכל אופן אם אתה מפעיל את הפונקציה על השרת תיצור פעולת טיימינג כזה שתפעל כל פעם ש
PHP קוד:

date("h")%3==0 


Cream 13-08-07 21:29

ציטוט:

נכתב במקור על ידי DCB (פרסם 541130)
האמת עדיף לך לעבוד עם
אם השעה הנוכחית גדולה\קטנה משעה X תעשה ככה וככה
שעה X היא שעה עגולה בכפולות של 3 לצורך העניין
מה ש cream הציע יפעיל את הפעולה שאתה רוצה רק אם נפלת בול על השעה המיועדת

בכל אופן אם אתה מפעיל את הפונקציה על השרת תיצור פעולת טיימינג כזה שתפעל כל פעם ש
PHP קוד:

date("h")%3==


לא נכון...לא צריך בול...אני בודק רק את השעה לא דקות ולא שניות...
אני בדקתי את זה בפועל...עכשיו השעה 22 אז השעה הבא היא 00 או 24 זה אותו דבר..בדקתי על השרת שלי וזה פעל...

ואיזה בעיה ואם איזה שעות זה עושה לך?

X-T 13-08-07 21:48

ציטוט:

נכתב במקור על ידי Cream (פרסם 541135)
לא נכון...לא צריך בול...אני בודק רק את השעה לא דקות ולא שניות...
אני בדקתי את זה בפועל...עכשיו השעה 22 אז השעה הבא היא 00 או 24 זה אותו דבר..בדקתי על השרת שלי וזה פעל...

ואיזה בעיה ואם איזה שעות זה עושה לך?

חשוב לציין שמהשעה 12 הטיימר מתחיל לספור המון המון שעות משום מה.


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

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