|
php script kaç kişi online (gösterim sayısı: 2.852)
|
| Yazan |
Konu içeriği |
|
CaferGenc
[CaferGenc]
Kayıt Tarihi: 29.03.2009
İleti Sayısı: 119
Şehir: YurtDışı
Durum: Forumda Değil
E-Posta Gönder
Özel ileti Gönder
|
Konu Tarihi: 22.08.2010- 17:11
Merhabalar,
Sitemin Anasayfasina bi php online script koymak istiyorum,basit birseyde olabilir yeterki dogru düzgün calissin,bi kac yerden bulmusdum ama iste hep hata yapiyordu.
Online script derken yani sitemde suan kac kisi online diye bi script ariyorum.
umarim yardimci olan biri cikar.
dedigim gibi cok basit birseyde olabilir,örnek : Sitede suan 1 kisi online,
bunun gibi.
|
|
|
|
Online Kişi Sayacı.
|
| Yazan |
Cevap içeriği |
|

Hyper
[Erhan Şentürk]
Kayıt Tarihi: 14.12.2010
İleti Sayısı: 40
Şehir: Ordu
Durum: Forumda Değil
E-Posta Gönder
Web Adresi
Özel ileti Gönder
|
Cevap Tarihi: 02.03.2011- 00:58
Merhaba istediğiniz sayaç sistemi hemen aşağı'dadır.
Aşama 1
İlk Olarak 3 adet sql sorgularımızı not defterine yapıştırıp sırasıyla 1.sql 2.sql 3.sql olarak kayıt edelim bir yere.
Sql Sorgusu 1
CREATE TABLE `ip_sayaci` (
`id` int(11) NOT NULL auto_increment,
`tarih` date NOT NULL,
`tiklama` int(11) NOT NULL,
`ip` varchar(50) NOT NULL,
PRIMARY KEY (`id`)
)
Sql Sorgusu 2
CREATE TABLE `toplam_sayac` (
`id` int(11) NOT NULL auto_increment,
`toplam_tekil` int(11) NOT NULL,
`toplam_cogul` int(11) NOT NULL,
PRIMARY KEY (`id`)
)
Sql Sorgusu 3
CREATE TABLE `online_ziyaretci` (
`id` int(11) NOT NULL auto_increment,
`ip` varchar(50) NOT NULL,
`tarih` int(11) NOT NULL,
PRIMARY KEY (`id`)
)
Evet yukarıda bulunan 3 tabloyu teker teker not defterlerine yapıştıralım farklı kaydet diyip sırasıyla 1.sql 2.sql 3.sql gibi ayarlayalım.
Sorgu İşlemimiz Bitti. Şimdi Sistemi'mizi yazalım.
Aşama 2
Sayac.php Adın'da Bir dosya oluşturuyoruz ve içerisine şöyle yazıyoruz.
@mysql_connect("localhost", "root", "123") or die("Host ile bağlantı kurulamıyor: " . mysql_error());
@mysql_select_db("sayac");
$gun=0;
$ip =$_SERVER['REMOTE_ADDR'];
$zaman =time();
$buguntarih = date('Y-m-d');
$sure_siniri=$zaman-60*5;
$kayit_sorgu = mysql_query("SELECT * FROM online_ziyaretci WHERE tarih='$buguntarih' AND ip='$ip'");
$kayit_sayisi=mysql_num_rows($kayit_sorgu);
if($kayit_sayisi==0){
$ip_kaydet=mysql_query("INSERT INTO ip_sayaci (tarih, tiklama, ip) VALUES ('$buguntarih',1,'$ip')");
$toplam_kayit_sorgu=mysql_query("SELECT * FROM toplam_sayac");
$toplam_kayit_sayisi=mysql_num_rows($toplam_kayit_sorgu);
if($toplam_kayit_sayisi==0){
$toplam_sayaci_baslat=mysql_query("INSERT INTO toplam_sayac(toplam_tekil,toplam_cogul) VALUES(1,1)");
}
else{
$toplam_sayaci_artir = mysql_query("UPDATE toplam_sayac SET toplam_tekil=toplam_tekil+1, toplam_cogul=toplam_cogul+1 WHERE id=1 LIMIT 1");
}
}
else{
$ip_sayaci_arttir = mysql_query("UPDATE ip_sayaci SET tiklama=tiklama+1 WHERE tarih='$buguntarih' and ip='$ip'");
$toplam_sayaci_artir1 = mysql_query("UPDATE toplam_sayac SET toplam_cogul=toplam_cogul+1 WHERE id=1 LIMIT 1");
}
if ($gun > 0){
$eski_kayit_sil = mysql_query("DELETE FROM ip_sayaci WHERE tarih <= DATE_SUB('$buguntarih', INTERVAL $gun DAY)");
}
$sure_miktari= mysql_query("DELETE FROM online_ziyaretci WHERE tarih<'$sure_siniri'");
$ipsorgu=mysql_query("SELECT * FROM online_ziyaretci WHERE ip='$ip'");
$ipline =mysql_num_rows($ipsorgu);
if($ipline==0)
{
$gir="INSERT INTO online_ziyaretci VALUES ('','$ip','$zaman')";
$girsor=mysql_query($gir);
}
else
{
$guncelle=mysql_query("UPDATE online_ziyaretci SET tarih='$zaman' WHERE ip='$ip'");
}
$kac=mysql_query("SELECT id FROM online_ziyaretci");
$online_ziyaretci_sayisi=mysql_num_rows($kac);
$toplam_tc=mysql_query("SELECT * FROM toplam_sayac WHERE id=1 LIMIT 1");
$toplam_tc_cek=mysql_fetch_array($toplam_tc);
$toplam_tekil_sayisi=$toplam_tc_cek["toplam_tekil"];
$toplam_cogul_sayisi=$toplam_tc_cek["toplam_cogul"];
$bugun = mysql_query("SELECT COUNT(ip) AS ttoplam, SUM(tiklama) AS ctoplam FROM ip_sayaci WHERE tarih='$buguntarih'");
$bugun_veri = mysql_fetch_object($bugun);
$bugun_tekil = $bugun_veri->ttoplam;
$bugun_cogul = $bugun_veri->ctoplam;
$dun = mysql_query("SELECT COUNT(ip) AS dttoplam, SUM(tiklama) AS dctoplam FROM ip_sayaci WHERE tarih = DATE_SUB('$buguntarih', INTERVAL 1 DAY)");
$dun_veri = mysql_fetch_object($dun);
$dun_tekil = $dun_veri->dttoplam;
$dun_cogul = $dun_veri->dctoplam;
Kodun en başında mysql veri tabanı ayarlarını kendi veri tabanı ayarlarınız ile doğrulayın ve sayac.php php artık hazır.
Şimdi hangi sayfaların sayacını yapmasını istiyorsak o sayfaları editleyip
include "sayac.php";// şeklin'de sayfalara monta edelim.
Son olarak ekrana yazdıralım.
<table border='1' width='28%' id='table1'>
<tr>
<td width='105'><font face='Tahoma' size='2'>Online</font></td>
<td><b><font face='Tahoma' size='1' color='#FF0000'>&nbsp;<?php echo $online_ziyaretci_sayisi; ?></font></b></td>
</tr>
<tr>
<td width='105'><font face='Tahoma' size='2'>Bugün Tekil</font></td>
<td><font face='Tahoma' size='1'><?php echo $bugun_tekil; ?></font></td>
</tr>
<tr>
<td width='105'><font face='Tahoma' size='2'>Bugün Çoğul</font></td>
<td><font face='Tahoma' size='1'><?php echo $bugun_cogul; ?></font></td>
</tr>
<tr>
<td width='105'><font face='Tahoma' size='2'>Dün Tekil</font></td>
<td><font face='Tahoma' size='1'><?php echo $dun_tekil; ?></font></td>
</tr>
<tr>
<td width='105'><font face='Tahoma' size='2'>Dün Çoğul</font></td>
<td><font face='Tahoma' size='1'><?php echo $dun_cogul; ?></font></td>
</tr>
<tr>
<td width='105'><font face='Tahoma' size='2'>Toplam Tekil</font></td>
<td><font face='Tahoma' size='1'><?php echo $toplam_tekil_sayisi; ?></font></td>
</tr>
<tr>
<td width='105'><font face='Tahoma' size='2'>Toplam Çoğul</font></td>
<td><font face='Tahoma' size='1'><?php echo $toplam_cogul_sayisi; ?></font></td>
</tr>
<tr>
<td width='105'><font face='Tahoma' size='2'>IP</font></td>
<td><font face='Tahoma' size='1'><?php echo $ip; ?></font></td>
</tr>
</table>
|
|
Vatan için Görevde.
|
|
Cvp:
|
| Yazan |
Cevap içeriği |
|

