做了个图片上传的功能,老是提示两行错误:
Notice: Undefined index: upload in D:\WWW\qiangyuan\up.php on line 34
Notice: Undefined index: upload in D:\WWW\qiangyuan\up.php on line 41代码如下:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style type="text/css">
<!--
body,td,th {
color: #FF0000;
font-size: 12px;
}
body {
margin-left: 2px;
margin-top: 2px;
margin-right: 2px;
margin-bottom: 0px;
background-color: #e3efe7;
}
-->
</style>
</head>
<body> <form name="form1" action="" enctype="multipart/form-data" method="post"> <input name="upload" type="file">
<input type="submit" value="确定上传">
</form><?php
/**
* $file_ext:上传的文件图片格式;
* $file_name:上传后,存在服务器上的新路径和文件名;
*/ $file_ext = $_FILES["upload"]["name"];
$file_ext_rev = strrev($file_ext);
$file_ext_num = strrpos($file_ext_rev, ".");
$file_ext = strrev($file_ext_rev);
$file_ext = substr($file_ext, -$file_ext_num);
$file_ext = strtolower($file_ext); if ($_FILES["upload"]["size"] > 0)
{
//限定上传的文件格式
if ($file_ext === "jpg" || $file_ext == "jpeg" || $file_ext == "gif" || $file_ext == "png")
{
if ($_FILES["upload"]["size"] < 400000) //图片大小不能大于 400 K
{
$file_name = "./" . date("YmdHis");
$file_name .= "." . $file_ext; $tmp_name = $_FILES["upload"]["tmp_name"];
move_uploaded_file($tmp_name, "product/$file_name"); //上传到图片目录
echo substr($file_name,2);//输出生成的图片名
echo "<br><br>";
echo "<A href='javascript:window.close()'><div align='right'><img src='images/close.jpg' border='0' width='60' height='18' align='middle'></div></a>";
}
else
{
echo "上传的文件图片大小必须小于400kb";
}
}
else
{
echo "上传的文件格式有误";
}
}
?>
</body>
</html>
Notice: Undefined index: upload in D:\WWW\qiangyuan\up.php on line 34
Notice: Undefined index: upload in D:\WWW\qiangyuan\up.php on line 41代码如下:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style type="text/css">
<!--
body,td,th {
color: #FF0000;
font-size: 12px;
}
body {
margin-left: 2px;
margin-top: 2px;
margin-right: 2px;
margin-bottom: 0px;
background-color: #e3efe7;
}
-->
</style>
</head>
<body> <form name="form1" action="" enctype="multipart/form-data" method="post"> <input name="upload" type="file">
<input type="submit" value="确定上传">
</form><?php
/**
* $file_ext:上传的文件图片格式;
* $file_name:上传后,存在服务器上的新路径和文件名;
*/ $file_ext = $_FILES["upload"]["name"];
$file_ext_rev = strrev($file_ext);
$file_ext_num = strrpos($file_ext_rev, ".");
$file_ext = strrev($file_ext_rev);
$file_ext = substr($file_ext, -$file_ext_num);
$file_ext = strtolower($file_ext); if ($_FILES["upload"]["size"] > 0)
{
//限定上传的文件格式
if ($file_ext === "jpg" || $file_ext == "jpeg" || $file_ext == "gif" || $file_ext == "png")
{
if ($_FILES["upload"]["size"] < 400000) //图片大小不能大于 400 K
{
$file_name = "./" . date("YmdHis");
$file_name .= "." . $file_ext; $tmp_name = $_FILES["upload"]["tmp_name"];
move_uploaded_file($tmp_name, "product/$file_name"); //上传到图片目录
echo substr($file_name,2);//输出生成的图片名
echo "<br><br>";
echo "<A href='javascript:window.close()'><div align='right'><img src='images/close.jpg' border='0' width='60' height='18' align='middle'></div></a>";
}
else
{
echo "上传的文件图片大小必须小于400kb";
}
}
else
{
echo "上传的文件格式有误";
}
}
?>
</body>
</html>
if ($_FILES["upload"]["size"] > 0)提示的是这两行出错
if($_SERVER['REQUEST_METHOD'] != "POST") return;
$file_ext = $_FILES["upload"]["name"];
$file_ext_rev = strrev($file_ext);
$file_ext_num = strrpos($file_ext_rev, ".");
/.....
}
$file=$_FILES["upload"];
$ext = explode(".",$file['name']);
$name=$_FILES["upload"]["name"];//上传文件名
$count_ext = $ext[count($ext)-1]; //上传文件后缀名
if($count_ext != 'jpg' && $count_ext !='gif' && $count_ext !='png')
{
return '只能上传.jpg,.gif,.png的格式图片,请重新上传!';
}
<?php
……
?>
<html>
……
</html>
上面isset的方式比较好。if(isset($_FILES["upload"])){
--------------------------
$file_ext = $_FILES["upload"]["name"];
----------
echo "上传的文件格式有误";
}
}
-----------
}