私の開発サーバー(XAMPP Apache 2.4.17およびPHP 5.6.23)で動作するupload_filesスクリプトがありますが、これを運用サーバー(Synology Diskstation、Apache 2.2 .31 php 5.6.30)mkdirでディレクトリを作成できません
データディレクトリにディレクトリSY2017_18を作成できません(データディレクトリは存在します)。データディレクトリは、次の権限があります。
drwxrwxr-×1人の管理者ユーザ234のAug29午前9時59分のデータを、私は、php.iniチェックしています
file_uploads = On
upload_tmp_dir = "var/services/tmp"
大歓迎任意のヘルプを。
// upload_files script
if(isset($_FILES['my_file'])){
$errors= array();
$file_name = $_FILES['my_file']['name'];
$file_size =$_FILES['my_file']['size'];
$file_tmp =$_FILES['my_file']['tmp_name'];
$file_type=$_FILES['my_file']['type'];
$file_ext=strtolower(end(explode('.',$_FILES['my_file']['name'])));
$extensions= array("jpg","png");
if(in_array($file_ext,$extensions)=== false){
$errors[]="extension not allowed, please choose a Spreadsheet file.";
}
if($file_size > 2097152){
$errors[]='File size must be less than 2 MB';
}
if(empty($errors)==true){
$folder = $_SERVER['DOCUMENT_ROOT']."/pdo/data/SY".$thisschoolyear;
if(!is_dir($folder)){
if (mkdir($folder, 0755)) {
} else echo "NO luck creating the folder $folder<br>";
}
}
}
こんにちは、このスレッドを見てくださいhttps://stackoverflow.com/questions/927564/how-to-find-a-reason-when-mkdir-fails-from-php、それは理由を理解するのを助けることができますmkdirはfalseを返します。 –
権限の問題を素早く確認するには、ディレクトリを777に変更し、それが動作するかどうかを確認します。 –
長いですが、私はこの問題に関するかなりの記事を読んできました。そしていつもmkdirは構文エラーのために失敗します。上記のように、私のコードはXAMPP上で完全に動作するので、私はいつも問題がパーミッションであると確信していました。残念ながら私はLinuxの初心者だから、これは私のための新しい領域です。 – Crookers