简单的PHP图片上传程序


Posted in PHP onMarch 27, 2008

第一种:
php部分

<?php  
if($_FILES['file']['error'] > 0){  
   echo '!problem:';  
   switch($_FILES['file']['error'])  
   {  
     case 1: echo '文件大小超过服务器限制';  
             break;  
     case 2: echo '文件太大!';  
             break;  
     case 3: echo '文件只加载了一部分!';  
             break;  
     case 4: echo '文件加载失败!';  
             break;  
   }     exit;  
}  
if($_FILES['file']['size'] > 1000000){  
   echo '文件过大!';  
   exit;  
}  
if($_FILES['file']['type']!='image/jpeg' && $_FILES['file']['type']!='image/gif'){  
   echo '文件不是JPG或者GIF图片!';  
   exit;  
}  
$today = date("YmdHis");  
$filetype = $_FILES['file']['type'];  
if($filetype == 'image/jpeg'){  
  $type = '.jpg';  
}  
if($filetype == 'image/gif'){  
  $type = '.gif';  
}  
$upfile = 'upfile/' . $today . $type;  
if(is_uploaded_file($_FILES['file']['tmp_name']))  
{  
   if(!move_uploaded_file($_FILES['file']['tmp_name'], $upfile))  
   {  
     echo '移动文件失败!';  
     exit;  
    }  
}  
else  
{  
   echo 'problem!';  
   exit;  
}  
echo '<h1>success!</h1><br>';   
echo '文件大小:' . $_FILES['file']['size'] . '字节' . '<Br>';  
echo '文件路径:' . $upfile;  
echo '<hr with="100%" />' . '<p>';  
$dirr = 'upfile/';  
$dir = opendir($dirr);  
echo $dirr . '--Listing:<ul>';  
while($file = readdir($dir)){  
  echo "<li>$file</li>";  
}  
echo '</ul>';  
closedir($dir);  
?> 

第二种:

<?php  if(empty($_GET[submit]))  
{  
?>  
<form enctype="multipart/form-data" action="<?php $_SERVER['PHP_SELF']?>?submit=1" method="post">  
Send this file: <input name="filename" type="file">  
<input type="submit" value="确定上传">  
</form>  
<?php   
}else{  
    $path="uploadfiles/";        //上传路径  
//echo $_FILES["filename"]["type"];  

if(!file_exists($path))  
{  
    //检查是否有该文件夹,如果没有就创建,并给予最高权限  
    mkdir("$path", 0700);  
}//END IF  
//允许上传的文件格式  
$tp = array("image/gif","image/pjpeg","image/png");  
//检查上传文件是否在允许上传的类型  
if(!in_array($_FILES["filename"]["type"],$tp))  
{  
    echo "格式不对";  
    exit;  
}//END IF  
if($_FILES["filename"]["name"])  
{  
        $file1=$_FILES["filename"]["name"];  
        $file2 = $path.time().$file1;  
        $flag=1;  
}//END IF  
if($flag) $result=move_uploaded_file($_FILES["filename"]["tmp_name"],$file2);  
//特别注意这里传递给move_uploaded_file的第一个参数为上传到服务器上的临时文件  
if($result)  
{  
    //echo "上传成功!".$file2;  
    echo "<script language='javascript'>";  
    echo "alert(\"上传成功!\");";  
    echo " location='add_aaa.php?pname=$file2'";  
    echo "</script>";  
}//END IF  

}  
?>
PHP 相关文章推荐
php生成随机密码的三种方法小结
Sep 04 PHP
php字符串截取的简单方法
Jul 04 PHP
php获得url参数中具有&amp;的值的方法
Mar 05 PHP
PHP微框架Dispatch简介
Jun 12 PHP
ThinkPHP采用实现三级循环代码实例
Jul 18 PHP
thinkphp循环结构用法实例
Nov 24 PHP
php通过array_unshift函数添加多个变量到数组前端的方法
Mar 18 PHP
详解Window7 下开发php扩展
Dec 31 PHP
thinkphp配置文件路径的实现方法
Aug 30 PHP
Zend Framework基于Command命令行建立ZF项目的方法
Feb 18 PHP
PHP排序算法之直接插入排序(Straight Insertion Sort)实例分析
Apr 20 PHP
浅析PHP中的 inet_pton 网络函数
Dec 16 PHP
php中变量及部分适用方法
Mar 27 #PHP
php Undefined index和Undefined variable的解决方法
Mar 27 #PHP
php.ini中的php-5.2.0配置指令详解
Mar 27 #PHP
一家之言的经验之谈php+mysql扎实个人基本功
Mar 27 #PHP
php部分常见问题总结
Mar 27 #PHP
php+mysql分页代码详解
Mar 27 #PHP
Mysql和网页显示乱码解决方法集锦
Mar 27 #PHP
You might like
冰滴咖啡制作步骤
2021/03/03 冲泡冲煮
php 引用(&amp;)详解
2009/11/20 PHP
windows服务器中检测PHP SSL是否开启以及开启SSL的方法
2014/04/25 PHP
php ucwords() 函数将字符串中每个单词的首字符转换为大写(实现代码)
2016/05/12 PHP
js 禁用浏览器的后退功能的简单方法
2008/12/10 Javascript
js 时间格式与时间戳的相互转换示例代码
2013/12/25 Javascript
Javascript中的几种URL编码方法比较
2015/01/23 Javascript
Node.js中的流(Stream)介绍
2015/03/30 Javascript
js获取及判断键盘按键的方法
2015/12/01 Javascript
JS ES6中setTimeout函数的执行上下文示例
2017/04/27 Javascript
vuejs 单文件组件.vue 文件的使用
2017/07/28 Javascript
AngularJs+Bootstrap实现漂亮的计算器
2017/08/10 Javascript
使用Angular CLI从蓝本生成代码详解
2018/03/24 Javascript
JavaScript面向对象编程小游戏---贪吃蛇代码实例
2019/05/15 Javascript
微信小程序动态显示项目倒计时
2019/06/20 Javascript
微信小程序可滑动月日历组件使用详解
2019/10/21 Javascript
微信小程序音乐播放器开发
2019/11/20 Javascript
使用typescript改造koa开发框架的实现
2020/02/04 Javascript
解决VantUI popup 弹窗不弹出或无蒙层的问题
2020/11/03 Javascript
Webpack的Loader和Plugin的区别
2020/11/09 Javascript
[58:15]2018DOTA2亚洲邀请赛 4.1 小组赛 A组 NB vs Liquid
2018/04/02 DOTA
Python网络编程之TCP套接字简单用法示例
2018/04/09 Python
Python版名片管理系统
2018/11/30 Python
在python plt图表中文字大小调节的方法
2019/07/08 Python
Python 利用高德地图api实现经纬度与地址的批量转换
2019/08/14 Python
HTML5 Canvas API中drawImage()方法的使用实例
2016/03/25 HTML / CSS
HTML5 与 XHTML2
2008/10/17 HTML / CSS
Html5新标签解释及用法
2012/02/17 HTML / CSS
The Beach People美国:澳洲海滨奢华品牌
2018/07/05 全球购物
电子商务专业自荐信
2014/06/02 职场文书
党员评议思想汇报
2014/10/08 职场文书
2014年材料员工作总结
2014/11/19 职场文书
导游词之贵州织金洞
2019/10/12 职场文书
Java获取e.printStackTrace()打印的信息方式
2021/08/07 Java/Android
js中Object.create实例用法详解
2021/10/05 Javascript
Java工作中实用的代码优化技巧分享
2022/04/21 Java/Android