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


Posted in PHP onMarch 07, 2014
<?
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 static局部静态变量和全局静态变量总结
Mar 02 PHP
php学习笔记之基础知识
Nov 08 PHP
php ImageMagick windows下安装教程
Jan 26 PHP
Laravel 5框架学习之向视图传送数据(进阶篇)
Apr 08 PHP
PHP实现上传文件并存进数据库的方法
Jul 16 PHP
PHP基于curl后台远程登录正方教务系统的方法
Oct 14 PHP
Laravel实现表单提交
May 07 PHP
PHP Laravel 上传图片、文件等类封装
Aug 16 PHP
PHP简单实现解析xml为数组的方法
May 02 PHP
PHP连接SQL Server的方法分析【基于thinkPHP5.1框架】
May 06 PHP
php和js实现根据子网掩码和ip计算子网功能示例
Nov 09 PHP
php ActiveMQ的安装与使用方法图文教程
Feb 23 PHP
根据ip调用新浪api获取城市名并转成拼音
Mar 07 #PHP
体育彩票排列三组选三算法分享
Mar 07 #PHP
PHP错误和异长常处理总结
Mar 06 #PHP
php发送post请求函数分享
Mar 06 #PHP
PHP empty函数报错解决办法
Mar 06 #PHP
PHP APC缓存配置、使用详解
Mar 06 #PHP
PHP程序漏洞产生的原因分析与防范方法说明
Mar 06 #PHP
You might like
APMServ使用说明
2006/10/23 PHP
zen cart新进商品的随机排序修改方法
2010/09/10 PHP
Thinkphp结合ajaxFileUpload实现异步图片传输示例
2017/03/13 PHP
JS宝典学习笔记(下)
2007/01/10 Javascript
js保留两位小数使用toFixed实现
2013/07/29 Javascript
node.js中的fs.writeFile方法使用说明
2014/12/14 Javascript
浅谈JavaScript Array对象
2014/12/29 Javascript
nodejs中实现阻塞实例
2015/03/24 NodeJs
AngularJS学习笔记之基本指令(init、repeat)
2015/06/16 Javascript
javascript实现10个球随机运动、碰撞实例详解
2015/07/08 Javascript
整理Javascript事件响应学习笔记
2015/12/02 Javascript
原生JS实现首页进度加载动画
2016/09/14 Javascript
jQueryUI 拖放排序遇到滚动条时有可能无法执行排序的小bug及解决方案
2016/12/19 Javascript
JS 调用微信扫一扫功能
2016/12/22 Javascript
Vue中建立全局引用或者全局命令的方法
2017/08/21 Javascript
layui使用templet格式化表格数据的方法
2019/09/16 Javascript
layUI的验证码功能及校验实例
2019/10/25 Javascript
JavaScript中继承原理与用法实例入门
2020/05/09 Javascript
python实现倒计时的示例
2014/02/14 Python
python中使用正则表达式的后向搜索肯定模式(推荐)
2017/11/11 Python
Django框架中序列化和反序列化的例子
2019/08/06 Python
Python中顺序表原理与实现方法详解
2019/12/03 Python
python 解压、复制、删除 文件的实例代码
2020/02/26 Python
Hertz荷兰:荷兰和全球租车
2018/01/07 全球购物
Sneaker Studio法国:购买运动鞋
2018/06/08 全球购物
如何配置、使用和清除Smarty缓存
2015/12/23 面试题
main 函数执行以前,还会执行什么代码
2013/04/17 面试题
名词解释型面试题(主要是网络)
2013/12/27 面试题
大学旷课检讨书
2014/01/28 职场文书
聚美优品励志广告词
2014/03/14 职场文书
商场周年庆活动方案
2014/08/19 职场文书
2016公司年会通知范文
2015/04/25 职场文书
汽车销售员工作总结
2015/08/12 职场文书
银行工作心得体会范文
2016/01/23 职场文书
如何用python绘制雷达图
2021/04/24 Python
MySQL中优化SQL语句的方法(show status、explain分析服务器状态信息)
2022/04/09 MySQL