lostyazilim
tr.link

PHP "x saniye önce"

22 Mesajlar 2.751 Okunma
acebozum
tr.link

miharbisukarak miharbisukarak Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 27.11.2013
  • Yaş/Cinsiyet 35 / E
  • Meslek İnternet Danışmanı
  • Konum İstanbul Avrupa
  • Ad Soyad H** K**
  • Mesajlar 735
  • Beğeniler 121 / 106
  • Ticaret 6, (%100)

ismailke adlı üyeden alıntı

x saniye önce dediğin iki tarih arasındaki tüm fark,
x dakika önce dediğin çıkan farkın 60 a bölümü
diğeride 3600 e bölümü.
yani
$saniye=$tarih1-$tarih2 bu saniye
$dk=$tarih1-$tarih2/60 dakika bu dakika
$saat=$tarih1-$tarih2/60/60 buda saat


İşte o kodları harmanlayamadım php bilgim biraz var ucundan :) yani
 

 

elektronikssl
reklam

ismailke ismailke WM Aracı Kullanıcı
  • Üyelik 31.05.2013
  • Yaş/Cinsiyet 40 / E
  • Meslek Biyolog
  • Konum Ankara
  • Ad Soyad İ** S**
  • Mesajlar 314
  • Beğeniler 77 / 44
  • Ticaret 10, (%100)

miharbisukarak adlı üyeden alıntı

İşte o kodları harmanlayamadım php bilgim biraz var ucundan :) yani


Sen Bunları koyad istediğin kodları ve veritabanındaki satır adlarını yaz bi bakalım :D
 

 

ysnbulut ysnbulut Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 13.07.2013
  • Yaş/Cinsiyet 34 / E
  • Meslek öğrenci
  • Konum Isparta
  • Ad Soyad Y** B**
  • Mesajlar 158
  • Beğeniler 26 / 18
  • Ticaret 1, (%100)
ya sana fonksiyon yazdım ya hala çözemedinmi :) db ye zamanı time() diye yazdır hacı sonra şu fonksiyonu kullan


function timeago($time){
$time=strtotime($time);
$periods = array("saniye", "dakika", "saat", "gün", "hafta", "ay", "yıl", "onyıl");
$lengths = array("60","60","24","7","4.35","12","10");
$now = time();
$difference = $now - $time;
$tense= "önce";
for($j = 0; $difference >= $lengths[$j] && $j < count($lengths)-1; $j++) {
$difference /= $lengths[$j];
}
$difference = round($difference);

return "$difference $periods[$j] $tense ";
}


bunu şu şekilde kullan


//db den gelen zaman $ekzamanı olsa mesela buda 1375057836 gibi bi değer olsa

$ekzamanı = '1375057836';
echo timeago($ekzamanı);
// 45 yıl önce yazar sana bunun sonucu
 

 

miharbisukarak miharbisukarak Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 27.11.2013
  • Yaş/Cinsiyet 35 / E
  • Meslek İnternet Danışmanı
  • Konum İstanbul Avrupa
  • Ad Soyad H** K**
  • Mesajlar 735
  • Beğeniler 121 / 106
  • Ticaret 6, (%100)

ysnbulut adlı üyeden alıntı

ya sana fonksiyon yazdım ya hala çözemedinmi :) db ye zamanı time() diye yazdır hacı sonra şu fonksiyonu kullan


function timeago($time){
$time=strtotime($time);
$periods = array("saniye", "dakika", "saat", "gün", "hafta", "ay", "yıl", "onyıl");
$lengths = array("60","60","24","7","4.35","12","10");
$now = time();
$difference = $now - $time;
$tense= "önce";
for($j = 0; $difference >= $lengths[$j] && $j < count($lengths)-1; $j++) {
$difference /= $lengths[$j];
}
$difference = round($difference);

return "$difference $periods[$j] $tense ";
}


bunu şu şekilde kullan


//db den gelen zaman $ekzamanı olsa mesela buda 1375057836 gibi bi değer olsa

$ekzamanı = '1375057836';
echo timeago($ekzamanı);
// 45 yıl önce yazar sana bunun sonucu


Evet 45 yıl önce yazıyor. Şimdiki zamanı vermesi için napıcam :D

// Kafamın karıştığı nokta şu. DB'ye zamanı time() olarak yazdır dedin ya. Formda hidden inputla gönderiyorum zamanı
">

Veritabanında da tarih tablosuna giriyor tarihi. Veritabanından çekerken nasıl çekeceğim?
 

 

wmaraci
wmaraci

ysnbulut ysnbulut Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 13.07.2013
  • Yaş/Cinsiyet 34 / E
  • Meslek öğrenci
  • Konum Isparta
  • Ad Soyad Y** B**
  • Mesajlar 158
  • Beğeniler 26 / 18
  • Ticaret 1, (%100)

miharbisukarak adlı üyeden alıntı

