おそらく非常に単純に間違ったことをしていますが、ディレクトリを作成しようとすると(最後のフォルダ名として実行された挿入の変数を使用して)、エラーが発生します:
警告:mkdir()[function.mkdir]:/ home/blah/blahにそのようなファイルまたはディレクトリがありません
コードで:
if (!is_dir("images/listing-images/rent/'.$insertID.")) {
//make new directory with unique id
mkdir("images/listing-images/rent/'.$insertID.");
}
もちろん、ディレクトリは存在しません。混乱した!
文字列にエラーがあります:
mkdir("images/listing-images/rent/'.$insertID.");
する必要があります:
mkdir("images/listing-images/rent/$insertID");
ファイルシステムに_images/listing-images/rent
_パスが存在しないために発生します。
パス全体を作成する場合は、3番目の引数をtrue
として渡すだけです。
_mkdir('images/listing-images/rent/'.$insertID, 0777, true);
_
現在、間違ったディレクトリにいる可能性もあります。この場合-chdir()
を使用して現在のディレクトリを変更するか、フルパスを指定する必要があります。
PHP> 5.0.0を使用している場合、mkdir("path", 0777, true);
を試して、再帰的にディレクトリを作成できるようにしてください(こちらを参照してください: http://php.net/manual /en/function.mkdir.php )。
$ upPath = "../uploads/RS/2014/BOI/002"; // フルパス
$ tags = explode( '/'、$ upPath); //完全なパスを展開します
$ mkDir = "";foreach($tags as $folder) { $mkDir = $mkDir . $folder ."/"; // make one directory join one other for the nest directory to make echo '"'.$mkDir.'"<br/>'; // this will show the directory created each time if(!is_dir($mkDir)) { // check if directory exist or not mkdir($mkDir, 0777); // if not exist then make the directory } }
おそらく本当のエラーは、彼が余分な頂点を忘れたことでした。
この:
mkdir("images/listing-images/rent/'.$insertID.");
内部:
/'.$insertID."
正しいバージョン:
/".$insertID
拡張正しいバージョン:
mkdir("images/listing-images/rent/".$insertID);
私の場合、$ insertIDは、連結することにより、いくつかのデータから文字列として生成されました
$insertID=$year.$otherId;
私はこのようなコードを簡単に書き直し、エラーが消えました:
$insertID=(int)($year.$otherId);