Merhabalar
Facebooktaki yorum tarihleri sistemi gibi bir sistemi nasil yapabilirim? Bir konu ekledikten 1 saat sonra 1 saat önce, 1 gün sonra örnegin 1 gün 3 saat 45 dakika önce eklendi gibi nasil göstertebilirim?
Veya arastirabilecegim bir sayfa varmi? googlede baktim fakat pek faydalanamadim.
x gün saat dakika önce sistemini nasil yapabilirim?
6
●4.106
- 17-08-2012, 14:33:03Üyeliği durduruldu<?php
function ne_zaman($zaman){
if($zaman=='') return FALSE;
$zaman = time()-$zaman;
if($zaman<60) return $zaman.' saniye önce';
if($zaman<(60*60)) return ondalik_sil($zaman/(60)).' dakika önce';
if($zaman<(60*60*24)) return ondalik_sil($zaman/(60*60),'.').' saat önce';
if($zaman<(60*60*60*24)) return ondalik_sil($zaman/(60*60*24),'.').' gün önce';
if($zaman<(60*60*60*24*7)) return ondalik_sil($zaman/(60*60*60*24),'.').' hafta önce';
if($zaman>(60*60*60*24*30)) {
$veri = getdate($zaman);
$tarih = $veri['mday'].' ';
$tarih .= ayyaz($veri['mon']);
return $tarih;
}
return FALSE;
}
function ayyaz($ayno) {
switch ($ayno) {
case 1: return 'Ocak'; break;case 2: return 'Şubat'; break;case 3: return 'Mart'; break;case 4: return 'Nisan'; break;
case 5: return 'Mayıs'; break;case 6: return 'Haziran'; break;case 7: return 'Temmuz'; break;case 8: return 'Ağustos'; break;
case 9: return 'Eylül'; break;case 10: return 'Ekim'; break;case 11: return 'Kasım'; break;case 12: return 'Aralık'; break;
}
}
echo ne_zaman(time());
?> - 22-10-2012, 16:27:24Kimlik doğrulama veya yönetimden onay bekliyor.php yöntemini kullandım,bafrali55 adlı üyeden alıntı: mesajı görüntüle
teşekkür ederim,,
demişsin güzel arkadaşım ama ....

Üstteki php kodamayı kullanmadığına eminim
Çünki üstteki kodlamada FONKSİYON eksiği bulunuyor, üstteki kodlamada
return ondalik_sil($zaman/(60)).' dakika önce';
ondalik_sil isimli bir fonksiyon kullanılıyor, lakin üstte o olması gereken ondalik_sil adlı fonksiyon ortada yok__??
PEKİ BU DURUMDA NE OLUR ?
PHP Server büyük bir başarı ve istek ile Call to undefined function, hatası verir.
--R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 16:27:24 -->-> Daha önceki mesaj 16:10:32 --
SüleymanYılmaz adlı üyeden alıntı: mesajı görüntüle
Eksik özel fonksiyon yerine, php kütüphanesinden fonksiyon ve bir iki küçük değİşiklikle çalışır halini yaptım:
BUL:
if($zaman<(60*60)) return ondalik_sil($zaman/(60)).' dakika önce'; if($zaman<(60*60*24)) return ondalik_sil($zaman/(60*60),'.').' saat önce'; if($zaman<(60*60*60*24)) return ondalik_sil($zaman/(60*60*24),'.').' gün önce'; if($zaman<(60*60*60*24*7)) return ondalik_sil($zaman/(60*60*60*24),'.').' hafta önce';
DEĞİŞTİR:
if($zaman<(60*60)) return round($zaman/(60)) . ' dakika önce'; if($zaman<(60*60*24)) return round($zaman/(60*60)) . ' saat önce'; if($zaman<(60*60*60*24)) return round($zaman/(60*60*24)). ' gün önce'; if($zaman<(60*60*60*24*7)) return round($zaman/(60*60*60*24)) . ' hafta önce';
- 22-10-2012, 16:46:26en mantıklısı bu şekil üşenmedim yazdım

ingilizce kısımları değişmek yeterli olur diye düşünüyorum
<html> <head> <script> var guncellemearaligi=5; //saniye bazinda function zamanguncelle() { zamanlispanlar=document.getElementsByTagName('span'); for(i=0;i<zamanlispanlar.length;i++) { if(zamanlispanlar[i].getAttribute('zaman')!==null) { zamanlispanlar[i].innerHTML=timeDifference(parseInt(new Date().getTime() / 1000),zamanlispanlar[i].getAttribute('zaman')); } } setTimeout(zamanguncelle, guncellemearaligi*1000); } function timeDifference(current, previous) { var msPerMinute = 60; var msPerHour = msPerMinute * 60; var msPerDay = msPerHour * 24; var msPerMonth = msPerDay * 30; var msPerYear = msPerDay * 365; var elapsed = current - previous; if (elapsed < msPerMinute) { return Math.round(elapsed) + ' seconds ago'; } else if (elapsed < msPerHour) { return Math.round(elapsed/msPerMinute) + ' minutes ago'; } else if (elapsed < msPerDay ) { return Math.round(elapsed/msPerHour ) + ' hours ago'; } else if (elapsed < msPerMonth) { return 'approximately ' + Math.round(elapsed/msPerDay) + ' days ago'; } else if (elapsed < msPerYear) { return 'approximately ' + Math.round(elapsed/msPerMonth) + ' months ago'; } else { return 'approximately ' + Math.round(elapsed/msPerYear ) + ' years ago'; } } </script> </head> <body> <? $postzamani = (int)microtime(1) - 2; //2 saniye oncesi echo "<span>ne zaman : </span>"; echo "<span zaman='$postzamani'></span>"; ?> <script> zamanguncelle(); </script> </body></html> - 26-11-2012, 18:39:16Kusura bakmayin bu konumu atlamisim. Alttaki kodu buldum yabanci bir siteden. Tam istedigim gibi olmadi ama artik idare ediyorum. Tam istedigim istedigim zaman ayini haftasini ve günü göstertebilecegim bir türdü. Örnegin: 2 ay önce eklenmis ise: 2 Ay 3 Hafta 2 Gün önce eklenmistir. seklinde idi.
function timeago($ptime) { $etime = time() - strtotime($ptime); $a = array( 12 * 30 * 24 * 60 * 60 => 'Yil', 30 * 24 * 60 * 60 => 'Ay', 7 * 24 * 60 * 60 => 'Hatfa', 24 * 60 * 60 => 'Gün', 60 * 60 => 'Saat', 60 => 'Dakika', 1 => 'Saniye' ); foreach($a as $secs => $str) { $d = $etime / $secs; if($d >= 1) { $r = round($d); return $r.' '.$str.' önce'; } } } echo timeago($sql[date]);


