İzin, hata günlüğü yalanladı

0 Cevap php

Ben bu (bir veritabanı bağlantısı ile) admin rapor edilemez durumda php hataları yazmak basit bir hata günlüğü oluşturmak için çalışıyorum. Ben bu yazdı:

function errorLog($array)
{
    $time = date("F j, Y, g:i a");
    $ip = $_SERVER['REMOTE_ADDR'];
    $no = $array['e-no'];
    $string = $array['e-string'];
    $file = $array['e-file'];
    $line = $array['e-line'];
    $context = $array['e-context'];

    $string = "TIME {$time} IP {$ip} ERROR {$no} | {$string} | {$file} | {$line} | {$context}";
    if ($handler = fopen('log/log-file.txt', 'a'))
    {
        fwrite($handler, $string);
        fclose($handler);
    }
    else
    {
        exit('Fatal Error #0002');
    }
}

START EDIT

Fonksiyonu haline gelmiştir

function errorLog($array)
{
    $time = date("F j, Y, g:i a");
    $ip = $_SERVER['REMOTE_ADDR'];
    $type = $array['e-type'];
    $string = $array['e-string'];
    $file = $array['e-file'];
    $line = $array['e-line'];
    $context = $array['e-context']
    $string = "ON {$time} IP {$ip} ERROR {$type} | {$string} | {$file} | {$line} | {$context}"; 
    if (!error_log($string, 3, 'log/log-file.txt')) { exit('Fatal Error #0002'); }
}

END EDIT

I çalıştırdığınızda ama olsun

Warning: fopen(log/log-file.txt) [function.fopen]: failed to open stream: Permission denied in myfile.php on line 17

Ben bu bir sunucu izin sorun var, ama bir localhost (Mac os x üzerinde xampp) üzerinde çalışıyorum ve ben bu izinleri yönetmek istiyorum. Nasıl ben sadece yazılabilir olması / log yerleştirebilirsiniz? I yapmak ne çalışıyorum yapmanın daha iyi bir yolu var mı?

0 Cevap