move_uploaded_files()php没有移动文件

时间:2016-01-26 03:12:25

标签: php mysql web

所以我有点问题。我正在查看视频上传教程,我看到了这个教程。

https://www.youtube.com/watch?v=SibODOJle6Q

似乎我的move_uploaded_files不起作用,看到他复制的代码工作并且结果完全不同对我来说是微不足道的。

请问我能得到一些帮助吗?

我的代码

<html>
<head>
<title>Video Upoad</title>
<link rel='stylesheet' href='stylesheet.css'/>
</head>
<body>
    <?php 
    require('connect.php');
    ?>

    <div id='box'>
        <form method ='post' enctype='multipart/form-data'>
            <?php
            if(isset($_FILES['video'])){

                $name= $_FILES['video']['name'];
                $type = explode('.',$name);
                $type=end($type);
                $size= $_FILES['video']['size'];
                $random_name=rand();
                $tmp = $_FILES['video']['tmp_name'];

                if($type !='mp4' && $type != 'MP4' && $type!='flv'){
                    $message = "Video Format is not supported!";


                }else{
                    move_uploaded_file($tmp, 'viddata/'.$random_name.'.'.$type);
                    $message ="The Upload was successful";
                    mysql_query("INSERT INTO video VALUES ('','$name','viddata/$random_name.$type')");

                }
                echo $message.'<br/><br/>';
                //echo $type.'<br/>';
                //echo $name.'<br/>';
            }


?>


            Select Video: <br/>
            <input type='file' name='video' />
            <br/><br/>
            <input type='submit' value='Upload' />
        </form>
    </div>

    <div id='box'>
    </div>
</body>

</html>

它会插入数据库以及除将文件移动到目标之外的所有内容。

2 个答案:

答案 0 :(得分:1)

您应该考虑以下事项:

  • 确保您拥有viddata文件夹。
  • 如果文件超过upload_max_filesize
  • ,请检查您要上传的文件的文件大小
  • 如果是,您可以配置php.ini并将upload_max_filesize设置为首选大小,然后重置XAMPP控制面板。
  • 同时检查您尝试上传文件的文件夹/目录的权限。
  • 您还应该为用户上传的文件设置条件,例如在上传文件之前设置文件类型和大小的条件。

答案 1 :(得分:1)

首先检查返回值,错误和警告。 documentation说:

  

返回值

           

成功时返回TRUE。

     

如果filename不是有效的上传文件,则不会执行任何操作,并且   move_uploaded_file()将返回FALSE。

     

如果filename是有效的上传文件,但某些文件无法移动   原因,不会发生任何操作,move_uploaded_file()将返回   假。此外,还会发出警告。

还有一些好的examples具有更全面的错误检查功能。