php 上传文件 示例
<?php
header("content-type:text/html;charset=utf-8");
error_reporting(E_ALL);
//session_start();
/* include "database_new.php"; $nmetable=isset($_POST['nmetable'])?$_POST['nmetable']:"";
$title=isset($_POST['title'])?$_POST['title']:"";
$content=isset($_POST['content'])?$_POST['content']:"";
$a2=$a['name'];
date_default_timezone_set('PRC');
$time=date('Y-m-d H:i:s',time());
$ist=$go->execSql("insert into $nmetable(src,name,content,time)values('$a2','$title','$content','$time')");
*/
//print_r($a); /* Array
(
[name] => cube.html
[type] => text/html
[tmp_name] => H:\wamp\tmp\phpD175.tmp
[error] => 0
[size] => 3289
) */ /*
函数名:getMessage()
参数: $mes $flg
作用: 使正确的信息显示为绿色 ,错误信息显示为红色
时间: 2017-9-5
程序员:
*/
$a=$_FILES['imgfile'];
$message="";
function getMessage($mes,$flg){
global $message;
if($flg==true){
$message.="<div style='color:green' >".$mes."</div>";
}else{
$message.="<div style='color:red' >".$mes."</div>";
}
//return getMessage();
}
//getMessage('上传成功了',false);
//echo $message; //判断文件类型(获取文件后缀名) function getFileType($fileName){
$pos=strrpos($fileName,'.'); //查找字符串中最后一次‘.’的位置
return substr($fileName,$pos+1); //从中最后一次‘.’的位置的下一位,截取到最后一位 } //echo getFileType('dfaf.af.a.f.f.f.a.f.dfafasf.asf'); //测试
//设置允许被上传的后缀名
$allFileType=array('jpg','png','gif','txt','html'); //判断上传文件类型是否允许被上传 function ifFileType($fileName){
global $allFileType; //引入全局变量$allFileType $seion=getFileType($fileName); //将getFileType($fileName)方法做成变量
if(in_array($seion, $allFileType)){ //判断上传的文件类型是否在规定的数组中
getMessage("文件类型允许被上传",true); //文件允许上传时显示绿色的内容
return true;
}else{ getMessage("文件类型不允许被上传",false);//文件不允许上传时显示红色的内容 return false;
} } //ifFileType("asd.af.a.txtd");
//echo $message; //设置上传文件的大小 function ifFileSize($fileSize){
$fileSize=ceil($fileSize/1024/1024);// 将上传文件转化为兆
if($fileSize<=2){ getMessage("文件大小允许被上传",true);
return true;
}else{ getMessage("文件过大,请上传小于2M的文件",false);
return false; } }
//ifFileSize(10000000);
//echo $message; //判断 文件上传目录是否存在
function ifExists($fileUrl){ if(is_dir($fileUrl)){ //判断目录是否存在 getMessage("上传目录已存在,可以直接上传",true);
return true;
}else{
if(mkdir($fileUrl)){
getMessage("目录创建成功",true);
return true; }else{
getMessage("目录创建失败",false);
return false; } }
} //ifExists('image');
//echo $message;
//exit(); //
$b='./image/';
//$new_name=md5(date("Ymdhis")).".".pathinfo($a['name'],PATHINFO_EXTENSION);
// $path=$b.$new_name; if(ifFileType($a['name']) && ifFileSize($a['size']) && ifExists($b) ){
$res=move_uploaded_file($a['tmp_name'],$b.md5(date("Ymdhis")).'.'. getFileType($a['name'])); if($res){ echo "<script>location.href='../admin/design.php'</script>";
}else{
//echo "<div style='color:red' >".$a['name']."文件上传失败</div>";
echo "<script>alert('图片上传失败');location.href='../admin/insert.php'</script>";
}
}else{ echo "<div style='color:red' >上传失败,请上传小于2M,文件类型为'jpg','png','gif','txt','html'的文件</div>"; } //-----------------------------------------------------------------------------link: design.php ?>
php 上传文件 示例的更多相关文章
- C#使用HttpWebRequest和HttpWebResponse上传文件示例
C#使用HttpWebRequest和HttpWebResponse上传文件示例 1.HttpHelper类: 复制内容到剪贴板程序代码 using System;using System.Colle ...
- PHP上传文件示例
虽然大多数人认为Web只包含网页,但HTTP协议实际上可以传输任何文件,如office文档.PDF.可执行文件.AVI.压缩文件及各种其他文件类型.虽然FTP在历史上一直是向服务器上传文件的标准方式, ...
- python网络编程--FTP上传文件示例
1.基础版(供学习了解原理使用,low) server服务端 import socket import struct import json server = socket.socket() ip_p ...
- Python--day67--CBV和FBV、Request对象及上传文件示例
1,CBV版添加新的出版社 views.py文件 urls.py文件 2,Request对象: request对象 当一个页面被请求时,Django就会创建一个包含本次请求原信息的HttpReques ...
- MVC上传文件示例
[HttpPost] public void SaveFile(FormCollection form) { var c = Request.Files.Count; ]; } @using (Htm ...
- 重新想象 Windows 8.1 Store Apps (89) - 通信的新特性: 下载数据, 上传数据, 上传文件
[源码下载] 重新想象 Windows 8.1 Store Apps (89) - 通信的新特性: 下载数据, 上传数据, 上传文件 作者:webabcd 介绍重新想象 Windows 8.1 Sto ...
- PHP上传文件详解 错误提示
首先在php.ini里配置上载文件.有以下几个重要的配置单: 选项 默认值 说明 post_max_size 8M 控制以后的POST请求的最大规模.必须大于upload_max_filesize选项 ...
- MVC3+jquery Uploadify 上传文件
最近做项目用到了上传图片的功能,以前也写过这类代码,不过都是用传统的file标签,今天整理一个好用的插件Uploadify..都做了一些注释,一看便知. 可以去官网下载最新的:Uploadify下载地 ...
- 【转】JSP使用上传文件,并生产高清缩略图示例
原文地址:http://blog.csdn.net/yakson/article/details/9875731 前言 刚开始本来只想来测试一下Thumbnails生成缩略图的效果的,顺便来学一下js ...
随机推荐
- Animator的小记
前阵子在做动画相关的内容,整理一下Animator. 1.动画切换 1.1状态之间的切换,在状态间连线(Make Transition),并且设置触发条件,代码里调用SetTrigger.SetBoo ...
- 题解 LA3720
题目大意 多组数据,每组数据给定两个整数 \(n,m\),请求出 \(n\times m\) 的点阵(即 \((n-1)\times(m-1)\) 的方格)中有多少条非水平竖直的经过至少两个格点的不同 ...
- Java 项目热部署,节省构建时间的正确姿势
上周末,帮杨小邪(我的大学室友)远程调试项目.SpringBoot 构建,没有热部署,改一下就得重启相关模块.小小的 bug ,搞了我一个多小时,大部分时间都还在构建上(特么,下次得收钱才行).我跟他 ...
- 小程序中的pick
picker:从底部弹起的滚动选择器. 属性:model string类型 说明:选择器类型 : selector 普通选择器 multiSelector 多列选择器 time 时间选择 ...
- 鉴于崔庆才大大的对于 beautifulsoup 的再理解
源地址看 soups = BeautifulSoup(html) soup = BeautifulSoup(open('index.html')) print soup.prettify() Tag通 ...
- c#数字图像处理(十二)图像的腐蚀与膨胀
背景知识 腐蚀与膨胀基本原理:就是用一个特定的结构元素来与待处理图像按像素做逻辑操作:可以理解成拿一个带孔的网格板(结构元素矩阵中元素为1的为孔)盖住图像的某一部分,然后按照各种不同的观察方式来确定操 ...
- oc---instancetype和id的异同
[instancetype和id的异同] 相同点:都可以作为方法的返回类型. 不同点: (1)instancetype可以返回方法所在类相同类型的对象,id只能返回未知类型的对象: (2)instan ...
- Shell考题中级篇
写脚本实现,可以用shell.perl等.把文件b中有的,但是文件a中没有的所有行,保存为文件c,并统计c的行数. grep -v -x bbb -f aaa > ccc && ...
- Shell考题初级篇
将当前目录下大于10K的文件转移到/tmp目录下 find . -type f -size +10k -exec mv {} /tmp \; 编写一个shell,判断用户输入的文件是否是一个字符设备文 ...
- MGR监控报警
一.报警思路 m.conf文件记录配置信息,只需要修改这个文件的内容即可(需要将mysql_stat.sh里面的信息写到这里,进行中) mysql_stat.sh文件作为MGR状态监测脚本,加入定时任 ...