CPanel не позволяет использовать скрипт для создания файла?

У меня есть следующая функция в моем файле php, и мой скрипт помещается в CPanel. Я уверен, что сценарий был выполнен, так как появилась последняя распечатка, однако мой CSV-файл - нет. Я изменил разрешение папки Log_report на 755, но файл по-прежнему не может быть создан, как я могу внести изменения? Я уверен, что сценарий mysql для создания csv верен, так как я использовал тот же сценарий на своем локальном компьютере XAMPP и ранее успешно создал файл на своем компьютере.

function export($DB){
    $dbConnection = mysql_connect($DB['server'], $DB['loginName'], $DB['password']);
    if(!$dbConnection){
        die('Error! ' . mysql_error());
        }
    mysql_select_db($DB['database'], $dbConnection);
    $timezone = "Asia/Hong_Kong";
    if(function_exists('date_default_timezone_set')) 
        date_default_timezone_set($timezone);
    $Time = date('Y_m_d_H_i');
    $fileName = "/home/me/public_html/Log_Report/Report_".$Time.".csv";
    $result = mysql_query("SELECT TechName, ClientName, SiteName, LogTime, Type 
                            INTO OUTFILE '".$fileName."' 
                            FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED by '\"' 
                            LINES TERMINATED BY '\n' 
                            FROM tech AS T, client AS C, site AS S, log AS L 
                            WHERE T.TechID=L.TechID AND C.ClientID=L.ClientID AND S.SiteID=L.SiteID 
                            ORDER BY L.LogTime DESC");
    print "abcde";
}

person Conrad    schedule 07.08.2012    source источник
comment
Я столкнулся с подобными проблемами с моим рабочим сервером cpanel. Я думаю, вы обнаружите, что можете заставить php создавать файлы в этой папке просто отлично, это права на запись в mysql, которые, вероятно, являются проблемой. Почти уверен, что это ограничено, потому что sql-инъекция + права на запись в mysql = создание вредоносных сценариев на стороне сервера над корнем вашего сайта .... Поговорите со своим хостом   -  person WebChemist    schedule 07.08.2012
comment
Итак, если я хочу создать файл, мне нужно изменить разрешение mysql? Могу ли я спросить, возможно ли внести изменения в эту конфигурацию самостоятельно?   -  person Conrad    schedule 08.08.2012
comment
Вам нужно выяснить, как работает служба mysql. Если его корень (что я не думаю, что это должно быть), то доступ к записи файла не должен быть проблемой, в противном случае, вероятно, ему требуется разрешение. Если у вас есть root-доступ, вы, вероятно, можете изменить его самостоятельно, но вам, вероятно, лучше сначала поговорить со своим хостом, поскольку, вероятно, есть веская причина, по которой он ограничен ...   -  person WebChemist    schedule 08.08.2012


Ответы (1)


Этот поток должен быть полезен для объяснения проблемы с разрешениями mysql:

http://lists.mysql.com/mysql/206422

Также я должен был спросить, под какой учетной записью пользователя mysql вы выполняли запрос, например, под root или другим, возможно, ограниченным пользователем?

person WebChemist    schedule 08.08.2012
comment
другой пользователь вместо root - person Conrad; 08.08.2012
comment
попробуйте экспортировать в /tmp/ и посмотрите, сможете ли вы переместить его в другое место оттуда. Также см. здесь stackoverflow.com/questions/2783313/ - person WebChemist; 08.08.2012
comment
на самом деле, я решил эту проблему, изменив метод создания файлов, но большое спасибо за вашу помощь, такая ссылка может помочь мне узнать больше, чтобы я мог решить эту проблему в следующий раз. - person Conrad; 09.08.2012
comment
Без проблем. Вы должны опубликовать свое решение для других читателей, которые сталкиваются с этим вопросом. - person WebChemist; 09.08.2012