php 生成自动创建文件夹并上传文件的示例代码

 更新时间:2014年03月07日 10:25:52   作者:  
本篇文章主要是对php生成自动创建文件夹并上传文件的示例代码进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助

复制代码 代码如下:

<?
session_start();
if($_SESSION['Company']=='')
{
 //exit();
}
?><?php //上传图片

$uptypes=array('image/jpg','image/jpeg','image/png','image/pjpeg','image/gif','image/bmp','application/x-shockwave-flash','image/x-png');
$max_file_size=5000000;    //上传文件大小限制, 单位BYTE


  $addtime=date("Ymd",time());     
  $testdir="./".$addtime."/";  
  if(file_exists($testdir)):  
  else:  
  mkdir($testdir,0777);  
  endif;  

$destination_folder=$addtime."/"; //上传文件路径
$imgpreview=1;    //是否生成预览图(1为生成,其他为不生成);
$imgpreviewsize=1/2;   //缩略图比例

if ($_SERVER['REQUEST_METHOD'] == 'POST')
{
if (!is_uploaded_file($_FILES["Pic"][tmp_name]))
//是否存在文件
{
echo "<font color='red'>文件不存在!</font>";
exit;
}

$file = $_FILES["Pic"];
if($max_file_size < $file["size"])
//检查文件大小
{
echo "<font color='red'>文件太大!</font>";
exit;
   }

if(!in_array($file["type"], $uptypes))
//检查文件类型
{
echo "<font color='red'>只能上传图像文件或Flash!</font>";
exit;
}

if(!file_exists($destination_folder))
 mkdir($destination_folder);

$filename=$file["tmp_name"];
$image_size = getimagesize($filename);
$pinfo=pathinfo($file["name"]);
$ftype=$pinfo[extension];
$PicName = time().".".$ftype;
$destination = $destination_folder.$PicName;

if (file_exists($destination) && $overwrite != true)
{
      echo "<font color='red'>同名文件已经存在了!</a>";
      exit;
}

if(!move_uploaded_file ($filename, $destination))
{
      echo "<font color='red'>上传文件出错!</a>";
      exit;
}

$pinfo=pathinfo($destination);
$fname=$pinfo[basename];
}
?><?

$path = dirname(__FILE__);
require_once($path.'/../../Module/Factory.php');

$Factory = new Factory();
$BLL_Trade = $Factory->FactoryTrade();
try {
$Infor = new Infor();
$Infor->Title = $_POST['Title'];
$Infor->Deposit = $_POST['Deposit'];
$Infor->Hire = $_POST['Hire'];
$Infor->Location = $_POST['Location'];
$Infor->Pic = $destination;
$Infor->Intro = $_POST['Intro'];
if($_SESSION['MemberId'] ==''){
 $Infor->Member->ID='';
}else {
$Infor->Member->ID = $_SESSION['MemberId'];}
if($_POST['GoodsBarCode'] ==''){
 $Infor->Goods->BarCode = 0;
}else {
$Infor->Goods->BarCode = $_POST['GoodsBarCode'];}
$Infor->Class->ID = 0;//日后修改
$Infor->IssueTime = time();
$Infor->ViewNum = 0;
$Infor->State = 1;//现在未定,日后修改
$Infor->Top = 0;
$Infor->Recommend = 0;
$Infor->BookMember->ID = 0;
$Infor->BookTime = 0;
$Infor->BookRemark = 0;
$BLL_Trade->CreateInfor($Infor);
echo '发布信息成功!';
}
catch (Exception $Err){
 echo $Err->getMessage();
}
?>

相关文章

  • PHP时间和日期函数详解

    PHP时间和日期函数详解

    php函数的多样化和功能相近真是一大特点,同一个应用可以用多种函数实现,这恐怕也是开源的一个弊端了;通过对PHP时间函数的系统学习,充分理解了时间戳和时区的概念(这个真的很重要),有需要的小伙伴可以参考下。
    2015-05-05
  • ThinkPHP5联合(关联)查询、多条件查询与聚合查询实例详解

    ThinkPHP5联合(关联)查询、多条件查询与聚合查询实例详解

    这篇文章主要介绍了ThinkPHP5联合(关联)查询、多条件查询与聚合查询,结合实例形式总结分析了thinkPHP5常用查询操作技巧,需要的朋友可以参考下
    2017-11-11
  • 详解php比较操作符的安全问题

    详解php比较操作符的安全问题

    php的比较操作符有==(等于)松散比较,===(完全等于)严格比较,这里面就会引入很多有意思的问题,本文给大家详解php比较操作符的安全问题,对php操作符相关资料感兴趣的朋友一起学习吧
    2015-12-12
  • CodeIgniter框架数据库事务处理的设计缺陷和解决方案

    CodeIgniter框架数据库事务处理的设计缺陷和解决方案

    这篇文章主要介绍了CodeIgniter框架数据库事务处理的设计缺陷和解决方案,也可以说是一个小BUG,使用CodeIgniter事务的朋友会遇到这个问题,需要的朋友可以参考下
    2014-07-07
  • Yii基于CActiveForm的Ajax数据验证用法示例

    Yii基于CActiveForm的Ajax数据验证用法示例

    这篇文章主要介绍了Yii基于CActiveForm的Ajax数据验证用法,结合实例形式分析了Yii视图自定义Form表单的ajax提交及控制器处理实现方法,需要的朋友可以参考下
    2016-07-07
  • thinkPHP5.0框架事务处理操作简单示例

    thinkPHP5.0框架事务处理操作简单示例

    这篇文章主要介绍了thinkPHP5.0框架事务处理操作,结合实例形式分析了thinkPHP5针对删除操作的事务处理相关操作技巧,需要的朋友可以参考下
    2018-09-09
  • PHP之浮点数计算比较以及取整数不准确的解决办法

    PHP之浮点数计算比较以及取整数不准确的解决办法

    这篇文章主要介绍了PHP之浮点数计算比较以及取整数不准确的解决办法,代码超简单,需要的朋友可以参考下
    2015-07-07
  • Yii框架getter与setter方法功能与用法分析

    Yii框架getter与setter方法功能与用法分析

    这篇文章主要介绍了Yii框架getter与setter方法,结合实例形式分析了Yii框架中getter与setter方法的基本功能、原理、使用方法及相关操作注意事项,需要的朋友可以参考下
    2019-10-10
  • php获取操作系统语言代码

    php获取操作系统语言代码

    php获取操作系统语言代码,一看就明白,有代码可以直接使用。
    2013-11-11
  • discuz7 phpMysql操作类

    discuz7 phpMysql操作类

    MySql数据库连接类,大家可以看下网上老手们用的什么方法,大家可以直接拿来用,但前提是大家能熟练的掌握的基础上,这样才能有所进步。
    2009-06-06

最新评论