【问题标题】:PHP rename file to this sql idPHP 将文件重命名为此 sql id
【发布时间】:2012-04-14 21:45:11
【问题描述】:

我有以下几行 php 代码,它应该将服务器上已经存在的文件重命名为上次查询中生成的 id:

$image1Oldname = "images/" . $myfile;
$image1NewName = "images/" . mysql_insert_id() . ".jpg";

rename($image1Oldname, $image1NewName);

由于某种原因,这不会在脚本运行时重命名文件。

有什么建议吗?

【问题讨论】:

  • echo "$image1Oldname $image1NewName";
  • 啊!谢谢...这突出了问题!

标签: php mysql rename mysql-insert-id


【解决方案1】:

您是否检查过您(即您的 PHP 守护程序)有权重命名它,并且路径是否正确?

【讨论】:

  • 猜测不是出路。每个 PHP 新手都必须了解这一点。
  • 如果我硬编码而不是使用变量它可以正常工作,所以我绝对有权限 - rename("images/original.jpg", "images/new.jpg");
  • 那么你的路径可能是错误的。尝试回显 $image1Oldname 和 $image1NewName。并张贴上面所说的内容。
  • $myFile 有扩展名吗?还是只是名字?
【解决方案2】:

有什么建议吗?

当然。
你必须学习如何调试你的代码。

但这不是一门火箭科学。

  • 只需打开所有可能的错误报告
  • 并回显您正在使用的每条数据,以查看是否出现问题。
ini_set('display_errors',1);
error_reporting(E_ALL);

$image1Oldname = "images/" . $myfile;
$image1NewName = "images/" . mysql_insert_id() . ".jpg";

var_dump($image1Oldname, $image1NewName);
rename($image1Oldname, $image1NewName);
exit;

【讨论】:

    猜你喜欢
    • 2017-02-21
    • 2023-03-03
    • 2012-08-13
    • 2014-09-09
    • 2014-01-20
    • 2015-06-07
    • 2011-02-08
    • 1970-01-01
    • 2013-08-27
    相关资源
    最近更新 更多