1

これが私のコードです。もちろん、ディレクトリの名前を変更しました。;)

$thepath = "/var/www/vhosts/sub.domain.co.uk/web/apps/storage/".$userclient."/evidence/".$scid."/".$doctype."/";
$testdir = is_dir($thepath); 
if ($testdir == false) {
    mkdir($thepath, 0777);
}

この場合、次の変数が適用されます。

$userclient = '000';
$scid       = '9263';
$doctype    = 'Insurance Policy';

したがって、パスは次のようになります。

/var/www/vhosts/sub.domain.co.uk/web/apps/storage/000/evidence/9263/Insurance Policy/

私はこれが機能することを知っています、私のコードの他のどこでも、私はほとんど同じセットアップを使用している他のアプリケーションを持っています。しかし、上記のものは/ evidence /でトリップしているように見えます。これにより、アクセス許可が755に設定されますが、証拠を777(8進数)に設定すると、コードを実行するたびにディレクトリが作成されます。

を使用して次のエラーメッセージが表示されます。

if (!@mkdir($thepath)) {
    $error = error_get_last();
    echo $error['message'];
}
mkdir(): No such file or directory

どんな助けでも大歓迎です、私は木曜日までにこのアプリケーションを終えなければなりません-そしてこのファイルアップロード部分は最後のビットです!

ありがとうございました!

4

2 に答える 2

3

PHP は、別のディレクトリを作成したいディレクトリを見つけることができません。

$recursiveparam を trueに設定する必要があります。

mkdir($thepath, 0777, true);
于 2012-09-25T09:19:02.520 に答える
0

mkdir($path,$mode,true)ミッシングリンクも作成してみませんか?

于 2012-09-25T09:18:53.283 に答える