для проекта делаю загрузку файлов с расширением .html . Пока что вышло от так, но оно не создает файл вообще. Ошибок нету, все нормально, все проверки проходит. Подскажите что делать, как изменить строчку с fopen() для того чтобы создавался файл?
function fileUploadChecker() {
global $connection;
if (isset($_POST['submit'])) {
$errors = array();
// масив назв строк, які треба перевірити:
$array = array('file_name','file_content');
// перевіряємо кожну строку на пустоту:
foreach ($array as $value) {
if (checkString($_POST[$value]) == false) {
$errors [] = 'Запишіть Ваш '.$value.'!';
}
}
if (empty($errors)) {
$file_name = $_POST['file_name'];
$file_content = $_POST['file_content'];
$file = fopen('W:\domains\super-fizuka.com\view\docs'.$file_name.'.html', "w");
fwrite($file, $file_content);
fclose($file);
} else {
echo '<div style = "color = red;">'.array_shift($errors).'</div><hr>';
}
}
}
Несколько моментов:
\ в маршрутах - это зло. Замените на \\ или /PHP Manual - fopen:
On the Windows platform, be careful to escape any backslashes used in the path to the file, or use forward slashes.
(когда писал ответ, сначала поставил слэши в кавычках, так stackoverflow заменил двойной обратный слэш на одинарный :)
docs - это часть имени файла или имя каталога? Если это каталог, то добавьте слэш в конец: \\docs\\'.
Проверьте значение параметра open_basedir:
Description of core php.ini directives - open_basedir
Судя по букве диска "W" - это присоединенный сетевой диск. Если это так, то могут быть проблемы с его видимостью у процесса Вашего веб-сервера. Попробуйте для начала писать на локальный диск, в папку с коротким 8.3 именем, например "C:/Temp"
Продвижение своими сайтами как стратегия роста и независимости