0

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

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”的文件没有移动到临时文件夹。可以帮助我吗?

4

3 回答 3

0

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

于 2012-05-15T12:46:06.800 回答
0

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

此外,@是一个错误控制运算符。它抑制来自move_uploaded_file(). 每当您使用@并获得意外功能时,最好删除@并查看是否出现任何错误。

于 2012-05-15T12:48:10.160 回答
0

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

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

还要检查和更改所有权

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

改变你的路径。

于 2016-02-13T10:49:26.600 回答