PDA

View Full Version : مشکل در گرفتن ساعت سرور در یک فرمت خاص



محمد شهرکی
چهارشنبه 24 خرداد 1391, 11:49 صبح
سلام دوستان یه همچین تابعی دارم که ساعت سرور رو بر می گردونه اما مشکلی که این تابع داره اینکه ساعت رو یک ساعت عقب نشون میده و اینکه مواقعی هم که ساعت ها عقب جلو میشن , این تابع نیز ساعت درست رو نشون نمیده . آخر متوجه نشدم مشکلش کجاست !!!



/*return current time in specified format*/
function return_date($s_date, $beformated=false){
date_default_timezone_set("GMT");
$b_time=date("H\:i\:s");
if ($s_date=="hs"){
$b_time=split(":",$b_time);
$b_time[1]=$b_time[1]+30;
if ($b_time[1]>=60){$b_time[1]=$b_time[1]-60; $b_time[0]=$b_time[0]+1;}
$b_time[0]=$b_time[0]+4;
if ($b_time[0]>=24) $b_time[0]=$b_time[0]-24;
$b_time[0]=$b_time[0]-1;
if ($b_time[0]<0) $b_time[0]=23;
$b_time=$b_time[0] . ":" . $b_time[1] . ":" . $b_time[2];}
if ($beformated==true){
$s=split(":",$b_time);
$s[0]=sprintf("%02s",$s[0]);
$s[1]=sprintf("%02s",$s[1]);
$s[2]=sprintf("%02s",$s[2]);
$b_time=$s[0] . ":" . $s[1] . ":" . $s[2];}
return $b_time;
}

MMSHFE
چهارشنبه 24 خرداد 1391, 23:42 عصر
از این تابع استفاده کنید:


function return_date($s_date, $beformatted = false){
date_default_timezone_set($s_date == 'hs' ? 'Asia/Tehran' : 'GMT');
list($h, $m, $s) = explode(':', date('H:i:s'));
if($beformatted) {
$h = sptring('%02s', $h);
$m = sptring('%02s', $m);
$s = sptring('%02s', $s);
}
return $h.':'.$m.':'.$s;
}

موفق باشید.

ameri110
پنج شنبه 25 خرداد 1391, 11:06 صبح
میشه یه کد هم برای تاریخ بفرمایید ؟

MMSHFE
پنج شنبه 25 خرداد 1391, 11:22 صبح
این دو تابع برای تاریخ و زمان:


function return_time($s_date, $beformatted = false){
date_default_timezone_set($s_date == 'hs' ? 'Asia/Tehran' : 'GMT');
list($h, $m, $s) = explode(':', date('H:i:s'));
if($beformatted) {
$h = sptring('%02s', $h);
$m = sptring('%02s', $m);
$s = sptring('%02s', $s);
}
return $h.':'.$m.':'.$s;
}
function return_date($s_date, $beformatted = false){
date_default_timezone_set($s_date == 'hs' ? 'Asia/Tehran' : 'GMT');
list($y, $m, $d) = explode('/', date('Y/m/d'));
if($beformatted) {
$y = sptring('%02s', $y);
$m = sptring('%02s', $m);
$d = sptring('%02s', $d);
}
return $y.'/'.$m.'/'.$d;
}

php_love
یک شنبه 28 خرداد 1391, 12:18 عصر
با تشکر از استاد گرامی . استاد میشه در رابطه با تعیین درست نوع تاریخ در دیتابیس توضیح بدین و اینکه در برنامه ای مثل php از چه تابعی جهت ذخیره سازی تاریخ در بانک استفاده کنیم . من همیشه نوع فیلد تاریخ رو (50)varchar میزارم و از تابع date برای گرفتن تاریخ استفاده می کنم !!!!

soroush.r70
یک شنبه 28 خرداد 1391, 13:35 عصر
منم سوال کنم چطوری می شه به این صورت تاریخ و ساعت رو گرفت

مثلا : یکشنبه , 13 مهر 1391 , 21:30

MMSHFE
یک شنبه 28 خرداد 1391, 13:47 عصر
با تشکر از استاد گرامی. استاد میشه در رابطه با تعیین درست نوع تاریخ در دیتابیس توضیح بدین و اینکه در برنامه ای مثل php از چه تابعی جهت ذخیره سازی تاریخ در بانک استفاده کنیم . من همیشه نوع فیلد تاریخ رو (50)varchar میزارم و از تابع date برای گرفتن تاریخ استفاده می کنم !!!!
من شخصاً نوع int رو توی دیتابیس میگذارم و خروجی تابع time یعنی TimeStamp جاری رو ذخیره میکنم و هرموقع بخوام هم با کمک تابع date به هر شکلی که بخوام درش میارم و نشون میدم. مزیتش هم زیاده که قبلاً بحث شده.

منم سوال کنم چطوری می شه به این صورت تاریخ و ساعت رو گرفت
مثلا : یکشنبه , 13 مهر 1391 , 21:30
با کمک اسکریپت JDF که ضمیمه کردم. مثال:


require_once 'jdf.php';
echo jdate('l d F Y H:i');

موفق باشید.

php_love
یک شنبه 25 تیر 1391, 10:23 صبح
سلام . این تابعی که ساعت رو بر اساسه ساعت تنظیمی بر روی سیستم کاربر نشون میده . چطور میشه این تابع رو با ساعت سرور تنظیم کرد

function show_time_1297111207()
{
d=new Date();
H=d.getHours();H=(H<10)?"0"+H:H;
i=d.getMinutes();i=(i<10)?"0"+i:i;
s=d.getSeconds();s=(s<10)?"0"+s:s;
document.show_time_1297111207.show_time_1297111207 .value=H+":"+i+":"+s;
setTimeout("show_time_1297111207()",1000)
}
show_time_1297111207();


ممنون

MMSHFE
سه شنبه 27 تیر 1391, 17:22 عصر
دوست عزیز کلاً Javascript از سیستم کلاینت استفاده میکنه. برای استفاده از سیستم سرور باید از PHP و ترکیب اون با AJAX استفاده کنید. موفق باشید.