0
在检查上传图像的文件扩展名时,我的代码始终返回false,导致图像未被上传。上传的图片具有适当的扩展名。文件上传不上传文件扩展名检查
我的问题是为什么它不接受文件?如果支票取出文件,则成功上传。如果您有其他支票,请不要担心这是我唯一的安全检查。只是这是造成所有问题的原因。
$name = $_FILES['file']['name'];
$tmp_name = $_FILES['file']['tmp_name'];
$pre_ext = explode(".", $tmp_name);
$ext = end($pre_ext);
if (getimagesize($tmp_name) != false)
{
//below is the check that is causing all the problems
if ($ext == "PNG" || $ext == "png" || $ext == "jpg" || $ext == "JPG" || $ext == "jpeg" || $ext == "JPEG" || $ext == "GIF" || $ext == "gif"){
if ($_FILES['file']['error'] == 0)
{
move_uploaded_file($tmp_name, 'post_images/' . $name);
}
}
}
太棒了,非常感谢。如果我有一个后续问题,并且这与我当前的问题无关,如果我没有使用'move_uploaded_file()',图像在tmp文件夹中的持续时间有多长? – jason328
当脚本运行完毕时,它会被删除。所以如果你想稍后使用它,你必须使用'move_uploaded_file'或'copy'复制它。 –