PHP 一个比较完善的简单文件上传

代码如下:

<HTML>
<HEAD>
<TITLE>文件上传</TITLE>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"></HEAD>
<BODY>
<?
$UploadedFile=$_FILES['UploadedFile']['tmp_name'];
$UploadedFile_name=$_FILES['UploadedFile']['name'];
$isTrue=false;
if($UploadedFile)
{
$store_dir=$_SERVER['DOCUMENT_ROOT'];
$accept_overwrite = 1;
$isTrue=true;
}
$fileName = date("YmtHis").$UploadedFile_name;
if (file_exists($store_dir . $fileName))
{
echo "存在相同文件名的文件";
}
$mytype =array(".jpg",".gif",".png");
$filetype=substr($_FILES['UploadedFile']['name'],strrpos($_FILES['UploadedFile']['name'],"."));
$typecount=0;
if($isTrue)
{
for($i=0;$i<count($mytype);$i++)
{
if($filetype==$mytype[$i])
{
$typecount++;
}
}
if($typecount>0)
{
if($_FILES['UploadedFile']['size']<1048576)
{
$b=move_uploaded_file($UploadedFile,$store_dir.$fileName);
if($b)
{
echo "<HR>\n";
echo "原文件信息:<br/>";
echo "名称:".$_FILES['UploadedFile']['name']."<BR>\n";
echo "大小:".$_FILES['UploadedFile']['size']."<BR>\n";
echo "类型:".$_FILES['UploadedFile']['type']."<BR>\n";
echo "<HR>\n";
echo "存入数据库的名称为:".$fileName;
echo "<HR>\n";
}
}
else
{
echo "文件大小不准超过1兆.";
}
}
else
{
echo "不准上传次类型文件!";
}
}
?>
<FORM ENCTYPE="multipart/form-data" ACTION="<?php echo $PHP_SELF ?>" METHOD="post">
<INPUT NAME="UploadedFile" TYPE="file" size='15'>
<INPUT TYPE="submit" VALUE="上传文件">
</FORM>
</BODY>
</HTML>

(0)

