Arama butonu
Bu konudaki kullanıcılar: 1 misafir
11
Cevap
293
Tıklama
0
Öne Çıkarma
php,dosya boyutu sorunu
S
20 yıl
Yüzbaşı
Konu Sahibi

selamlar ,

php ile kullanıcıların ip adreslerini txt dosyasına kayıt ediyordum , ama bir kontrol sırasında belirli bir tarihten sonra kayıt tutmadığını gördüm , txt dosyasının boyutu 180 kb olmuş ve orada kalmış hatta son kaydı tam olarak kayıt etmemiş yarım olarak kayıt etmiş , orada kalmış.

bu dosya sorununu aşmak için ne önerirsiniz ?
_________________



C
20 yıl
Yüzbaşı

dosya boyutunu sına. 180 kb veya daha buyukse yeni bir dosya yarat ve ona yazmaya başlasın en kolay biçimde böyle olur zannediyorum.
iyi çalışmalar.


Bu mesaja 1 cevap geldi.
S
20 yıl
Yüzbaşı
Konu Sahibi

quote:

Orijinalinden alıntı: cera

dosya boyutunu sına. 180 kb veya daha buyukse yeni bir dosya yarat ve ona yazmaya başlasın en kolay biçimde böyle olur zannediyorum.
iyi çalışmalar.


önerin için teşekkürler , ama böyle bir sınır olması açıkcası garibime gitti doğrusu ...


Bu mesaja 1 cevap geldi.
A
20 yıl
Yüzbaşı

Arkadaşım böyle bir sınır yok zaten.Sunucuda zaman aşımı süresi geçiyor olabilir mi ?
kodlarını görsem belki bi şey diyebilirim.


Bu mesaja 1 cevap geldi.
C
20 yıl
Yüzbaşı

öyle bir sınır olmadığını biliyorum sunucu tabanlı zannediyorum yoksa herhangi bir sorun görünmüyor. sadece geçici olarak sorunu çözebilmen açısından yazmışdım. kolay gele.


Bu mesaja 1 cevap geldi.
S
20 yıl
Yüzbaşı
Konu Sahibi

ip kayıtlarını şu şekilde tutuyorum
quote:


<?
function get_ip()
{
if (isset($_SERVER) and !empty($_SERVER)) {
if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
} else if (isset($_SERVER['HTTP_CLIENT_IP'])) {
$ip = $_SERVER['HTTP_CLIENT_IP'];
} else {
$ip = $_SERVER['REMOTE_ADDR'];
}
} else {
if (getenv('HTTP_X_FORWARDED_FOR')) {
$ip = getenv('HTTP_X_FORWARDED_FOR');
} else if (getenv('HTTP_CLIENT_IP')) {
$ip = getenv('HTTP_CLIENT_IP');
} else {
$realip = getenv('REMOTE_ADDR');
}
}

return $ip;
}


$fp = fopen("user_ip.txt", "a");
fwrite($fp, "tarih:");
$tarih=gmdate ("M d Y h:i:s ");
fwrite($fp, $tarih);
fwrite($fp,"ip adresi:".get_ip()."\n");
fwrite($fp, "\n");
fclose($fp,gmdate ("M d Y"));


?>



Bu mesaja 1 cevap geldi.
A
20 yıl
Yüzbaşı

Arkadaşım bir de şu şekilde denermisin:

$dosya="user_ip.txt"; 
$tarih=gmdate ("M d Y h:i:s ");
$ip_adresi=get_ip();

$yazi='tarih :' . $tarih . 'ip adresi : '. $ip_adresi ."\n";

if (!($fp = fopen ($dosya,"w"))) die ("Dosya Açılamıyor");
fwrite($fp, $yazi);
fclose($fp);


Bu mesaja 1 cevap geldi.
S
20 yıl
Yüzbaşı
Konu Sahibi

dosyayı açma moduyla ilgili o zaman sorun , sanırım. ben daha önceden a (append-ekle) moduyla açıyordum dosyayı ondan olabilir . şimdi w (write-yazma) modunda açıp deneyeyim.

ilgine çok teşekkür ederim , iyi çalışmalar ...


Bu mesaja 1 cevap geldi.
A
20 yıl
Yüzbaşı

arkadaşım yanlış yazmışım w değil a olacak orası kusura bakma


Bu mesaja 1 cevap geldi.
S
20 yıl
Yüzbaşı
Konu Sahibi

quote:

Orijinalinden alıntı: acayip

arkadaşım yanlış yazmışım w değil a olacak orası kusura bakma


yok sorun değil ... o zaman benim , dosyayı açma moduna bağlı teorim çürüdü. başka bir şeyden kaynaklanıyor olmalı .


Bu mesaja 1 cevap geldi.
A
20 yıl
Yüzbaşı

Arkadaşım diğer türlü olursa yani w ile içindekini silip en başa yazar.

Benim yazdığımda seninkinden farklı olarak değişkenleri önceden belirleyip direk bir seferde yazıyoruz.Bu da daha hızlı olur .Eğer yine olmazsa yukarıdaki kodda

fwrite($fp, $yazi);

satırından önce :
stream_set_write_buffer($fp, 0);

satırını ekle.


Bu mesaja 1 cevap geldi.
S
20 yıl
Yüzbaşı
Konu Sahibi

quote:

Orijinalinden alıntı: acayip

Arkadaşım diğer türlü olursa yani w ile içindekini silip en başa yazar.

Benim yazdığımda seninkinden farklı olarak değişkenleri önceden belirleyip direk bir seferde yazıyoruz.Bu da daha hızlı olur .Eğer yine olmazsa yukarıdaki kodda

fwrite($fp, $yazi);

satırından önce :
stream_set_write_buffer($fp, 0);

satırını ekle.



çok sağol , bu şekilde değiştiriyorum.



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.