2015-02-02 2 views
-3

В конце моего сценария, я называю это:MkDir() не работает PHP

if (!file_exists("user/$u")) { 
    mkdir("user/$u", 0755); 
} 

Однако это не создает папку. Сценарий, который вызывает это утверждение, находится в корневом каталоге моего проекта.

Я использую XAMPP на Mac Yosemite, если это поможет.

У меня есть ошибка:

PHP Предупреждение: MKDIR(): Нет такого файла или каталога в /Applications/XAMPP/xamppfiles/htdocs/meeu/index.php на линии 152

линии 152: mkdir («пользователь/$ u», 0755);

Edit:

я теперь установил путь к файлу, однако я Var дамп MKDIR и получаю эту ошибку:

PHP Warning: MKDIR(): Разрешение отказано в/Applications/XAMPP/xamppfiles/htdocs/meeu/index.php в строке 152

+2

Добавить сообщение об ошибках в верхней части файла и сообщите нам, если вы получаете какие-либо ошибки: ' 'Также проверьте разрешение ваших каталогов – Rizier123

+0

, он должен работать. – Zl3n

+0

@ Rizier123 Я добавил php, однако, когда я отправляю форму, которая запрашивает mkdir, ошибки не отображаются. – Josh

ответ

2

Я возьму на это удар. Ваша проблема, скорее всего, связана с тем, что вы пытаетесь сделать mkdir() относительным путем, а не абсолютным путем.

Вы должны попробовать что-то вроде этого:

if (!file_exists(getcwd() . "user/$u")) { 
    mkdir(getcwd() . "user/$u", 0755); 
} 

Ссылки

  • getcwd()
  • В качестве альтернативы, вы можете использовать realpath() так: realpath(dirname(__FILE__));

Также, как указано в комментариях, включите отчет об ошибках. (Это необходимо, каждый раз, когда вы разрабатываете. Остановите любые проблемы до их возникновения).

ini_set('display_errors', 1); 
error_reporting(E_ALL);