PHP - 文件上载到服务器后重定向

时间:2013-06-14 12:29:39

标签: php redirect upload

我一直在寻找解决这个问题的方法,因此没找到。我希望有人能够帮我解决这个问题。

我有这个PHP脚本来获取发布的文件,上传,重命名并移动到目录中:

<?php

    $fileName   = $_POST['fileName'];

    if (!$fileName) $fileName = $distFile.rand(1,999)."-".basename($_COOKIE["email"]);
    $distFile   = dirname(__FILE__).'/audio/'.$fileName.'.wav';
    $error      = 'N';
    $message    = 'Your song was uploaded!';

    if (!isset($_FILES['wav']) || $_FILES['wav']['error'] > 0) {
        $error = 'Y';
        $message = 'Error while uploading. Error code: '.$_FILES['wav']['error'];
    } else {

        $res = @move_uploaded_file($_FILES['wav']['tmp_name'], $distFile);

        if (!$res) {
            $error = 'Y';
            $message = 'Unable to create the file.';
        }
    }

    echo '
        <?xml version="1.0"?>
        <response>
            <error value="'.$error.'" />
            <message>'.htmlspecialchars($message).'</message>
        </response>
    ';

?>

一切正常,但每当我尝试实现头重定向时(如此):

<?php

    $fileName   = $_POST['fileName'];

    if (!$fileName) $fileName = $distFile.rand(1,999)."-".basename($_COOKIE["email"]);
    $distFile   = dirname(__FILE__).'/audio/'.$fileName.'.wav';
    $error      = 'N';
    $message    = 'Your song was uploaded!';
    if($filename) {
        header('Location: http://google.co.uk');
    }

我无法刷新页面。我必须指出,此脚本位于与我尝试重新加载的页面不同的文件中。此脚本位于文件saveWav.php中,我正在尝试重新加载index.php

1 个答案:

答案 0 :(得分:0)

我希望您将代码替换为此

$fileName   = $_POST['fileName'];

if (!$fileName) 
{
    $fileName = $distFile.rand(1,999)."-".basename($_COOKIE["email"]);
    $distFile   = dirname(__FILE__).'/audio/'.$fileName.'.wav';
    $error      = 'N';
    $message    = 'Your song was uploaded!';
}
else
{
    header('Location: http://google.co.uk');
}