【问题标题】:How to change the filename in php [duplicate]如何在php中更改文件名[重复]
【发布时间】:2016-02-29 06:00:25
【问题描述】:

实际上我想在插入数据库后更改文件名,我尝试了但是在插入我更改的时间值但在移动文件时我无法更改文件名,

我想在移动到一个文件夹之后更改文件名,将该值插入 DB

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

  // here i got original filename,but i wnt change the filename
  $filename = $_FILES['file']['name'];
  $extension = pathinfo($filename, PATHINFO_EXTENSION);

  // so here i changed filename but inserting in this file name and while in originalfilename,how to change that original filename
  $original_file = md5($filename) . time() . rand(10, 1000) . '-' .$extension;

  $sql = mysql_query("INSERT INTO useralbum(photo) VALUES('$original_file')");
  if ($sql) {
    echo "SUCCESS";
  } else {
    echo "ERROR".mysql_error();
  }
}

【问题讨论】:

标签: php html


【解决方案1】:

你必须先重命名然后上传 -

$filename =$_FILES['file']['name'];
$extension = pathinfo($filename, PATHINFO_EXTENSION);
$original_file =md5($filename).time().rand(10,1000).'.'.$extension; // Rename
move_uploaded_file($_FILES['file']['tmp_name'],"upload/".$original_file); // Upload
// rest of the code

【讨论】:

  • rand(10,1000).'-'.$extension;- 更改为 .
  • @TintuCRaju 谢谢伙计.. 没有检查。
  • 文件未移动到该文件夹​​
【解决方案2】:
move_uploaded_file($_FILES['file']['tmp_name'],"upload/".$_FILES['file']['name']);

此功能将文件移动到上传文件夹。所以如果你想更改文件名,只需 chage

$_FILES['file']['name']

换一个名字。 例如:

move_uploaded_file($_FILES['file']['tmp_name'],"upload/[YOUR_FILE_NAME]");

【讨论】:

    猜你喜欢
    • 2017-08-29
    • 2018-07-01
    • 2021-12-15
    • 1970-01-01
    • 2015-01-03
    • 2014-06-26
    • 1970-01-01
    • 2013-10-06
    • 1970-01-01
    相关资源
    最近更新 更多