七牛云存储 - PHP项目中使用bootstrap-fileinput插件向七牛空间中post文件遇到的问题
PHP中文网
PHP中文网 2017-04-10 16:55:24
[PHP讨论组]

我的需求是这样的,有张个人资料的表单,表单中包含照片,姓名,性别,年龄等;照片需要提交到七牛里面保存,表单中照片上传使用bootstrap-fileinput插件;我的思路是用户填写表单中的文字信息后选择照片上传至七牛,上传成功后七牛会返回一个key也就是文件名称,然后再点击提交按钮将这个key和表单中其它已经填写的项一起保存至数据库中。

我的bootstrap-fileinput配置代码如下:

    <script type="text/javascript">
        jQuery(document).ready(function () {
            $("#pImg").fileinput({
                uploadUrl: "http://up.qiniu.com",
                uploadAsync: true,
                overwriteInitial: false,
                uploadExtraData: {
                    token: "<?php echo $token; ?>",
                }
            });
        });
    </script>

我不知道token是不是应该放在这个位置,但是token是正常赋值了的,

表单代码如下:

<form  method="post" action="/add/add_info">
    <p class="row">
        <p class="col-md-12">
            <label class="control-label">选择上传文件</label>
            <input id="pImg" class="file" type="file" multiple="true">
        </p>
    </p>
    <p class="row">
        <p class="col-md-3">
            <label class="control-label">姓名</label>
            <input type="text" class="form-control" name="uname">
        </p>
        <p class="col-md-3">
            <label class="control-label">性别</label>
            <input type="text" class="form-control" name="sex">
        </p>
        <p class="col-md-3">
            <label class="control-label">年龄</label>
            <input type="text" class="form-control" name="old">
        </p>
        <p class="col-md-3">
            <label class="control-label">住址</label>
            <input type="text" class="form-control" name="adress">
        </p>
    </p>
    <p class="row">
        <p class="col-md-12">
            <button type="submit" class="btn btn-primary">Submit</button>
        </p>
    </p>
</form>

但是现在就是图片传不上去,不知道是哪里配置的不正确,请老师们给予帮助,谢谢了!


下面是bootstrap-fileinput的效果,自带一个上传按钮:

默认效果:

选择图片后效果:

PHP中文网
PHP中文网

认证0级讲师

全部回复(2)
伊谢尔伦
$("#pImg").fileinput({
                uploadUrl: "http://up.qiniu.com",
                uploadAsync: true,
                overwriteInitial: false,
                uploadExtraData: {
                    token: "<?php echo $token; ?>",
                },
                slugCallback: function(filename) {  
                    //这里的回调你可以将上传成功后返回的key保存到一个input type=hidden 或者哪里看你自己,然后就可以了,再点击保存的时候,将这个input的值往你的服务端传就ok啦
                }
            });
ringa_lee

谁帮帮我啊,谢谢啊

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号