帖子
帖子
用户
博客
课程
12
返回列表 发新帖
2
帖子
0
勋章
9
Y币
好自私的程序员。
本帖最后由 API学习使我快乐 于 2018-3-16 10:37 编辑

我来回复一下,php服务器接收ajax上传的文件。不多说直接上代码
  1. //今天的日期
  2.          $_todyDate =  date("Y-m-d");
  3.          //创建文件夹进行接收文件
  4.          $uploadDir  = 'uploads'.DIRECTORY_SEPARATOR.$_todyDate;
  5.          // 创建接收文件的文件夹
  6.          if (!file_exists($uploadDir)) {
  7.              @mkdir($uploadDir,0777,true);
  8.          }
  9.          // 得到文件的名字
  10.          if (isset($_REQUEST["name"])) {
  11.              $fileName = str_replace(' ', '', $_REQUEST["name"]);
  12.          } elseif (!empty($_FILES)) {
  13.              $fileName = str_replace(' ', '', $_FILES["file"]["name"]);
  14.          } else {
  15.              $fileName = uniqid("file_");
  16.          }
  17.          $uploadPath = $uploadDir.DIRECTORY_SEPARATOR.$fileName; //文件存放的位置
  18.          // 创建一个空文件用来存上传文件的信息
  19.          if (!$out = @fopen("{$uploadPath}", "wb")) {
  20.              die('{"jsonrpc" : "2.0", "error" : {"code": 102, "message": "Failed to open output stream."}, "id" : "id"}');
  21.          }
  22.          if (!empty($_FILES)){
  23.              if ($_FILES["file"]["error"] || !is_uploaded_file($_FILES["file"]["tmp_name"])){
  24.                  die('{"jsonrpc" : "2.0", "error" : {"code": 103,"message": "Failed to move uploaded file."}, "id" : "id"}');
  25.              }
  26.              // 如果是二进制上传文件,读取二进制输入流并将其附加到临时文件
  27.              if (!$in = @fopen($_FILES["file"]["tmp_name"], "rb")) {
  28.                  die('{"jsonrpc" : "2.0", "error" : {"code": 101, "message": "Failed to open input stream."}, "id" : "id"}');
  29.              }
  30.          }else {
  31.              //如果不是二进制上传文件,读取输入流并将其附加到临时文件
  32.              if (!$in = @fopen("php://input", "rb")) {
  33.                  die('{"jsonrpc" : "2.0", "error" : {"code": 101, "message": "Failed to open input stream."}, "id" : "id"}');
  34.              }
  35.          }
  36.          //往创建的空文件中写入上传的文件
  37.          while($buff = fread($in,4096)){
  38.              fwrite($out,$buff);
  39.          }
  40.          @fclose($out);
  41.          @fclose($in);
复制代码
13
帖子
6
勋章
105
Y币
API学习使我快乐 发表于 2018-3-16 10:36
我来回复一下,php服务器接收ajax上传的文件。不多说直接上代码

666
12
您需要登录后才可以回帖 登录

本版积分规则