
10-10-2006, 14:53
|
|
|
|
חבר מתאריך: 10.10.06
הודעות: 2
|
|
|
בעיה במוד של PHPBB2 - למי שמבין ב PHP
למעשה נראה לי שהשאלה מתאימה יותר לפורום PHP , אבל כיוון שכתוב שם לא להפנות שאלות בנושא PHPBB2 שם, אני מנסה את מזלי כאן:
התקנתי מוד שמשנה את התאריך של היום ואתמול למילים "היום ו"אתמול", וברגע שעשיתי את זה השעה השתבשה וחזרה שעתיים אחורה. שיניתי מחדש והמצב חזר לקדמותו.
זה צריך להיות די פשוט כי כל המוד הוא בעצם השורות הבאות:
#
#-----[ FIND ]------------------------------------------
#
return ( !empty($translate) ) ? strtr(@gmdate($format, $gmepoch + (3600 * $tz)), $translate) : @gmdate($format, $gmepoch + (3600 * $tz));
#
#-----[ REPLACE WITH ]-----------------------------------
#
// friendly date mod\\*******************
$thetime = ( !empty($translate) ) ? strtr(@gmdate($format, $gmepoch + (3600 * $tz)), $translate) : @gmdate($format, $gmepoch + (3600 * $tz));
$L_Today = 'Today';
$L_Yesterday = 'Yesterday';
$time_format = " - h:i a";// - hour:minute am/pm
$date = getdate();
$today = $date['mday'];
$month = $date['mon'];
$year = $date['year'];
$forum_date_today = @gmdate ("d", $gmepoch);
$forum_date_month = @gmdate ("m", $gmepoch);
$forum_date_year = @gmdate ("Y", $gmepoch);
if ($forum_date_today == $today && $forum_date_month == $month && $forum_date_year == $year)
$thetime = $L_Today . @gmdate ($time_format, $gmepoch);//today
else
if ($today != 1 && $forum_date_today == ($today-1) && $forum_date_month == $month && $forum_date_year == $year)
$thetime = $L_Yesterday . @gmdate ($time_format, $gmepoch);//yesterday
else
//if today is 1 and the month is not 1, then we have to check how many days in the previews month
//and then set $yesterday to the last day in the previews month
if ($today == 1 && $month != 1)
{
$yesterday = date ("t", mktime(0,0,0,($month-1),1,$year));//returns how many days in the previews month
if ($forum_date_today == $yesterday && $forum_date_month == ($month-1) && $forum_date_year == $year)
$thetime = $L_Yesterday . @gmdate ($time_format, $gmepoch);//yesterday
}
else
//if we are in the first day in the year
if ($today == 1 && $month == 1)
{
$yesterday = date ("t", mktime(0,0,0,12,1,($year -1)));
if ($forum_date_today == $yesterday && $forum_date_month == 12 && $forum_date_year == ($year-1))
$thetime = $L_Yesterday . @gmdate ($time_format, $gmepoch);//yesterday
}
return ($thetime);
//end friendly date \\*******************************
כאמור, ברגע שאני מחליפה את השורה העליונה בקטע התחתון, השעה מוסטת -2 אחורה.
האם יש כאן מישהו שיכול לעזור לי בתיקון??
|