自己整理了个图片上传的程序,怎么有的图片文件上传不了?

haomawu2017 2017-10-09 02:43:15
自己从网上搜了些代码整理的,大部分时候是可以的,但是有个别图片总是上传不了,也没有任何提示。(图片格式和大小都符合要求,也不出任何的提示文字),哪位能帮我看看问题出在哪里?非常感谢!




<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>上传图片</title>
</head>

<body>

<form action="" enctype="multipart/form-data" method="post" name="uploadfile" style="margin:0px;">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><input name="upfile" type="file" size="8" />
<input type="submit" value="上传" />
<br />
<?php
@header('Content-type: text/html;charset=UTF-8');
if (isset($_FILES['upfile']['size'])){

if(is_uploaded_file($_FILES['upfile']['tmp_name'])){
$upfile=$_FILES["upfile"];

//获表单数据
$imgname=$upfile["name"];//上传文件的文件名
$imgtype=$upfile["type"];//上传文件的类型
$imgsize=$upfile["size"];//上传文件的大小
$tmp_name=$upfile["tmp_name"];//上传文件的临时存放路径

//验证(格式、大小)

if ($imgtype=='image/pjpeg' || $imgtype=='image/jpeg' || $imgtype=='image/jpg' || $imgtype=='image/gif' || $imgtype=='image/png' ){
if ($imgsize<=2000000){
//-------------------------------------
$info = pathinfo($imgname);//取到文件后缀
$newname=date('YmdHis').rand(1000,9999).'.'.$info['extension'];//日期+随机数+后缀构成新名$newname
move_uploaded_file($tmp_name,'comimage/'.$newname); //执行上传操作


if(file_exists('comimage/'.$newname)){
unlink('comimage/'.$newname);//删除原图
}
//-------------------------------------
}else{
echo '上传失败,文件太大!不能超过2M';
echo '<script>window.location="addimg2.php"</script>';
}


}else{
echo '上传失败,格式错误。只支持JPG\GIF\PNG格式的图片!';
}
//删除功能
echo '<a href="imgdel.php?imgname='.$newname.'">删除</a>';

}

}
?> </td>
</tr>
</table>
</form>

</body>
</html>
...全文
330 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_40682603 2017-10-18
  • 打赏
  • 举报
回复
检查一下php.ini , upload_max_filesize
学习a123456 2017-10-12
  • 打赏
  • 举报
回复
如果图片格式和大小都没问题,那就试试把文件名改成数字字母
嗲四的快乐 2017-10-12
  • 打赏
  • 举报
回复
调试模式打开 error_reporting(7); 把file 输出 然后看有什么信息
Php辅物 2017-10-10
  • 打赏
  • 举报
回复
上传成功的时候echo下上传成功 判断下你是成功了还是没成功,好调试
智商众筹 2017-10-10
  • 打赏
  • 举报
回复
调试错误可以先打开display_errors,或者在可疑的地方逐行echo 掌握调试方法很重要,发现问题其实已经算解决了大半了
wh1stle 2017-10-09
  • 打赏
  • 举报
回复
检查一下php.ini , upload_max_filesize
一起混吧 2017-10-09
  • 打赏
  • 举报
回复
检查是不是超过php.ini 中设置的最大上传大小了
xuzuning 2017-10-09
  • 打赏
  • 举报
回复
连看手册也不会吗?
haomawu2017 2017-10-09
  • 打赏
  • 举报
回复
我是新手,不太会弄。麻烦一下!
xuzuning 2017-10-09
  • 打赏
  • 举报
回复
检查应从 $_FILES['upfile']['error'],$_FILES['upfile']['error']不为 0 时就有错,你可查阅手册形成代码

20,359

社区成员

发帖
与我相关
我的任务
社区描述
“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中。PHP语法利用了C、Java和Perl,该语言的主要目标是允许web开发人员快速编写动态网页。
phpphpstorm 技术论坛(原bbs)
社区管理员
  • 开源资源社区
  • phpstory
  • xuzuning
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