-2

アップロードされたファイルをアップロードフォルダー内のフォルダーに保存する方法について、誰かが私を助けてくれることを願っています..状況は、ユーザーが3つのファイルをアップロードしたときに、自分のフォルダーに保存したい..

$directory="/upload/".$userID.";

$userID 部分を削除すると、正常に動作します。

アップロードプロセス..

/*=======================File Upload Process============================*/

            $num_files = count($_FILES['userfile']);
            $saveDirectory = "upload/".$matricNo."/";

            for($x =0; $x < $num_files; $x++)
            {
            $fileName = $_FILES['userfile']['name'][$x];
            $tempName = $_FILES['userfile']['tmp_name'][$x];
            $fileSize = $_FILES['userfile']['size'][$x];
            $fileType = $_FILES['userfile']['type'][$x];
            $allowed_ext = array ('doc','docx','pdf');
            $file_ext = pathinfo($filename, PATHINFO_EXTENSION);

                if (($_FILES['userfile']['size'][$x] > 1048576) && (in_array($file_ext, $allowed_ext) == false))
                {
                    header('location: student_newSubmission2.php?error=6');
                    exit();
                }
                elseif ($_FILES['userfile']['error'][$x] == UPLOAD_ERR_OK) 
                {
                    $query3 = oci_parse($conn,"INSERT INTO upload(uploadID, uploadname, uploadtype, uploadsize, subID) VALUES (seq_uploadID.nextval,'$fileName', '$fileType', '$fileSize',$subID)");
                    $exe3 = oci_execute($query3) or die('Error, query failed');
                    if (move_uploaded_file($tempName, $saveDirectory.$fileName)) 
                    {
                        echo 'File Successfully Uploaded!';
                    } 
                    else 
                    {
                    echo 'There was an error whilst uploading the file.';
                    }
                }           
            }   
        /*=======================File Upload End============================*/  
4

1 に答える 1

4

を使用mkdir()します。デフォルトのモードは 0777 です。これは、動的フォルダを作成するための可能な限り広いアクセスを意味します。

        $saveDirectory = "upload/".$matricNo."/";

        if(!is_dir($saveDirectory)){
            mkdir($saveDirectory, 0777);
        }

権限のあるディレクトリを作成します:

<?php
    mkdir("/path/to/my/dir", 0700);
?>

構文:

bool mkdir ( string $pathname [, int $mode = 0777 [, bool $recursive = false [, resource $context ]]] )

pathname :ディレクトリ パス。

mode : モードはデフォルトで 0777 です。これは可能な限り広いアクセスを意味します。: Windows ではモードは無視されます。

参照: http://us3.php.net/mkdir

于 2013-11-15T07:06:51.860 に答える