Evet 45 yıl önce yazıyor. Şimdiki zamanı vermesi için napıcam :D

nasıl yani :) phpde şimdiki zaman yani şuan time() ile yazılıyor..
ayrıca o fonksiyonu değil bunu kullan bu daha iyi bunu kullan...

function once($ptime) {
$etime = time() - $ptime;

if ($etime < 1)
{
return '0 seconds';
}

$a = array( 365 * 24 * 60 * 60 => 'yıl',
30 * 24 * 60 * 60 => 'ay',
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 $alsanasimdikizaman = time(); // şimdiki zaman bu
echo '
';
echo once('1416438600');



Ek Olarak: senin $tarih diye yazdırdığın değeri nasıl tanımladınki ?
db ye nasıl kaydettiğini bilmiom mysql bilgim yok yaw ama input değerine

yazdır olsun bitsin mysql de date falan diye tanımlama drekt int deği olarak düzelt onu int 11 12 değer uzunluğunda yap
 

 

miharbisukarak miharbisukarak Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 27.11.2013
  • Yaş/Cinsiyet 35 / E
  • Meslek İnternet Danışmanı
  • Konum İstanbul Avrupa
  • Ad Soyad H** K**
  • Mesajlar 735
  • Beğeniler 121 / 106
  • Ticaret 6, (%100)
0 olarak çıkıyo :( beceremedim ya

Ek Olarak: nereye eklersem ekliyim olmadı :/
http://kik.nickshare.in
echo "
";
include '../connect/kik.php';
$kik = mysql_query("SELECT * FROM kik ORDER By idkik DESC LIMIT 50");
while($kiks = mysql_fetch_array($kik)):
if($kiks['sex'] == "M"):
echo "
".$kiks['kiku']."".$kiks['sex']."
tarihgelecek
";
elseif($kiks['sex'] == "F"):
echo "
".$kiks['kiku']."".$kiks['sex']."
tarihgelecek
";
else:
echo "
".$kiks['kiku']."
";
endif;
endwhile;
echo "
";
?>


Ek Olarak: Post edince 503 hatası alıyorum
 

 

smhayhan smhayhan WM Aracı Kullanıcı
  • Üyelik 25.12.2011
  • Yaş/Cinsiyet 30 / E
  • Meslek Front/Back-end Developer
  • Konum Ankara
  • Ad Soyad ** **
  • Mesajlar 96
  • Beğeniler 21 / 35
  • Ticaret 0, (%0)
https://github.com/briannesbitt/Carbon
 

 

miharbisukarak miharbisukarak Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 27.11.2013
  • Yaş/Cinsiyet 35 / E
  • Meslek İnternet Danışmanı
  • Konum İstanbul Avrupa
  • Ad Soyad H** K**
  • Mesajlar 735
  • Beğeniler 121 / 106
  • Ticaret 6, (%100)


Keşke açıklamasını da yapsaydınız :)

Ek Olarak: Hallettim, veritabanına unix formatında kaydediyorum zamanı :D ama veritabanından çekerken her gönderide gözükmesini yapamadım :/
 

 

ysnbulut ysnbulut Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 13.07.2013
  • Yaş/Cinsiyet 34 / E
  • Meslek öğrenci
  • Konum Isparta
  • Ad Soyad Y** B**
  • Mesajlar 158
  • Beğeniler 26 / 18
  • Ticaret 1, (%100)

miharbisukarak adlı üyeden alıntı

Keşke açıklamasını da yapsaydınız :)

Ek Olarak: Hallettim, veritabanına unix formatında kaydediyorum zamanı :D ama veritabanından çekerken her gönderide gözükmesini yapamadım :/

nedir bu http://nickshare.in/kik/
sana dedim ya mysql ye time formatında yazdırmıycan normal int değeri olarak tanımlıycan...
 

 

miharbisukarak miharbisukarak Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 27.11.2013
  • Yaş/Cinsiyet 35 / E
  • Meslek İnternet Danışmanı
  • Konum İstanbul Avrupa
  • Ad Soyad H** K**
  • Mesajlar 735
  • Beğeniler 121 / 106
  • Ticaret 6, (%100)

ysnbulut adlı üyeden alıntı

nedir bu http://nickshare.in/kik/
sana dedim ya mysql ye time formatında yazdırmıycan normal int değeri olarak tanımlıycan...


Nick paylaşma platformu hocam. Şimdilik kik messenger uygulaması var akıllı telefonlarda sohbet programı. Daha sonra diğer uygulamalarıda ekleyeceğim.

Nasıl yani anlamadım? Dediğin gibi yaptım int 11 başka birşey eklemedim. Veritabanına unix formatında kaydediyo :confused: 1416505651 şöyle bişey mesela
 

 

wmaraci
wmaraci
Konuyu toplam 11 kişi okuyor. (0 kullanıcı ve 11 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al