文件未从temp移动到上载文件夹

时间:2012-05-15 12:13:22

标签: php mysql

请帮帮我,这是我的代码:

if(isset($_POST['send'])) {
    $filename =strtolower(basename($_FILES['resume']['name']));
    $ext = $_FILES["resume"]["type"];
    $size= $_FILES["resume"]["size"];

    if (!empty($filename) && (($ext == "application/msword") ||
       ($ext  == "application/pdf") && ($size < 500000))) {
        $name = $_POST['name']; 
        $email_address = $_POST['email'];
        $nwname=str_replace(" ","",$name);
        $newfilename= substr(md5(rand() * time()),0,7);
        $newfilename2 =$nwname."_".$newfilename;
        if($ext == 'application/msword') {
            $newname ='upload/'.$newfilename2.".doc";
        } else if($ext == 'application/pdf'){
            $newname ='upload/'.$newfilename2.".pdf";
        }
        $temp= $_FILES['resume']['tmp_name'];
        echo $temp;

        $move = @move_uploaded_file($temp,$newname)
                    or die('Updoaling error.');
        echo $move; 

        $query = mysql_query("UPDATE saxet SET filelocation='$newname'
            WHERE name='$name' AND email='$email_address'");
    }
}

名称为“$filename”的文件未移至临时文件夹。可以帮到我吗?

3 个答案:

答案 0 :(得分:0)

我认为您应该检查在上传文件夹中写文件的权限。

答案 1 :(得分:0)

我建议在移动上传的文件之前使用is_writable()函数确定目标是否可写。

此外,@error control operator。它可以抑制来自move_uploaded_file()的错误。只要您使用@并获得意外功能,最好删除@并查看是否出现任何错误。

答案 2 :(得分:0)

为存储上传文件的文件夹授予适当的权限。

sudo chmod -R 755 /var/www/html/folder

还检查并更改所有权

shudo chown root:www /var/www/html/folder

更改您的路径。