七牛云上传
首先更改配置文件
我在开发中没有遇到QiniuStorage.class.php文件$ak和$sk值不对的问题,估计是官方已经修改这个bug。
但是我上传文件是都是提示上传地址不对,最后检查发现七牛现在存储区域已经支持华东,华北,华南等多个区域,但是官方还是华东的上传地址,需要手动修改QiniuStorage.class.php文件的配置
- public $QINIU_RSF_HOST = 'http://rsf.qbox.me';
- public $QINIU_RS_HOST = 'http://rs.qbox.me';
- //public $QINIU_UP_HOST = 'http://up.qiniu.com';//华东
- //public $QINIU_UP_HOST = 'http://up-z1.qiniu.com';//华北
- public $QINIU_UP_HOST = 'http://up-z2.qiniu.com';//华南
- public $timeout = '
- 配置文件
- //七牛上传文件设置
'PICTURE_UPLOAD_DRIVER'=>'Qiniu',
//本地上传文件驱动配置
'UPLOAD_LOCAL_CONFIG'=>array(),
'UPLOAD_QINIU_CONFIG'=>array(
'accessKey'=>'Ff75GG3cif3JDtKckQAY-vV1db-IlnJ-_oDD4BuV',
'secretKey'=>'R_1v9B8SNUowZOL-Anf39B1hI-C5m1qyu9DBmk--',
'bucket'=>'goods',
'domain'=>'p09sfy2zp.bkt.clouddn.com',
'timeout'=>3600,
), - 上传方法
- public function uploadTicketFile()
{
if ($_FILES){
$qiniu_config = C('UPLOAD_QINIU_CONFIG');
$driver = C('PICTURE_UPLOAD_DRIVER');
$base_config = array(
'maxSize' => 2097152,
// 'rootPath' => './Uploads/UploadFile/',
'rootPath' => './Uploads/UploadFile/',
'savePath' => '',
'saveName' => array('uniqid', ''),
'exts' => array('jpg', 'gif', 'png', 'jpeg'),
//'autoSub' => true,
//'subName' => array('date','Ymd'),
);
$upload = new \Think\Upload($base_config, $driver, $qiniu_config);
$img = $upload->upload($_FILES);
if($img){
$this->ajaxReturn(array('error' => 0, 'url' => $img['thumb']['url']));
}else{
$this->ajaxReturn($upload->getError());
}
}else{
$this->ajaxReturn('需要一张图片!');
}
} - 前端
- <tr>
<td class="label">商品LOGO</td>
<td>
<input type="file" name="thumb" id="upfile" />
</td>
<span class="require-field">*</span>
</tr>
<tr>
<td class="label">商品图片上传</td>
<td>
<input name="qiniu_url" type="button" id="submitpic" value="上传" />
</td>
<span class="require-field">*</span>
</tr>
<tr>
<td class="label">商品图片地址</td>
<td>
<input name="pic_url" id="pic_url" value="" />
</td>
<span class="require-field">*</span>
</tr> - js
- <script src="__PUBLIC__/Admin/Assets/js/jquery-1.8.3.min.js" type="text/javascript"></script>
<script type="text/javascript">
//上传图片
$("#submitpic").click(function(){
$.ajax({
url:"<?php echo U('Goods/uploadTicketFile'); ?>",
type:'post',
data:new FormData($("#upform")[0]),
processData: false,
contentType: false,
//dataType:"json",
success:function(msg){
console.log(msg.url);
// // $("#pic_url").value=msg.url
// $("#pic_url").append("<input value='" + msg.url + "'>" + item.name );
$("#pic_url").val(msg.url)
}
});
});
</script>
- //七牛上传文件设置
不善不恶做人,不黑不白做事