相关推荐

  • PHP文件上传原理简单分析

    //表单上传只能使用multipart/form-data编码格式 $_FILES系统函数; $_FILES['myFile']['name']文件名称 $_FILES['myFile']['type']文件的类型,服务端进行限制 image/** image/x-png application/x-zip-compressed $_FILES['myFile']['size']上传文件大小 $_FILES['myFile']['tmp_name']上传服务后保存临时文件名 $_FILES['m

  • php多文件上传功能实现原理及代码

    今天对多图片上传功能小小的研究了一下,把下面的代码整理出来,方便以后自己使用以及供大家交流 1.upload.html页面,即先是input type=file的文件: 复制代码 代码如下: <html> <head> <title></title> </head> <body> <form enctype="multipart/form-data" action="do_upload.php&qu

  • php 文件上传实例代码

    项目结构: 上传首页: 上传效果: fileupload.php 复制代码 代码如下: <form action="" enctype="multipart/form-data" method="post" name="uploadfile">上传文件:<input type="file" name="upfile" /><br> <input

  • PHP文件上传后缀名与文件类型对照表整理

    ie 火狐 id 后缀名 php识别出的文件类型 0 gif image/gif 1 jpg image/jpeg 2 png image/png 3 bmp image/bmp 4 psd application/octet-stream 5 ico image/x-icon 6 rar application/octet-stream 7 zip application/zip 8 7z application/octet-stream 9 exe application/octet-str

  • PHP中文件上传的一个问题

    我也一直很困惑.在文档上,说的比较模糊,就是 move_uploaded_file 这个函数,加了一步检查,检查这个文件是否是有 HTTP POST 上传的, 至于,如何检查的没有说. 我google 了好一阵子,都没有能解决这个问题,也不知道问题出现在哪里.后来,终于决定看源代码.终于在 源代码里面看到 把文件名 和 php 配置中的 upload_tmp_dir 这个参数进行比较,如果文件在这个目录下面,那么 move_uploaded_file 才会进行移动操作.而且这个比较是大小写敏感,

  • php 文件上传后缀名与文件类型对照表(几乎涵盖所有文件)

    网上有很多php文件上传的类,文件上传处理是php的一个特色(至少手册上是将此作为php特点来展示的,个人认为php在数组方面的优异功能更有特色),学php的人都知道文件上传怎么做,但很多人在编程中却可能忽视了一些细节问题,那就是文件的类型(MIME).在表单将文件提交给php做处理之前,浏览器会先解析识别一边是什么类型的文件,之后进入php处理环节,php又会去识别解析此文件的原始类型(并不是说你改成什么后缀就是什么文件).在这个过程中会有一些浏览器兼容,更准确来说是文件类型解析标识不一致的问

  • 与文件上传有关的php配置参数总结

    搞个了图片上传,死活不好使,后来发现是php参数配置的问题. 下面总结下与文件上传有关的php参数,备忘之~ 所有这些参数都在php.ini中设置. 1.file_uploads 设为On,允许通过HTTP上传文件 2.upload_tmp_dir 文件上传至服务器时用于临时存储的目录,如果没指定,系统会使用默认的临时文件夹(我的机器是/tmp). 3.upload_max_filesize 允许上传文件大小的最大值,默认为2M. 4.post_max_size Php可接收的post数据的最大

  • PHP 文件上传全攻略

    1.表单部分 允许用户上传文件,在HTML表单的声明中要加上一个上传的属性: enctype = 'multipart/form-data' 表单的method必须是POST 表单选项MAX_FILE_SIZE隐藏域用于限制上传文件大小,它必须放在文件表单元素前面,单位为字节. 如: 复制代码 代码如下: <form enctype='multipart/form-data' id='aa' name='aaa' method='post' action='xxx.php'> <inpu

  • php 文件上传类代码

    复制代码 代码如下: <?php /** * 文件上传类 */ class uploadFile { public $max_size = '1000000';//设置上传文件大小 public $file_name = 'date';//重命名方式代表以时间命名,其他则使用给予的名称 public $allow_types;//允许上传的文件扩展名,不同文件类型用"|"隔开 public $errmsg = '';//错误信息 public $uploaded = '';//上

  • php 文件上传代码(限制jpg文件)

    复制代码 代码如下: <?php /* 图片上传类  仅限JPG格式图片 */ class uploadFile { var $inputName; //input名称 var $fileName; //文件命名 var $fileProperty; //文件属性 var $fileSize=2097152; //文件大小限制,2M var $filePath="upload/"; //文件存储路径 function uploadFile($inputName){ $this-&

  • php中通过Ajax如何实现异步文件上传的代码实例

    1:取得file对象 2:读取2进制数据 3:模拟http请求,把数据发送出去(这里通常比较麻烦) 在forefox下使用 xmlhttprequest 对象的 sendasbinary 方法发送数据: 4:完美实现 遇到的问题 目前仅有 firefox 可以正确上传文件.(chrome也可以采google.gears上传) 对于从firefox和chrome下读取到的文件数据好像不一样(不知道是否是调试工具的原因) chrome以及其他高级浏览器没有 sendasbinary 方法 只能使用

  • php文件上传表单摘自drupal的代码

    drupal文件上传表单的例子 复制代码 代码如下: function upload_form() { $form = array(); // If this #attribute is not present, upload will fail on submit $form['#attributes']['enctype'] = 'multipart/form-data'; $form['file_upload'] = array( '#title' => t('Upload file'),

  • File, FileReader 和 Ajax 文件上传实例分析(php)

    File FileReader 可以干什么? Ajax文件上传例子 FileReader 对象可以读取文件的 Base64编码数据(readAsDataURL),2进制字符串(readAsBinaryString),文本(readAsText)并且都是异步的. 对了,Email拖拽附件上传就可以利用 FileReader 配合 Ajax 完成. File 对象 File对象可以从 input[type=file].files 数组,和拖拽事件 event.dataTransfer.files 中

  • php中关于普通表单多文件上传的处理方法

    然而有些情况只需要传递几个文件,而且文件体积并不太大,这种情况下使用组件则有点牛刀杀鸡的感觉,通过html自带的<input type="file">表单就可以实现需要的功能,关键在于后台接收程序的处理. php处理上传做的很方便,上传文件的信息通过服务器自动处理到$_FILES数组中,开发者只需要使用的内置处理函数简单操作就可以啦.ASP开发者则没有这么幸运,官方并没有提供直接的处理方法,需要开发者自己设计,这时就需要开发者了解IIS对enctype="mult

  • php ftp文件上传函数(基础版)

    复制代码 代码如下: <?php // 定义变量 $local_file = 'local.zip'; $server_file = 'server.zip'; // 连接FTP服务器 $conn_id = ftp_connect($ftp_server); //验证登录服务器 $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass); // 下载文件 if (ftp_get($conn_id, $local_file

  • PHP 文件编程综合案例-文件上传的实现

    PHP文件上传1.upload.php 复制代码 代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html>  <head>    <title>ddd</title>    <meta http-equiv="content-type" content="text/html; charset=UTF

  • php利用iframe实现无刷新文件上传功能的代码

    复制代码 代码如下: <html> <head> <title>无刷新上传文件</title> <meta Content-type="text/html" charset="utf-8" /> <script type="text/网页特效"> function startUpload() { document.getElementById('processing').in

  • PHP 图片文件上传实现代码

    为了网站的安全,肯定不让上传php文件,如果有人进入你的后台,上传了一个php文件,你的网站源码,全部救变成他的了,直接打包看你的代码.所以一定要控制上传的目录与文件类型,一般只可以上传图片. 创建一个文件上传表单 允许用户从表单上传文件是非常有用的. 请看下面这个供上传文件的 HTML 表单: 复制代码 代码如下: <html> <body> <form action="upload_file.php" method="post" e

随机推荐