程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 文件上傳,java文件上傳

文件上傳,java文件上傳

編輯:關於PHP編程

文件上傳,java文件上傳


文件上傳分為兩個步驟

1客戶端用戶上傳;

a)需要一個表單域,用來注入要上傳的文件,

<input type="file" name="file" />

b)用戶選擇所需要上傳的文件

c)用戶點擊,將文件發送給服務器

 

2服務器接收

form表單使用POST提交方式。

*注意:GET,POST不能提交二進制文件,但是POST提交增加一個屬性便可以完成。

<form action="file.php" method="POST"  enctype="multipart/form-data">

 

html部分:

html部分:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>文件上傳</title>
</head>
<body>
    <form action="file.php" method="POST"  enctype="multipart/form-data">
        <input type="file" name="file" />
        <input type="submit" value="提交"/>
    </form>
</body>

 

php部分

var_dump($_FILES) 時發現得到的是一個數組

array
  'file' => 
    array
      'name' => string '4.jpg' (length=5)
      'type' => string 'image/jpeg' (length=10)
      'tmp_name' => string 'F:\wamp\tmp\php904D.tmp' (length=23)
      'error' => int 0
      'size' => int 273665

                  

此時要進行數據驗證

a)根據二維數組找到error點;

 

switch($_FILES['file']['error']){
    case '0':
        echo "上傳成功";
        break;
    case '1':
    case '2':
        header('Refresh:3;url=file.html');
        echo "文件大小超過服務器限制";
        break;
    case '3':
        header('Refresh:3;url=file.html');
        echo "文件只有部分上傳成功";
        break;
    case '4':
        header('Refresh:3;url=file.html');
        echo "未選中文件,請重新選擇文件並提交";
        break;
    default:
        echo "文件上傳失敗";
}


 

b)文件上傳成功後,放到了指定的臨時目錄中,此時需要更改到期待的文件中,

php有一個函數可以完成,move_uploaded_file()

eg:

move_uploaded_file($_FILES['file']['tmp_name'], './cy1/' . $_FILES['file']['name']);

 

注:tmp_name,文件上傳到服務器的臨時目錄,

'name',文件在客戶端本地的文件名字。

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved