Baluu Mesaj tarihi: Mayıs 8, 2008 Mesaj tarihi: Mayıs 8, 2008 $gun = date('d'); $ay = date('m'); $yil = date('y'); $saat=date('G'); $dakika=date('i'); $bugun = mktime(0,0,0,$ay,$gun,$yil,0); if(file_exists("blabla")) { $f=fopen("blabla","r"); $gecmisgun = trim(fgets($f, 1024)); $gecmisay = trim(fgets($f, 1024)); $gecmisyil = trim(fgets($f, 1024)); fclose($f); $dun = mktime(0,0,0,$gecmisay,$gecmisgun,$gecmisyil); if($bugun > $dun && (($saat >= 21 && $dakika >= 30) || $saat >= 22)) { copy("blablal","blablabla"); $f=fopen("blabla","w"); fwrite($f, date("dnmny")); fclose($f); } } else { copy("blabla","blabla"); $f=fopen("blabla","w"); fwrite($f, date("dnmny", time()-86400)); fclose($f); } Kodunda tam şu satıda saçma bir hata alıyorum; $dun = mktime(0,0,0,$gecmisay,$gecmisgun,$gecmisyil); Hata : mktime() expects parameter 4 to be long, string given in blabalbla line blabllşdgj.. Valla bence kusursuz, çalışması lazım.. Ama anlamadım neden çalışmadığını.. Yardım edebilecek olan ?
aquila Mesaj tarihi: Mayıs 8, 2008 Mesaj tarihi: Mayıs 8, 2008 php bilmiyorum ama gecmisaya bi yerde string koymussun mktime da oraya string olmaz long olmali demis. cok yardimci oldum, aferin bana.
Baluu Mesaj tarihi: Mayıs 8, 2008 Konuyu açan Mesaj tarihi: Mayıs 8, 2008 haa bi dakka lan, wdkjglkdshg.. kodda bi hata yok ama xml de belki ayı string giriyordur sdhgkjsd :D kontrol edelim :D Edit : yok yaw, her şey int işte :D
aquila Mesaj tarihi: Mayıs 8, 2008 Mesaj tarihi: Mayıs 8, 2008 $dun ne peki? ona bisey yapiyo musun yoksa kendi biliyo mu ne oldugunu, lol ben bile anlamadim su yazdigimi ama hayirlisi.
Baluu Mesaj tarihi: Mayıs 8, 2008 Konuyu açan Mesaj tarihi: Mayıs 8, 2008 Ahah.. Sabah sabah sana az php öğretem o vakit.. Detaylarla geliyor :D $gun = date('d'); /// gün'ün date olduğunu tanımlıyorum $ay = date('m'); /// ay'ın month olduğunu $yil = date('y'); /// yil'ın year olduğunu $saat=date('G'); /// saatii.. $dakika=date('i'); /// dakikayi... $bugun = mktime(0,0,0,$ay,$gun,$yil,0); /// sonra bugunün değerlerini alıyorum.. if(file_exists("blabla")) { /// blabla dosyası var ise $f=fopen("blabla","r"); /// dosyadan oku $gecmisgun = trim(fgets($f, 1024)); /// gecmisgun dosyadaki şu veri $gecmisay = trim(fgets($f, 1024)); /// gecmisay dosyadaki şu veri $gecmisyil = trim(fgets($f, 1024)); /// gecmisyil dosyadaki şu veri fclose($f); // kapat ula dosyayı $dun = mktime(0,0,0,$gecmisay,$gecmisgun,$gecmisyil); /// dün ise yukardaki verilerden tarih alıyor burada if($bugun > $dun && (($saat >= 21 && $dakika >= 30) || $saat >= 22)) { // zaman tanımı işte bugun dunden sonraysa ve saat 2030 ise copy("blablal","blablabla"); /// blablabla dosyasını kopyala arkadaş $f=fopen("blabla","w"); /// aç blablayı ve yaz fwrite($f, date("dnmny")); /// doyanın kopyalandığı tarihi fclose($f); /// kapat oynama fazla } } else { /// aksi ise copy("blabla","blabla"); /// blabla bla yı blabla blaya kopyala yani oyle bir dosya yok ise :) $f=fopen("blabla","w"); // blabla yı ac ve yaz fwrite($f, date("dnmny", time()-86400)); /// gun zaman vs.. fclose($f);/// kapa çok oynadın }
Baluu Mesaj tarihi: Mayıs 8, 2008 Konuyu açan Mesaj tarihi: Mayıs 8, 2008 nese ya ben en iyisi bi cronjob atam, bu kopyalama işini de başka bahara bırakam.. Php ile yapcam da nolcak sanki.. cronjob varken :D
di Mesaj tarihi: Mayıs 8, 2008 Mesaj tarihi: Mayıs 8, 2008 Aldigin/okuttugun verilerde bir hata vardir. Ekrana bastirip bir kontrol et. Dogrulugundan eminsen o degerleri alirken $hede = (int)$hodo; seklinde type casting yap. Php 4 te var miydi bu type casting olayi hatirlamiyamadim simdi tam. Bi bakman gerekebilir 4.x kullaniyosan. (normalde bu type casting olayinin alayini php kendi halleder ve kullanicinin tip atamasi yapmasi onerilmez der manual'inda. o deger string olsa bile integer'a long'a otomatik cevirir onu php. zend'in yalancisiyim : p )
Baluu Mesaj tarihi: Mayıs 8, 2008 Konuyu açan Mesaj tarihi: Mayıs 8, 2008 $gecmisgun = trim(fgets($f, 1024)); $gecmisay = trim(fgets($f, 1024)); $gecmisyil = trim(fgets($f, 1024)); echo $gecmisgun." ".$gecmisay." ".$gecmisyil."<br>"; echo ladım veriyor değerleri.. Edit : Problem şu ki; $bugun = mktime(0,0,0,$ay,$gun,$yil,0); bu satırlarda, bugun değerini tanımlarken.. su satirlarda $dun = mktime(0,0,0,$gecmisay,$gecmisgun,$gecmisyil); dun'u tanımlayamıyor.. mktime hatası veriyor.
Mum_Chamber Mesaj tarihi: Mayıs 8, 2008 Mesaj tarihi: Mayıs 8, 2008 e abicim dosyadan okuyamıyorsu işte =) dosyadan bir örnek ver de bakalım.
Baluu Mesaj tarihi: Mayıs 8, 2008 Konuyu açan Mesaj tarihi: Mayıs 8, 2008 07505508 dosyadaki text bu. olay su ki, her seferinde önce xml'den tariih alıcak, sonra bu dosyadaki ile karşılaştırıcak, eğer gün değişmiş ve saat xx:xx olmuş ise, xmli güncelleyip yeni gün datasını dosyaya yazıcak. olay bu.
Mum_Chamber Mesaj tarihi: Mayıs 8, 2008 Mesaj tarihi: Mayıs 8, 2008 e abicim öyleyse int olarak tutsana zamanı dosyada? niye o kadar takla atıyorsun? bir kere oku, o int'i date e çevir, kontrol ve işlemlerini yap. iyice kafam karıştı, hiç anlamadım son söylediğini..
Baluu Mesaj tarihi: Mayıs 8, 2008 Konuyu açan Mesaj tarihi: Mayıs 8, 2008 he he.. ya yok. Problemi şimdi buldum.. trim fonksiyonu string çıktı veriyor :D onu longa çevirmem lazım.. Fikri olan ? :D
Baluu Mesaj tarihi: Mayıs 8, 2008 Konuyu açan Mesaj tarihi: Mayıs 8, 2008 yok ya ben bununla daha fazla uğraşmıyacağım, cronjob atıp hergun istediğim saatte kopyalatırım xml'i sonra oradan okuruz ne okuyacaksak. Boşa uğraşıyorum valla, başlarım scriptine :D
sharky Mesaj tarihi: Mayıs 9, 2008 Mesaj tarihi: Mayıs 9, 2008 $gecmisgun = (int)trim(fgets($f, 1024)); olmazsa $gecmisgun = trim(fgets($f, 1024)); $gecmisgun = (int)$gecmisgun; hatta emin olmamakla beraber belki (int)$gecmisgun = trim(fgets($f, 1024)); bile calisabilir.
Mum_Chamber Mesaj tarihi: Mayıs 9, 2008 Mesaj tarihi: Mayıs 9, 2008 simdi soyle ki, string cikti verse bile implicit bir sekilde int'e cevirilebilecek bir degisken icin php hata dondurmez. yani okunan deger '12' ise php onu otomatik inte cevirip islem yapar zaten. bence senin sorunun, okunan deger '12-' gibi inte cevirilemeyen bir deger. ama bilemiyorum, kafam karisti =)
Baluu Mesaj tarihi: Mayıs 10, 2008 Konuyu açan Mesaj tarihi: Mayıs 10, 2008 echo yaptığımda çatır çatır veriyor değerleri zaten, mktime() içine almıyor bir türlü.. Valla benim de kafam karışık :D
di Mesaj tarihi: Mayıs 10, 2008 Mesaj tarihi: Mayıs 10, 2008 var_dump($hede); diyosun, neymis ne degilmis ogreniyosun.
Öne çıkan mesajlar