weinirumo

weinirumo

专治各种上传

  • 财富值6675
  • 威望值50
  • 总积分7605

个人信息

  • 发布了源码
    yii2.0整合阿里云oss php sdk(一)
  • 被你的思路带偏了。图片上传一个方法就能搞定了。如果你有不同的表单要保存不同的图片,最好的做法是把文件上传的name值都写成一样的,调用一个方法ajax上传图片,完成以后,返回一个文件id,或者图片路径,用ajax把返回的值放到隐藏域里边,最后跟表单一起提交就行了。这样就获得了保存了图片的信息。也不用写多个接收文件上传的代码。如果还有问题可以跟我联系~~~~

  • 你的composer貌似有问题,如果比较着急,最好是绕过composer安装。把七牛的php sdk封装成一个组件,就能用了。

  • 赞了回答
    
     <?php $form = ActiveForm::begin(['options' => ['enctype' => 'multipart/form-data']]) ?>
    
        <?= $form->field($model, 'file')->fileInput() ?>
    
        <?php ActiveForm::end(); ?>
    
    
  • 发表了说说
    有人听说过翼商城吗?
  • 2016-11-26 已签到
    连续签到3天,获得了15个金钱
  • 第一个if语句,内容换成Yii::$app->request->isPost,试一下。还有,你的文件验证规则应该是上传Excel文件的,你是不是上传了其他类型的文件。如果还有问题,在控制器里打印上传错误看一下,print_r($model->getErrors()),根据报错来处理。

  • 回复了 的回答

    我通过查看文档的多文件上传,觉得你可以尝试下修改两个地方:

    • 视图文件 name 应该是个数组
    <input id="input-700" name="Articles[]" type="file" multiple >
    
    • 控制器
      你应该调用 UploadedFile::getInstances() 而不是 UploadedFile::getInstance() 来把 UploadedFile 实例数组赋值给 UploadForm::imageFiles。
    $model->images = UploadedFile::getInstances($model, 'Articles');
    

    类似thumb,和logo都是在model里边写死的。这个想法,不太好实现呀。就是算是开发接口,都是规定好上传的name值。这个问题还是值得研究一下的,不过我要下班了,有时间了再帮你想办法吧。

副总裁 等级规则
7605/10000
资料完整度
20/100
用户活跃度
10/100

Ta的关注

3

Ta的粉丝

17

Ta的访客

48