php上传文件基础

<?php
 /*****************************************
   Title :文件上传详解
   Author:leehui1983(辉老大)
   Finish Date  :2006-12-28
  *****************************************/
   $uploaddir = "./files/";//设置文件保存目录 注意包含/
   $type=array("jpg","gif","bmp","jpeg","png");//设置允许上传文件的类型
   $patch="http://127.0.0.1/cr_downloadphp/upload/files/";//程序所在路径   

   //获取文件后缀名函数
      function fileext($filename)
    {
        return substr(strrchr($filename, ‘.‘), 1);
    }
   //生成随机文件名函数
    function random($length)
    {
        $hash = ‘CR-‘;
        $chars = ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz‘;
        $max = strlen($chars) - 1;
        mt_srand((double)microtime() * 1000000);
            for($i = 0; $i < $length; $i++)
            {
                $hash .= $chars[mt_rand(0, $max)];
            }
        return $hash;
    }
   $a=strtolower(fileext($_FILES[‘file‘][‘name‘]));
   //判断文件类型
   if(!in_array(strtolower(fileext($_FILES[‘file‘][‘name‘])),$type))
     {
        $text=implode(",",$type);
        echo "您只能上传以下类型文件: ",$text,"<br>";
     }
   //生成目标文件的文件名
   else{
    $filename=explode(".",$_FILES[‘file‘][‘name‘]);
        do
        {
            $filename[0]=random(10); //设置随机数长度
            $name=implode(".",$filename);
            //$name1=$name.".Mcncc";
            $uploadfile=$uploaddir.$name;
        }
   while(file_exists($uploadfile));
        if (move_uploaded_file($_FILES[‘file‘][‘tmp_name‘],$uploadfile)){   

            if(is_uploaded_file($_FILES[‘file‘][‘tmp_name‘])){
                //输出图片预览
                echo "<center>您的文件已经上传完毕 上传图片预览: </center><br><center><img src=‘$uploadfile‘></center>";
                echo"<br><center><a href=‘javascript:history.go(-1)‘>继续上传</a></center>";
              }
              else{
                echo "上传失败!";
              }
        }
   }
?> 
时间: 2024-11-08 14:16:27

php上传文件基础的相关文章

关于云储存或者百度云的基础问题, 用java/android 实现上传文件到云储存(比如百度云)

============问题描述============ 关于云储存或者百度云的基础问题, 用java/android 实现上传文件到云储存(比如百度云) ============解决方案1============ 参考百度相关api

uploadify上传文件(2)--基础语法

隔了好久,因为最近搬家,离开从小生活的城市,来到杭州.找工作.找房子等诸多事宜耽误了这篇文章许久.今天难得闲暇在旅馆中完成uploadify上传文件系列的第二篇--uploadify使用的基础语法. 下面我们看一看如何在你的项目上部署uploadify: 本文目录: 1.使用步骤 2.属性 3.事件 4.方法 使用步骤 1.我们假定上传控件部署在网站根目录下的upload. php中,uploadify文件夹位于网站根目录中,上传的文件保存在根目录下的upload文件夹中,uploadify文件

SpringMVC基础(二)采用注解上传文件

Spring通过对Servlet API的HttpServletRequest接口进行扩展,使其能够很好地出来文件上传.扩展后的接口名为:org.springframework.web.multipart.MultipartHttpServletRequest. 同时需要注意的是,上传文件无论什么框架都需要用到"enctype"上传方式必须采用method方式. 上传两个jar包: com.springsource.org.apache.commons.fileupload com.s

[JavaWeb基础] 009.Struts2 上传文件

在web开发中,我们经常遇到要把文件上传下载的功能,这篇文章旨在指导大家完成文件上传功能 1.首先我们需要一个上传文件的页面. <!--在进行文件上传时,表单提交方式一定要是post的方式, 因为文件上传时二进制文件可能会很大,还有就是enctype属性, 这个属性一定要写成multipart/form-data, 不然就会以二进制文本上传到服务器端 --> <form action="fileUpload.action" method="post"

php上传文件常见问题(基础)

既然上一篇文章<php上传中文文件文件名乱码问题>遇到了文件上传的问题,干脆把php上传文件时经常碰到的几个问题总结一下吧,以后用到时不用再去找了. 1.先做个最简单的上传文件 1 <html> 2 <head> 3 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 4 </head> 5 <body> 6 7

javaweb基础----使用原生fileupload上传文件时找不到上传的文件位置

上传文件测试时发现控制台没报错,但是在eclipse的workspace中的指定项目下找不到上传的文件 打印输出上传的项目路径时才发现原来在这个位置 D:\code\JavaCode\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps 为避免下次出现同种情况,在新建的server中双击点开设置: 选择第二项即可 原文地址:https://www.cnblogs.com/cjasonvincent/p/8

关于ajax分段上传文件实例~

本来打算写的勤快一点的,谁知道最近好忙啊,忙着应聘的事情,这里突然想提一下自己的历程 自己现在是一只大三狗,高中三年是玩过去了,上了一所省内普通的不能再普通的二本.不过在大学里还算的上勤奋,大一上在学生会搅搅水,大一下就开始在学校网络中心里面干活,网络维护是工作,编程是兴趣,基本上每天网络中心寝室两点一线,所以说还算得上勤奋.不过现在我自己算是明白,很多事情不是勤奋就好了的,方法不对,真的是事倍功半.自己之前学习东西都是瞎倒腾,看书,看视频,记笔记,写demo.看起来稀疏平常,但是自己缺点在于太

iOS 网络请求 NSURLSession 的上传文件方法

NSURLSession/NSURLConnection的上传文件方法 此篇文章的理论基础主要是与HTTP网络通信协议相关.为集中精力,可以先把TCP/IP协议这些置之不理,也就是先只关注HTTP的请求和响应的结构.HTTP完整的原理内容就此略过.在此只略提相关内容.文中涉及的设计源码可以通过这里获取 https://github.com/wuqingjian2015/uploadHelper,有意者可以去看看. HTTP是干什么用的呢? 先考虑一下以下应用过程: 从客户端向服务器端发起一个请求

ftp上传文件

ftp服务使用apache的commons-net进行上传操作,所以要下载commons-net的jar包,服务器采用centeros linux操作系统,运行nginx服务器,安装使用yum -y install vsftp 安装vsftp服务,并创建ftp用户. 关于vsftp与nginx的安装,百度即可. 以下是使用代码的方式上传文件 ftpUtil.java package com.taotao.utils; import java.io.File; import java.io.Fil