LINUX.ORG.RU

php скрипт не пишет в файл (на хостинге)


0

0

сабж. тестирую простой счётчик посещений, дома всё работает, а на хостинге - нет.

<?php
$ccfile = "hits_stats";

$since = Date("M d, Y");
$written = FALSE;

if (file_exists($ccfile))
{
        $temparray = file($ccfile);
        for($index = 0; $index < count($temparray); $index++)
        {
                $entry = explode("|",$temparray[$index]);
                if(!strcmp($entry[1],$url))
                {
                        $entry[0]++;
                        $tempentry = $entry;
                        $temparray[$index] = implode($entry,"|");
                        $fp = fopen($ccfile,"w");
                        if(flock($fp,2))
                        {
                                for($index = 0; $index < count($temparray); $index++)
                                        fputs($fp,$temparray[$index]);
                        }
                        else
                                exit("DLCount error: flock write failure!");
                        if(flock($fp,3))
                                fclose($fp);
                        else
                                exit("DLCount error: flock release failure!");
                        $written = TRUE;
                }
        }
        if($written == FALSE)
        {
                $hits = "1";
                $entry = "$hits|$url|$since\n";
                $fp = fopen($ccfile,"a");
                if(flock($fp,2))
                        fputs($fp,$entry,256);
                else
                        exit("DLCount error: flock write failure!");
                if(flock($fp,3))
                        fclose($fp);
                else
                        exit("DLCount error: flock release failure!");
        }
}
else
{
        exit("DLCount error: $ccfile missing!");
}

?>
--------------------------------------------

На файле hits_stats стоит чмод 0666 (-rw-rw-rw).
Но данные в него не пишутся.

Почему ?
anonymous

SafeMode + open_basedir
но для того что бы знать наверняка еужно логи посмотреть

anonymous
()
Ответ на: комментарий от anonymous

на хостинге в файле /etc/php.ini переменная open_basedir закоментирована и сэйф моды:

safe_mode = Off
safe_mode_gid = Off
safe_mode_include_dir =
safe_mode_exec_dir =
safe_mode_allowed_env_vars = PHP_
safe_mode_protected_env_vars = LD_LIBRARY_PATH
sql.safe_mode = Off

anonymous
()
Ответ на: комментарий от anonymous

Эти установки могут еще изменяться апачем
самый надежный способ узнать параметры выполнить в нужном каталоге phpinfo();

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.