CaferGenc
[CaferGenc]
Kayıt Tarihi: 29.03.2009
İleti Sayısı: 119
Şehir: YurtDışı
Durum: Forumda Değil
E-Posta Gönder
Özel ileti Gönder
|
Cevap Tarihi: 02.03.2011- 14:37
Öncelikle cok ama cok tesekkür ederim,
ben bu konuyu 22.08.2010 tahrinde acmistim ve malesef kimse yazmamisti ama yinede herkese cok tesekkür ederim.
bu arada yardimci oldugunuz icin cok tesekkür ederim,Siteme güzel bir php online script buldum ve cok güzelde calisiyor.Ama birgün lazim olursa sizin vermis oldugunuz scripti denerim.
ve inaniyorum ki baskalarina cok yardimci olacaktir cünkü dogru düskün calisan php script bulamamistim.
|
|
|
|
Cvp:
|
| Yazan |
Cevap içeriği |
|

AStaLD
[Osman]
Kayıt Tarihi: 13.03.2011
İleti Sayısı: 11
Şehir: YurtDışı
Durum: Forumda Değil
E-Posta Gönder
Özel ileti Gönder
|
Cevap Tarihi: 18.03.2011- 12:12
vermiş olduğunuz örnek çok güzel teşekkürler tamda ihtiyacım olduğu zaman örneği buldum
|
|
|
|
Cvp:
|
| Yazan |
Cevap içeriği |
|

