Jump to content
Forumu Destekleyenlere Katılın ×
Paticik Forumları
2000 lerden beri faal olan, çok şukela bir paylaşım platformuyuz. Hoşgeldiniz.

php mktime(); Garip Hata !


Baluu

Öne çıkan mesajlar


$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 ?
Link to comment
Sosyal ağlarda paylaş

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
}
Link to comment
Sosyal ağlarda paylaş

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 )
Link to comment
Sosyal ağlarda paylaş


$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.
Link to comment
Sosyal ağlarda paylaş

×
×
  • Yeni Oluştur...