PHP文件上传主要代码讲解_php基础

复制代码 代码如下:

<?php  
 if($_FILES['myfile']['name'] != '') {  
if($_FILES['myfile']['error'] > 0) {  
echo "错误状态:" . $_FILES['myfile']['error'];  
} else {  
move_uploaded_file($_FILES['myfile']['tmp_name'] , "uploads/" . $FILES['myfile']['name']);  
echo "<script>alert(上传成功!);</script>";  
}  
} else{  
echo "<script>alert(请上传文件!);</script>";  
}  
?>

说明:

在解释这篇代码前,我们有必要了解以下知识。

$_FILES['myfile']['name'] 是指被上传文件的名称
$_FILES['myfile']['type'] 是指被上传文件的类型
$_FILES['myfile']['size'] 是指被上传文件的大小,单位为字节(B)
$_FILES['myfile']['tmp_name'] 是指被上传文件存在服务器中的临时副本文件名称,文件被移动到指定目录后临文件将被自动消毁。
$_FILES['myfile']["error"] 是指由文件上传中有可能出现的错误的状态码,关于各状态含义后在会说明。

了解了这些,我们再来看一下upload.php的代码。

首先,$_FILES['myfile']['name']中的myfile是指在上面HTML页面中上传文件标签的name值,根据这个我们才能知道我们正在处理的文件是哪一个input提交过来的。

然后再来判断一下 $_FILES['myfile']['name'] 不是否为空,根据这个我们可以知道用户有没有上传文件,从而执行不同的操作。

如果上传了文件并且状态是0就说明上传成功,我们就可以用 move_uploaded_file方法把上传的文件存放到指定目录,上面这个例子是指把上传的文件移动到同目录下的uploads文件夹下,这个路径是相对于这个PHP文件(既upload.php)的相对目录。

比如,我们想把上传的文件移动到upload.php上一层叫user的文件夹中的话,我们就可以这样写:move_uploaded_file($_FILES['myfile']['tmp_name'] , "./user/". $FILES['myfile']['name']),这种方法使用起来很方便、灵活,这样一个文件就被上传到服务器中了,可以打开服务器中的目录查看该文件。

时间: 2024-10-27 09:32:38

PHP文件上传主要代码讲解_php基础的相关文章

一个完整的php文件上传类实例讲解_php实例

这个文件上传类可以自定上传文件大小与上传文件类型及文件保存地址,在使用过程中有一个问题就是如果是中文文件名进行上传就会出现乱码,所以大家解决办法就是把页面保存成uft8即可解决. 下面就是为大家分享的代码: <?php define('NO_FILE', '不存在上传文件'); define('NOT_ALLOW_EXT', '文件类型不在允许范围内'); define('NOT_ALLOW_SIZE', '文件大小不在允许范围内'); define('HAS_THE_FILE', '该文件已经

一个多文件上传的例子(原创)_php基础

<?//filename:multi_upload.phpif($ifupload){  $path=AddSlashes(dirname($PATH_TRANSLATED))."\\upload\\";  for($i=1;$i<=8;$i++)  {     $files="afile".$i;     if(${$files}!="none")     {        if(copy(${$files},$path.${$fi

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

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

JavaWeb文件上传下载实例讲解(酷炫的文件上传技术)_java

一.课程概述 在Web应用系统开发中,文件上传功能是非常常用的功能,今天来主要讲讲JavaWeb中的文件上传功能的相关技术实现,并且随着互联网技术的飞速发展,用户对网站的体验要求越来越高,在文件上传功能的技术上也出现许多创新点,例如异步上传文件,拖拽式上传,黏贴上传,上传进度监控,文件缩略图,大文件断点续传,大文件秒传等等. 本课程需要的基础知识: 了解基本的Http协议内容 基本IO流操作技术 Servlet基础知识 javascript/jQuery技术基础知识 二.文件上传的基础 对于文件

jQuery.uploadify文件上传组件实例讲解_jquery

1.jquery.uploadify简介 在ASP.NET中上传的控件有很多,比如.NET自带的FileUpload,以及SWFUpload,Uploadify等等,尤其后面两个控件的用户体验比较好,无刷新,带上传进度等等.在最近的短信平台开发中,使用Uploadify进行文件上传. Uploadify官网地址是:http://www.uploadify.com/ 可满足项目开发需求. 下载地址:http://www.uploadify.com/wp-content/uploads/files/

php 多文件上传的实现实例_php实例

首先向大家讲解一下实现的方法. 要实现多文件上传,我们可以在form表单中添加多个input file域,然后将这些input file的name属性设置为相同的名称且使用数组的形式命名,例如filename[].至于文件上传的php代码和单个文件上传是一样的道理. 下面看一个多文件上传的实例: html文件example.html <!DOCTYPE html> <html> <head> <meta charset="UTF-8">

PHP中codeigniter文件上传类代码实例

  codeigniter文件上传类代码实例 文件上传类 CodeIgniter 的文件上传类允许文件被上传.您可以设置指定上传某类型的文件及指定大小的文件. 处理过程 上传文件普遍的过程: 一个上传文件用的表单,允许用户选择一个文件并上传它. 当这个表单被提交,该文件被上传到指定的目录. 同时,该文件将被验证是否符合您设定的要求. 一旦文件上传成功,还要返回一个上传成功的确认窗口. 这里有一个简短的教程来显示这个过程.此后你将会找到相关的参考信息. 创建上传表单 运用文本编辑器创建一个名为up

php多文件上传实现代码

 这篇文章主要介绍了php多文件上传实现代码,需要的朋友可以参考下 index_uploads.php    代码如下: <html> <head>     <meta charset="utf-8">     <title>index_uploads</title> </head> <body>     <form action="uploads.php" method=&q

PHP文件上传之多文件上传的实现思路_php实例

多文件上传的两种情况 ①使用多个name值 <input type="file" name="file1"> <input type="file" name="file2"> <input type="file" name="file3"> <input type="file" name="file4"&g