注意:未定义索引:图像输入

时间:2012-10-28 12:47:03

标签: php database upload xampp

  

可能重复:
  Undefined index: file

您好我现在正在学习如何将图片上传到数据库,但我收到此错误/通知

  

注意:未定义的索引:第19行的C:\ xampp \ htdocs \ Pildibaas \ index.php中的图像

这是我的index.php整码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Image upload</title>
</head>

<body>
    <form action="index.php" method="POST" enctype="multipart/form-data">
        File:
        <input type="file" name="image"> <input type="submit" value="Upload"> 
    </form>


<?php
mysql_connect ("localhost", "root", "") or die (mysql_error());
mysql_select_db ("databaseimage") or die (mysql_error());


?>
</body>

</html>

第19行(此行给出错误)从index.php中删除:

echo $file = $_FILES['image']['tmp_name'];

从google发现我需要更改tmp文件夹的预设,但是它已经完全准备好所有需要的预备。

在教程中他没有收到此错误

谢谢

2 个答案:

答案 0 :(得分:9)

echo $file = $_FILES['image']['tmp_name'];

应该是

if(isset($_FILES['image'])){
    echo $_FILES['image']['tmp_name'];
}

首先检查是否设置了$_FILES['image']。如果没有,这将不会运行。因此,您不会有错误,它没有索引。

因为您首先必须在$_FILES['image']设置之前提交表单...

此外,输入标记是自动关闭的,因此您的表单不会是:

<form action="index.php" method="POST" enctype="multipart/form-data">
    File:
    <input type="file" name="image"> <input type="submit" value="Upload"> 
</form>

但:

<form action="index.php" method="POST" enctype="multipart/form-data">
    File:
    <input type="file" name="image" /> <input type="submit" value="Upload" /> 
</form>

答案 1 :(得分:0)

echo $file = $_FILES['image']['tmp_name'];

应该是

echo $_FILES['image']['tmp_name'];
 or 
if(!empty($_FILES) && isset($_FILES['image'])){
  echo $_FILES['image']['tmp_name'];
    }

您也可以使用

print_r($_FILES);