激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - tp5實現微信小程序多圖片上傳到服務器功能

tp5實現微信小程序多圖片上傳到服務器功能

2019-09-19 12:57JspFnta PHP教程

這最近在做一個教育類的小商城的微信小程序,用到了上傳多個圖片文件到服務器端。下面腳本之家小編給大家帶來了tp5實現微信小程序多圖片上傳到服務器的方法,需要的朋友可以參考下

最近在做一個教育類的小商城的微信小程序,用到了上傳多個圖片文件到服務器端,這里做一個講解,希望對大家有所幫助。

1,小程序端:

在wxml文件中:

<!--選擇圖片 -->
<view class="picture">
<view class="img" wx:for="{{imgs}}" wx:for-item="item" wx:key="*this">
<image class='imgSelected' src="{{item}}" data-index="{{index}}" mode="aspectFill" bindtap="previewImg"></image>
<view class="delete-btn" data-index="{{index}}" catchtap="deleteImg">刪除</view>
</view>
<view class="clickImg" bindtap="chooseImg">點擊上傳作業</view>
</view>
<!-- 選擇圖片end -->

在js文件中:

Page({
/**
 * 頁面的初始數據
*/
data: {
 index: 0,
 multiIndex: [0, 0],
//傳到后臺的課程分類
cname:'',
 },
/**
 * 生命周期函數--監聽頁面加載
*/
onLoad: function (options) {
 },
/**
 * 
 * 生命周期函數--監聽頁面初次渲染完成
*/
onReady: function () {
 },
/**
 * 生命周期函數--監聽頁面顯示
*/
onShow: function () {
 },
/**
 * 生命周期函數--監聽頁面隱藏
*/
onHide: function () {
 },
/**
 * 生命周期函數--監聽頁面卸載
*/
onUnload: function () {
 },
/**
 * 頁面相關事件處理函數--監聽用戶下拉動作
*/
onPullDownRefresh: function () {
 },
/**
 * 頁面上拉觸底事件的處理函數
*/
onReachBottom: function () {
 },
/**
 * 用戶點擊右上角分享
*/
onShareAppMessage: function () {
 },
// 上傳圖片操作
// 上傳圖片
chooseImg: function (e) {
var that = this;
if(that.data.cname==''){
 }else{
var imgs = this.data.imgs;
if (imgs.length >= 9) {
this.setData({
 lenMore: 1
 });
 setTimeout(function () {
 that.setData({
 lenMore: 0
 });
 }, 2500);
return false;
 }
 wx.chooseImage({
// count: 1, // 默認9
 sizeType: ['original', 'compressed'], // 可以指定是原圖還是壓縮圖,默認二者都有
sourceType: ['album', 'camera'], // 可以指定來源是相冊還是相機,默認二者都有
success: function (res) {
// 返回選定照片的本地文件路徑列表,tempFilePath可以作為img標簽的src屬性顯示圖片
var tempFilePaths = res.tempFilePaths;
var imgs = that.data.imgs;
// console.log(tempFilePaths + '----');
for (var i = 0; i < tempFilePaths.length; i++) {
if (imgs.length >= 9) {
 that.setData({
 imgs: imgs
 });
return false;
 } else {
 imgs.push(tempFilePaths[i]);
 }
 }
// console.log(imgs);
 that.setData({
 imgs: imgs,
 });
//循環把圖片上傳到服務器
for (var i = 0; i < imgs.length; i++) {
 wx.uploadFile({
 url: url + 'Wx_SaveHomeWork',
 filePath: imgs[i],
 name: 'files',
 formData: {
 cname: that.data.cname
 },
 success: function (res) {
 console.log(res)
 }
 })
 }
 }
 });
 }
 },
// 刪除圖片
deleteImg: function (e) {
var imgs = this.data.imgs;
var index = e.currentTarget.dataset.index;
 imgs.splice(index, 1);
this.setData({
 imgs: imgs
 });
 },
// 預覽圖片
previewImg: function (e) {
//獲取當前圖片的下標
var index = e.currentTarget.dataset.index;
//所有圖片
var imgs = this.data.imgs;
 wx.previewImage({
//當前顯示圖片
current: imgs[index],
//所有圖片
urls: imgs
 })
 },
})

2,我們注意到我的wx.request請求中Wx_SaveHomeWork方法是后臺服務器的接收圖片方法,

后邊我會把這個方法展示出來,

3.tp5后臺controller中:

//存取學生作業信息
  public function Wx_SaveHomeWork(){
    $files=\request()->file('files');
    $cname=\request()->param('cname');
    $cid=Db::name('course')->where('cname',$cname)->value('id');
    $max_id=Db::name('homework')->max('id');
    foreach($files as $item){
// 移動到框架應用根目錄/public/uploads/ 目錄下
      $info = $files->rule('date')->move(ROOT_PATH . 'public' . DS . 'uploads');
      if($info){
        $saveName=str_replace("\\","/",$info->getSaveName());
        $img='/uploads/'.$saveName;
        $homework[]=['id'=>$max_id+1,'img'=>$img,'cid'=>$cid];
      }
    }
    //把數據插入到作業表中
    \db('homework')->insertAll($homework);
  }

這里說一下,max_id的作用,因為接受的是多張圖片,相當于一次性要存儲多條數據,所以用max_id對id進行自增,存儲到數據庫表,cid是我自己數據庫邏輯需要用到的變量,可以不用考慮,

4.講解的不夠清楚,因為是自己寫的,感受不到難點在哪里,我自己的難點是在小程序端的圖片上傳,用了for循環,循環上傳的方法,其他的相對來說,邏輯比較簡單。

總結

以上所述是小編給大家介紹的tp5實現微信小程序多圖片上傳到服務器功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對服務器之家網站的支持!

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 中国产一级毛片 | 国产在线1区 | 91中文字幕在线观看 | 国产午夜亚洲精品 | 久国产精品视频 | 免费观看三级毛片 | 中文字幕激情 | 亚洲精品久久久久久 | 日本精品视频一区二区三区四区 | 久久狠狠高潮亚洲精品 | 毛片视频网站 | 斗罗破苍穹在线观看免费完整观看 | 欧美性生交xxxxx免费观看 | 国产精品片一区二区三区 | 国产精品视频免费看 | 鲁丝一区二区三区不属 | 日韩av在线影院 | 国产精品色在线网站 | 自拍亚洲伦理 | 国产亚洲精品成人a | 中文字幕电影免费播放 | 国产一区日韩精品 | 线观看免费完整aaa 一二区成人影院电影网 | 中文字幕国产欧美 | 午夜爽爽爽男女免费观看hd | xx53xx| 久久久久久久久久美女 | 亚洲91网站 | 精品中文字幕在线观看 | 久久精品视频8 | 精品国产乱码一区二区 | 欧美毛片免费观看 | 精品亚洲在线 | 在线免费91| 亚洲婷婷日日综合婷婷噜噜噜 | 北原夏美av | 午夜91视频 | 日本黄色一级视频 | 国产艳妇av视国产精选av一区 | chinesehdxxxx无套| 日韩精品久久久 |