Hyper
[Erhan Şentürk]
Kayıt Tarihi: 14.12.2010
İleti Sayısı: 40
Şehir: Ordu
Durum: Forumda Değil
E-Posta Gönder
Web Adresi
Özel ileti Gönder
|
Cevap Tarihi: 18.03.2011- 14:29
Güle  Güle  Kullanın.
|
|
Vatan için Görevde.
|
|
Kod Çalışmadı
|
| Yazan |
Cevap içeriği |
|

blackfalcom
[dogan]
Kayıt Tarihi: 27.06.2011
İleti Sayısı: 1
Şehir: Ankara
Durum: Forumda Değil
E-Posta Gönder
Özel ileti Gönder
|
Cevap Tarihi: 27.06.2011- 15:21
Kodlarda sanırım hata var göstermiyor hata veriyor. Birde bu Son olarak ekrana yazdıralım.
adı altında verlen kodu nereye yapıştırcaz.
|
|
|
|
Cvp:
|
| Yazan |
Cevap içeriği |
|

byfors
[inspector_]
Kayıt Tarihi: 04.06.2011
İleti Sayısı: 213
Şehir: İstanbul
Durum: üye uzaklaştırılmış
E-Posta Gönder
Özel ileti Gönder
|
Cevap Tarihi: 24.07.2011- 04:16
arkadaşlar ekrana yazdıralım demişsinizde açıklamasını yapsaydınız daha iyi olurdu bilmeyenler için, bende bilmiyorum nasıl yazdırılıyor ekrana.
|
|
|
|
Cvp:
|
| Yazan |
Cevap içeriği |
|

PRNRMLWBMSTR
[Muhammed]
Yardımcı
Kayıt Tarihi: 06.06.2008
İleti Sayısı: 1.003
Şehir: İstanbul
Durum: Forumda Değil
E-Posta Gönder
Web Adresi
Özel ileti Gönder
|
Cevap Tarihi: 24.07.2011- 09:58
Siz yazdırmayacaksınız zaten ekrana. Siz onu not defterine .php uzantılı kaydedip çalıştıracaksınız. Böylelikle ekrana yazılmış olacak. Ekrana yazılma işini php programı yapıyor. Yani çıktı yapıyor.
|
|
|
|
Cvp:
|
| Yazan |
Cevap içeriği |
|

byfors
[inspector_]
Kayıt Tarihi: 04.06.2011
İleti Sayısı: 213
Şehir: İstanbul
Durum: üye uzaklaştırılmış
E-Posta Gönder
Özel ileti Gönder
|
Cevap Tarihi: 24.07.2011- 10:02
peki nasıl çalıştırılıyor peki .php uzantılı olarak kaydedilip, nasıl çalıştırılıyor.
|
|
|