2016-09-17 5 views
-1

phpmailerを使用して添付ファイル付きのメールを送信していますが、ファイルをディレクトリにアップロードする前にファイル名を変更したいと考えています。あなたはこのようにそれを試してみたいことがありタイムスタンプ付きのアップロードファイルの名前を変更しない

$currentdir = getcwd(); 

    // for image uploading 
$target_dir = "$currentdir/uploads/"; 
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]); 
$uploadOk = 1; 
$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION); 

    if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) 
    { 
     echo "The file ". basename($_FILES["fileToUpload"]["name"]). " has been uploaded."; 
     echo $_FILES["fileToUpload"]["tmp_name"]; 
     echo "<br>". $target_file; 
    } 
+0

たぶん私は何かが足りないんだけど、どこのタイムスタンプは何ですか? – Blazeag

+0

結構ですが、$ _FILES ["fileToUpload"] ["tmp_name"]の後に追加しました。 –

答えて

0

<?php 

     $currentDir  = getcwd(); 
     $targetDir  = "$currentDir/uploads/"; 
     $fileName  = basename($_FILES["fileToUpload"]["name"]); 
     $imageFileType = pathinfo($fileName,PATHINFO_EXTENSION); 

     // NEW FILENAME BASED ON THE CURRENT TIMESTAMP 
     // THE NEW FILENAME IS PREFIXED WITH AN UNDERSCORE(_) CHARACTER IN THIS CASE... 
     $timeBasedName = $targetDir . "_" . time() . ".{$imageFileType}"; 
     $uploadOk  = 0; 


     if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $timeBasedName)){ 
      echo "The file ". basename($_FILES["fileToUpload"]["name"]) . 
       " has been uploaded as \"{$timeBasedName}\"."; 
      echo $_FILES["fileToUpload"]["tmp_name"]; 
      echo "<br>". $target_file; 
      $uploadOk = 1; 
     } 
+0

これはうまくいかなかったPoiz –

+0

@abhisheksinghあなたはどんなエラーを受けていますか? ***適切なアクセス権を '/ uploads'フォルダとそれ以上のフォルダにも持っていますか?*** – Poiz

+0

@abhisheksingh投稿が更新されました... – Poiz

関連する問題