-2

下面是我的代码:

<?php
$name = $_FILES["file"]["name"];
$temp = $_FILES["file"]["temp"];
if(isset($name))
{
if(!empty($name))
{
$location= "upload/";
if(move_uploaded_file($temp, $location.$name))
{
echo "Uploaded!!!";
}
else
{
echo "Error:";
}
}
else
{
echo "Please choose a file to upload";
}
}
?>
<form action= "upload.php" method="POST" enctype="multipart/form-data">
<input type="file" name="file" ><br><br>
<input type="Submit" value="Submit" >
</form> 

每当我运行此代码时,我都会遇到错误,请协助。我是 PHP 新手,需要尽快学习。提前致谢。

注意:未定义的索引:第 3 行 C:\xampp\htdocs\testfolder\upload.php 中的 temp。

4

3 回答 3

3

$temp = $_FILES["file"]["temp"];应该$temp = $_FILES["file"]["tmp_name"];

于 2013-01-08T18:46:30.567 回答
0

它是 $_FILES["file"]["tmp_name"];

提示:执行 $_FILES 变量的 var_dump 以查看它包含的内容。var_dump($_FILES); 这会给你答案。

于 2013-01-08T18:49:58.070 回答
0

在尝试将它们从数组中拉出之前,您应该检查是否设置了这些值。以及使用tmp_name而不是tempmpaepper 指出。

<?php
if(
    isset($_FILES["file"]["name"]) && !empty($_FILES["file"]["name"]) 
    && isset($_FILES["file"]["tmp_name"]) && !empty($_FILES["file"]["tmp_name"])
) {
    $name = $_FILES["file"]["name"];
    $temp = $_FILES["file"]["tmp_name"];
    $location= "upload/";
    if(move_uploaded_file($temp, $location.$name)) {
        echo "Uploaded!!!";
    } else {
        echo "Error:";
    }
} else {
    echo "Please choose a file to upload";
}
?>
<form action= "upload.php" method="POST" enctype="multipart/form-data">
<input type="file" name="file" ><br><br>
<input type="Submit" value="Submit" >
</form> 
于 2013-01-08T18:50:32.840 回答