2016-09-02 8 views
0

ここに私のコードです: 写真がアップロードされているときにランダムな名前を付ける必要がありますが、どのように助けてくださいか分かりません。写真をアップロードしているときに、どのようにして一意のランダムな名前を付けることができますか?

<?php 



if (isset($_POST['submit'])) { 

    $validextensions = array("jpeg", "jpg", "png"); 

    $temporary = explode(".", $_FILES["file"]["name"]); 

    $file_extension = end($temporary); 



    if ((($_FILES["file"]["type"] == "image/png") || ($_FILES["file"]["type"] == "image/jpg") || ($_FILES["file"]["type"] == "image/jpeg") 

      ) && ($_FILES["file"]["size"] < 1000000000000000000000000000000000000000000000000000000)//Approx. 100kb files can be uploaded. 

      && in_array($file_extension, $validextensions)) { 



     if ($_FILES["file"]["error"] > 0) { 

      echo "Return Code: " . $_FILES["file"]["error"] . "<br/><br/>"; 

     } else { 



      echo "<span>Vasa Slika je uspesno prikacena...!!</span><br/>"; 

      echo "<br/><b>Ime od vasa slika:</b> " . $_FILES["file"]["name"] . "<br>"; 

      echo "<b>Tip:</b> " . $_FILES["file"]["type"] . "<br>"; 

      echo "<b>Velicina:</b> " . ($_FILES["file"]["size"]/1024) . " kB<br>"; 






      if (file_exists("upload/" . $_FILES["file"]["name"])) { 

       echo $_FILES["file"]["name"] . " <b>vec postoji.</b> "; 

      } else { 

       move_uploaded_file($_FILES["file"]["tmp_name"], "upload/" . $_FILES["file"]["name"]); 

       $imgFullpath = "http://".$_SERVER['SERVER_NAME'].dirname($_SERVER["REQUEST_URI"].'?').'/'. "upload/" . $_FILES["file"]["name"]; 

       echo "<b>Link ka vasu sliku:</b><a href = '$imgFullpath' target='_blank'> " .$imgFullpath.'<a>'; 



      } 



     } 

    } else { 

     echo "<span>***Niste odabrali sliku !!!***<span>"; 

    } 

} 

?> 

質問は次のとおりです。写真をアップロードする際に、どのように写真をユニークな名前にすることができますか?肩書きが言うように。

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

+0

ファイル名の後にミリ秒単位である – FullStack

+0

使用タイムスタンプを日付と時刻を追加したり、それをどこに置くか、それ – user1735921

+1

をアップロードしたユーザーIDの使用を作りますか?申し訳ありませんが私は開発者ではない、私はインターネット上でこのコードを発見した.. –

答えて

0

あなたが最初のランダムな文字列を作成する必要があります。

$random_chars = sha1(time().uniqid()); 

は、ファイルの拡張子を追加します。

$new_filename = $random_chars.'.'.$your_extention; 
最後に

move_uploaded_file($_FILES["file"]["tmp_name"], "upload/" . $new_filename); 
関連する問題