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 ...
随机推荐
- The command '/bin/sh -c unzip -o php-7.2.23-src.zip' returned a non-zero code: 1
Dockerfile 内容 #centos7 nginx php redis inotify FROM centos:7 MAINTAINER INFOBIRD RUN yum -y update & ...
- c++ 贪心讲解大礼包
贪心是什么? 它其实类似一种思想 就是总问题可以分成许多的子问题 子问题的最优解可以直接推出整个问题 它和动态规划有一定的不同之处 动态规划不能由子问题的最优解推出整个问题的最优解 所以你看都要有一个 ...
- cogs 619. [金陵中学2007] 传话 Tarjan强连通分量
619. [金陵中学2007] 传话 ★★ 输入文件:messagez.in 输出文件:messagez.out 简单对比时间限制:1 s 内存限制:128 MB [问题描述] 兴趣小 ...
- 通过HttpClient的方式去Curd数据⭐⭐⭐⭐
在网上看博客的时候,看到这系列的文章,别特帮,强烈推荐 里面有一章节是通过HttpClient的方法去更新数据的,新颖,记录下. ⭐⭐⭐1:创建一个Model数据模型 这个类创建一个数据对象,Http ...
- Ansible Playbooks常用模块
File模块 在目标主机创建文件或目录,并赋予其系统权限 - name: create a file file:'path=/oot/foo.txt state=touch mode=0755 own ...
- 吸取教训:一段网上找的代码突然爆了,项目出现大BUG
本人是做游戏服务器开发的,碰到一个需求,给符某些要求的玩家的发送道具奖励,奖励的数量根据离线的天数计算. 这个需求实现起来很简单,只需要在玩家上线的时候计算上次离线时间和当前时间间隔的天数,然后根据策 ...
- 若依框架. 仿ThymeLeaf前端SelectDictLable方法
在framework项目下新增所需服务
- 安装anaconda python时只能安装到默认文件夹&& 安装提示文件夹以存在问题
这个问题困扰了两次,网上说可以,我就是不行,查了半天没找到解决方法, 后来装在C盘里, 之后在百度知道(ID:幸福999快乐)发现解决办法后来才发现问题. 在安装的时候,要安装的目标文件夹不需要先在安 ...
- 美食家App开发日记4
研究了卡片式布局中的Recyclerview的用法,但是调试了很长时间,导入包总是有问题,一到手机上运行就会闪退.还是在网上查了很多方法,很不开心我还是解决不了.
- java效率工具 Lombok
Java项目中,充斥着太多不友好的代码:POJO的getter/setter/toStringm异常处理,I/O流的关闭操作等等,这些样板代码既没有技术含量,又影响着代码的美观,Lombok应运而生. ...