我正在尝试以相同的形式上传图片和mp3但是图片上传而mp3却没有。 这是我的表格
<form action="upload.php"
enctype="multipart/form-data" method="post">
<p>
Please select image<br>
<input type="file" name="image" size="40">
</p>
<p>
Please select audio<br>
<input type="file" name="audio" size="40">
</p>
这是我的upload.php
// checking image
if (($_FILES["image"]["type"] == "image/gif")
or ($_FILES["image"]["type"] == "image/jpeg")
or ($_FILES["image"]["type"] == "image/pjpeg")
or ($_FILES["image"]["type"] == "image/png"))
{
if ($_FILES["image"]["error"] == 0)
{
move_uploaded_file($_FILES["image"]["tmp_name"],
"upload/".$_FILES["image"]["name"]);
}
else
{
echo "image upload failed";
}
}
else
{
echo "file is not supported image";
}
// checking mp3
if (substr($_FILES["audio"]["name"],-3) == "mp3")
{
if ($_FILES["audio"]["error"] == 0)
{
move_uploaded_file($_FILES["audio"]["tmp_name"],
"upload/".$_FILES["audio"]["name"]);
}
else
{
echo "audio upload failed";
}
}
else
{
echo "file is not supported audio";
}
现在,图片获取已上传并移至./upload但在mp3上它回应“音频上传失败”。 不要明白
答案 0 :(得分:6)
尝试echo $_FILES["audio"]["error"]
值并查看错误数。零意味着没有错误。在您的情况下会发生一些错误。在这里,您可以获得错误编号http://php.net/manual/en/features.file-upload.errors.php
比较为零
是不好的做法if ($_FILES["audio"]["error"] == 0)
你应该使用常量:
if ($_FILES["audio"]["error"] == UPLOAD_ERR_OK)
但这只是最好的做法。它不会影响代码的结果。
答案 1 :(得分:2)
您的代码正确的工作只需检查您的 你的php.ini上的upload_max_filesize 默认上传大小限制2mb chage it。