• 11-01-2015, 15:51:16
    #1
    Maç sonuçlarını (fikstür) curl ile çektiriyorum. Her defasında çekmesine gerek olmadığı için cache etmek istedim. Bir şekilde yaptım ama nedense hata vermeye başladı. Denediğim kodlar:

    fikstur.php dosyası:

    <?php 
    $adres = "kodlar/fikstur.html";
    $zaman = 15 * 24 * 60;
    if (file_exists($adres)) {
    if(time() - $zaman < filemtime($adres)) {
    readfile($adres);
    exit;
    }else {
    unlink($adres);
    } }
    ob_start(); 
    ?>
    
    // buraya curl kodları
    
    <?php
    $dosya = fopen($adres, 'w+'); 
    fwrite($dosya, ob_get_contents()); 
    fclose($dosya); 
    ob_end_flush();  
    ?>
    tam olarak hata nerede? sidebar'da include('fisktur.php') yapıyorum. çekiyor fakat sağ tarafta en sondaki koddan itibaren almıyor. yani fikstur.php içindeki dosyaların bittiği yerden itibaren hiç bir şey göstermiyor.
  • 13-01-2015, 04:43:52
    #2
    Developer
    Çıktı denetim işlemi yapmak yerine

    ekrana basacağınız tüm datayı tek değişkende toplayıp ob_get_contents() yerine yazabilirsiniz.


    <?php  $adres = "kodlar/fikstur.html"; $zaman = 15 * 24 * 60; if (file_exists($adres)) { if(time() - $zaman < filemtime($adres)) { readfile($adres); exit; }else { unlink($adres); } }
    
    $fiksturveri = 'Buraya basılacak veriyi değişkene atıyoruz.';
    echo $fiksturveri; /* cachelenmemiş veriyi ekrana basıyoru */
    $dosya = fopen($adres, 'w+');  fwrite($dosya, $fiksturveri);  fclose($dosya);  ?>
  • 13-01-2015, 14:45:07
    #3
    FastPHP adlı üyeden alıntı: mesajı görüntüle
    Çıktı denetim işlemi yapmak yerine

    ekrana basacağınız tüm datayı tek değişkende toplayıp ob_get_contents() yerine yazabilirsiniz.


    <?php  $adres = "kodlar/fikstur.html"; $zaman = 15 * 24 * 60; if (file_exists($adres)) { if(time() - $zaman < filemtime($adres)) { readfile($adres); exit; }else { unlink($adres); } }
    
    $fiksturveri = 'Buraya basılacak veriyi değişkene atıyoruz.';
    echo $fiksturveri; /* cachelenmemiş veriyi ekrana basıyoru */
    $dosya = fopen($adres, 'w+');  fwrite($dosya, $fiksturveri);  fclose($dosya);  ?>
    maalesef yapamadım hocam. bittiği yerden itibaren almıyor. yani sidebarı cache edince footer kodları görünmüyor örnek olarak.