全球主机交流论坛

标题: php大佬进 [打印本页]

作者: lemeaco    时间: 2020-3-17 23:02
标题: php大佬进
ajax上传文件,thinkphp5 (web服务器用的swoole)里file是null,不知道什么原因,大佬帮忙看一下,万分感谢。




作者: 一个不知名网友    时间: 2020-3-17 23:02
提示: 作者被禁止或删除 内容自动屏蔽
作者: lemeaco    时间: 2020-3-17 23:05
跪求php大佬指点迷津
作者: hehe    时间: 2020-3-17 23:07
提示: 作者被禁止或删除 内容自动屏蔽
作者: lemeaco    时间: 2020-3-17 23:08
本帖最后由 lemeaco 于 2020-3-17 23:10 编辑
hehe 发表于 2020-3-17 23:07
https://stackoverflow.com/


百度能解决,我也不会来论坛里问mjj了
作者: hehe    时间: 2020-3-17 23:09
提示: 作者被禁止或删除 内容自动屏蔽
作者: JOSH    时间: 2020-3-17 23:10
thinkphp对上传目录有限制吧
作者: ico    时间: 2020-3-17 23:12
权限问题,路径错误等等!! 反正我不会。
作者: flofire    时间: 2020-3-17 23:14
检查前端content type,把request全部log出来看看
作者: 烟花三月    时间: 2020-3-17 23:25
应该去swoole那里去问啊


子曰:----< 好好对自己,一辈子没多长;好好对别人,下辈子不一定能遇上。 >---
作者: Simmoc    时间: 2020-3-17 23:26
本帖最后由 Simmoc 于 2020-3-17 23:28 编辑

可以尝试用  think\File 对象接收上传的文件
  1.    
  2.         use think\Config;
  3.         use think\Db;
  4.         use think\File;

  5.      /**
  6.      * @param File $file
  7.      * @param string $save_path
  8.      * @param bool|true $is_record
  9.      * @param array $rule
  10.      * @return array
  11.      */
  12.     static public function uploadFile(File $file,$save_path="",$is_record=true,$rule=[] ) {
  13.         $return=[
  14.             "code"=>1001,
  15.             "data"=>"",
  16.             "msg"=>"文件上传成功",
  17.         ];

  18.         $file_hash_md5 = $file->hash("md5");
  19.         $file_hash_sha1 = $file->hash("sha1");
  20.         //判断数据库中是否存在
  21.         if ($is_record){
  22.             $images_table = Config::get("upload.upload_files_table");
  23.             $map = [
  24.                 "md5"=>$file_hash_md5,
  25.                 "sha1"=>$file_hash_sha1,
  26.             ];
  27.             $search_image=Db::table($images_table)->where($map)->find();
  28.             if ($search_image){
  29.                 $return["path"] =  $search_image["path"];
  30.                 $return["msg"] =  "获取已存在图像成功";

  31.                 $return['data']['id'] = $search_image["id"];
  32.                 $return['data']['path'] = $search_image["path"];
  33.                 $return['data']['type'] = "files" ;
  34.                 return $return;
  35.             }
  36.         }

  37.         $save_path = self::getSavePath("files");
  38.         $validate_rule = $validate_rule = $rule ? $rule : Config::get("upload.upload_files_validate");
  39.         $info = $file->validate($validate_rule)->move($save_path);

  40.         if ( $info ) {

  41.             $oinfo = $info->getInfo();

  42.             $data['name'] = $oinfo['name'];
  43.             $data['path'] = self::getSavePath("files",false).DS.$info->getSaveName();
  44.             $data['path'] = str_replace('\\', '/', $data['path']);
  45.             $data['md5'] = $file_hash_md5;
  46.             $data['sha1'] = $file_hash_sha1;
  47.             $data['size'] = $oinfo['size'];
  48.             $data['type'] = 'local';
  49.             $data['create_time'] = time();



  50.             if($is_record){
  51.                 $images_table = Config::get("upload.upload_files_table");
  52.                 if ( $id = Db::table($images_table)->insertGetId($data) ) {
  53.                     $return['data']['id'] = $id;
  54.                     $return['data']['path'] = $data['path'];
  55.                     $return['data']['type'] = "images" ;
  56.                 } else {
  57.                     $return['code'] = 1041;
  58.                     $return['msg'] = '记录到数据库失败!';
  59.                 }
  60.             }else{
  61.                 $return['data']['path'] = $data['path'];
  62.                 $return['data']['type'] = "files" ;
  63.             }

  64.         } else {
  65.             $return['code'] = 1040;
  66.             $return['msg'] = $file->getError();
  67.         }
  68.         return $return;
  69.     }
复制代码

作者: ywjdlq    时间: 2020-3-17 23:43
本帖最后由 ywjdlq 于 2020-3-17 23:50 编辑

查下swoole文档
作者: jekyll    时间: 2020-3-17 23:57
不如去
sifou.net
虽然那边的人也帮不上啥大忙,但经常问着问着自己就把思路理清了。
作者: 已注销账号    时间: 2020-3-18 10:15
我也太邪恶了,看标题还以为是pai huang pian 的大佬




欢迎光临 全球主机交流论坛 (https://fd.vvwvv.eu.org/) Powered by Discuz! X3.4