php文件上传简单实现方法

yipeiwu_com7年前PHP代码库

本文实例讲述了php文件上传的简单实现方法。分享给大家供大家参考。具体如下:

文件1:index.php

复制代码 代码如下:
<form enctype="multipart/form-data" action="uploadProcess.php" method="post" name="myform">
用户名:<input type="text" name="username" /><br />
密码:<input type="password" name="pwd" /><br />
上传图片:<input type="file" name="upimage"><br />
<input type="submit" name="sub" value="提交">
</form>

文件2:uploadProcess.php

复制代码 代码如下:
<?php
$filetype_arr = array("image/jpeg","image/png","image/gif","image/gif");//允许上传的图片类型
if(!empty($_POST['sub'])){
 $username = $_POST['username'];//用户名
 $password = $_POST['pwd'];//密码
 
 if(is_uploaded_file($_FILES['upimage']['tmp_name'])){//判断是否是通过http上传的图片
  $tmp_name = $_FILES['upimage']['tmp_name'];//上传图片临时名
  //判断图片类型是否支持
  if(!in_array($_FILES['upimage']['type'],$filetype_arr)){
   echo "抱歉,上传图片只支持";
   foreach($filetype_arr as $value){
    echo $value.",";
   }
   echo "等类型";
   exit();
  } 
  $exten_name = substr($_FILES['upimage']['name'],strrpos($_FILES['upimage']['name'],"."));//获取上传图片的后缀名
  $dest_name = $_SERVER['DOCUMENT_ROOT']."/php/upfile/".$username."/";//
  //判断保存的目录是否存在,不存在则创建
  if(!file_exists($dest_name)){
   if(!mkdir($dest_name)){//如果创建不成功
    echo "创建目录失败,文件无法上传";
    exit();
   }
  }
  //如果已经存在保存的目录
  if(move_uploaded_file($tmp_name,$dest_name.time().rand(1,100).$exten_name)){//移动临时文件到保存的目录,并改名
   echo "上传图片成功";
  }else{
   echo "图片上传失败";
  }
 }else{
  echo "找不到你上传的图片,请重新上传";
 }
}
?>

希望本文所述对大家的php程序设计有所帮助。

相关文章

php 文件上传类代码

复制代码 代码如下: <?php /** * 文件上传类 */ class uploadFile { public $max_size = '1000000';//设置上传文件大小...

php中header设置常见文件类型的content-type

在PHP中可以通过header函数来发送头信息,还可以设置文件的content-type,下面整理了一些常见文件类型对于的content-type值。 //date 2015-06-...

PHP定时任务获取微信access_token的方法

本文实例讲述了PHP定时任务获取微信access_token的方法。分享给大家供大家参考,具体如下: 微信access_token在开发时会变的好像是几分种不一样了,这里我们来介绍关于P...

PHP中define() 与 const定义常量的区别详解

本文实例讲述了PHP中define() 与 const定义常量的区别。分享给大家供大家参考,具体如下: 前言 今天在Stackoverflow又看到一个很有趣的文章,所以翻译过后摘了过来...

深入解析PHP中foreach语句控制数组循环的用法

foreach是PHP中很常用的一个用作数组循环的控制语句。 因为它的方便和易用,自然也就在后端隐藏着很复杂的具体实现方式(对用户透明) 今天,我们就来一起分析分析,foreach是如何...