上传代码有什么问题?

时间:2011-05-24 02:41:27

标签: php

<?php
    //set where you want to store files
    //in this example we keep file in folder upload
    //$HTTP_POST_FILES['ufile']['name']; = upload file name
    //for example upload file name cartoon.gif . $path will be upload/cartoon.gif
    $path= "upload/".$HTTP_POST_FILES['ufile']['name'];
    if($ufile !=none) {
        if(copy($HTTP_POST_FILES['ufile']['tmp_name'], $path)) {
            echo "Successful<BR/>";
            //$HTTP_POST_FILES['ufile']['name'] = file name
            //$HTTP_POST_FILES['ufile']['size'] = file size
            //$HTTP_POST_FILES['ufile']['type'] = type of file
            echo "File Name :".$HTTP_POST_FILES['ufile']['name']."<BR/>";
            echo "File Size :".$HTTP_POST_FILES['ufile']['size']."<BR/>";
            echo "File Type :".$HTTP_POST_FILES['ufile']['type']."<BR/>";
            echo "<img src="$path" width="150" height="150">";
        } else {
            echo "Error";
        }
    }
?>

这是一个完整的表格http://tutorialblog.info/2010/08/06/php-upload-single-file.html 当我在当地环境中尝试时。它显示错误?代码有什么问题?谢谢。

首先,我认为这是错误的。 if($ufile !=none)它应该是if($_POST['ufile' !=none) 我是对的吗?

1 个答案:

答案 0 :(得分:3)

我同意Stephen的观点,这不是一个很好的例子,你还需要验证你的上传。你不会允许任何人上传任何东西。

但是如果你想找到问题:PHP更新的版本不再接受HTTP_POST_FILES了。应该是$ _FILES

$ ufile!= none if if($ _FILES ['ufile'] ['tmp_name'])

copy($ HTTP_POST_FILES ['ufile'] ['tmp_name'],$ path)最好是move_uploaded_file($ _ FILES ['ufile'] ['tmp_name'],$ path)

您的html表单enctype应为enctype =“multipart / form-data”

$ path路径应该具有正确的权限