Uploadify - 文件未显示

时间:2009-07-24 01:53:51

标签: php jquery cakephp uploadify

我正在尝试使用我的CakePHP应用程序使用Uploadify(一个jQuery插件)。本地(WampServer),它工作得很好,但当我在我的实时服务器(Dreamhost)上尝试它时,文件不会显示。我已正确地修改文件夹,检查路径等,我无法理解为什么它不起作用。这是upload.php:

if (!empty($_FILES)) {
    $tempFile = $_FILES['Filedata']['tmp_name'];
    $targetPath = $_SERVER['DOCUMENT_ROOT'] . "/app/webroot/posts/temp/";
    $targetFile =  str_replace('//','/',$targetPath) . $_FILES['Filedata']['name'];

    $targetFile = str_replace(".", "_" . mt_rand(10000000,99999999) . ".", $targetFile);

    move_uploaded_file($tempFile,$targetFile);
}
echo "1";

这个脚本肯定在运行,但是我查看了指定的文件夹(以及整个文件系统),并且上传的文件没有显示出来!这让我发疯了 - 希望有人能解决这个问题。如果我要发布更多代码,请告诉我,我会。

2 个答案:

答案 0 :(得分:2)

您可以更改$ targetPath,使其相对于文档而不是确切的服务器路径。我不久前遇到过类似的问题。

答案 1 :(得分:2)

原来,就是这一行:

$targetFile = str_replace(".", "_" . mt_rand(10000000,99999999) . ".", $targetFile);

此行旨在向文件名后附加一系列随机数字以避免冲突。但是,正如您所看到的,它在整个路径上运行,而不仅仅是文件名。好吧,我的域名在我的路径中(即mydomain.com),因此正在对mydomain_12314123402.com进行更改,这显然是一条不存在的路径。

伙计,我觉得自己像个白痴!