本文目錄一覽:
- 1、用PHP如何做出雲盤網站? 用PHP寫網頁後端,如何讓用戶可以上傳文件?如何讓網頁保存這些文件?如
- 2、導入excel文件,後端php處理導入的數據並存入資料庫,需要前後端結合的demo!
- 3、微信小程序,後端用php寫完介面,怎麼把數據給前端,要帶什麼參數
用PHP如何做出雲盤網站? 用PHP寫網頁後端,如何讓用戶可以上傳文件?如何讓網頁保存這些文件?如
第一個,前端不是用什麼控制項就可以,html+css是基礎,js可以讓前端更加人性化和體驗更加友好;
第二個,上傳和下載是前後端配合,重心在後端,需要php的文件處理功能,有很多此類的教程;
第三個,保存文件的時候對文件進行篩選,那些允許上傳下載,哪些不允許,控制大小數量,否則伺服器壓力會特別大,還有就是用戶許可權,就是用戶上傳的文件必須是只有上傳過的用戶才能使用;
第四個,對上傳的文件要進行分類存放和重命名,以免重名的文件被覆蓋掉;
建議:像這樣的網站,牽扯到會員系統,文件管理系統等,如果單獨開發,必須有非常好的php編程經驗,最好是找現成的開源系統進行二次開發或者學習一下啊。很少有這種專門針對網盤開發的教程,你可以找會員系統開發的教程和php文件管理的教程學習。
導入excel文件,後端php處理導入的數據並存入資料庫,需要前後端結合的demo!
thinkphp3.2和phpexcel導入最基本用法
先整個最基礎的代碼,理解了這個,後面的就非常簡單了
$file_name= ‘./Upload/excel/123456.xls’;
import(“Org.Util.PHPExcel”);
import(“Org.Util.PHPExcel.IOFactory”);
$objReader = \PHPExcel_IOFactory::createReader(‘Excel5’);
$objPHPExcel = $objReader-load($file_name,$encode=’utf-8′);
$sheet = $objPHPExcel-getSheet(0);
$highestRow = $sheet-getHighestRow(); // 取得總行數
$highestColumn = $sheet-getHighestColumn(); // 取得總列數
$s = $objPHPExcel-getActiveSheet()-getCell(“A2”)-getValue();
表格內容:
再給大家整個一點難度的,先說下思路。
1.上傳excel文件,得到它的地址
2.寫個處理exl的function,即可
實例代碼演示:
public function upload(){
$files = $_FILES[‘exl’];
// exl格式,否則重新上傳
if($files[‘type’] !=’application/vnd.ms-excel’){
$this-error(‘不是Excel文件,請重新上傳’);
}
// 上傳
$upload = new \Think\Upload();// 實例化上傳類
$upload-maxSize = 3145728 ;// 設置附件上傳大小
$upload-exts = array(‘xls’);// 設置附件上傳類型
$upload-rootPath = ‘./Upload/’; // 設置附件上傳根目錄
$upload-savePath = ‘excel/’; // 設置附件上傳(子)目錄
//$upload-subName = array(‘date’, ‘Ym’);
$upload-subName = ”;
// 上傳文件
$info = $upload-upload();
$file_name = $upload-rootPath.$info[‘exl’][‘savepath’].$info[‘exl’][‘savename’];
$exl = $this-import_exl($file_name);
// 去掉第exl表格中第一行
unset($exl[0]);
// 清理空數組
foreach($exl as $k=$v){
if(empty($v)){
unset($exl[$k]);
}
};
// 重新排序
sort($exl);
$count = count($exl);
// 檢測表格導入成功後,是否有數據生成
if($count1){
$this-error(‘未檢測到有效數據’);
}
// 開始組合數據
foreach($exl as $k=$v){
$goods[$k][‘goods_sn’] = $v;
// 查詢資料庫
$where[‘goods_sn’] = array(‘like’,’%’.$v.’%’);
$res = M(‘goods’)-where($where)-find();
$goods[$k][‘goods_name’] = $res[‘goods_name’];
$goods[$k][‘goods_thumb’] = $res[‘goods_thumb’];
if($res){
// 是否匹配成功
$goods[$k][‘is_match’] = ‘1’;
$f += 1;
}else{
// 匹配失敗
$goods[$k][‘is_match’] = ‘0’;
$w += 1;
}
}
// 實例化數據
$this-assign(‘goods’,$goods);
//print_r($f);
// 統計結果
$total[‘count’] = $count;
$total[‘success’] = $f;
$total[‘error’] = $w;
$this-assign(‘total’,$total);
// 刪除Excel文件
unlink($file_name);
$this-display(‘info’);
}
/* 處理上傳exl數據
* $file_name 文件路徑
*/
public function import_exl($file_name){
//$file_name= ‘./Upload/excel/123456.xls’;
import(“Org.Util.PHPExcel”); // 這裡不能漏掉
import(“Org.Util.PHPExcel.IOFactory”);
$objReader = \PHPExcel_IOFactory::createReader(‘Excel5’);
$objPHPExcel = $objReader-load($file_name,$encode=’utf-8′);
$sheet = $objPHPExcel-getSheet(0);
$highestRow = $sheet-getHighestRow(); // 取得總行數
$highestColumn = $sheet-getHighestColumn(); // 取得總列數
for($i=1;$i$highestRow+1;$i++){
$data[] = $objPHPExcel-getActiveSheet()-getCell(‘A’.$i)-getValue();
}
return $data;
}
有問題一定要及時弄清楚
微信小程序,後端用php寫完介面,怎麼把數據給前端,要帶什麼參數
1、首先在 index.js中想寫邏輯代碼。
2、其中page裡面的data裡面是前台展示時的一些數據,而onload裡面是調用的介面。
3、調用的方式為get調用,返回的數據存在res裡面。
4、返回的數據,而data中就是需要的數據。
5、data:一個入參method:請求方式,如果是POST請求必須按上面寫,默認是get請求,不用處理。complete:頁面請求完成後的方法,通過that.setData將數據傳遞給WXML頁面。success:頁面載入成功後的執行方法。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/249357.html