Skip to content

Instantly share code, notes, and snippets.

<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Clientsoftwaremap extends Model
{
/**
* 與模型關聯的資料表
JQuery 外掛:https://www.jstree.com/
利用 npm bower 下載原始碼,或是整包 zip 下載解壓縮放至於 bower_components 管理。
引入 CSS
<link rel="stylesheet" href="bower_components/jstree/dist/themes/default/style.min.css" />
引入 Js
<script src="bower_components/jstree/dist/jstree.min.js"></script>
目的:以 Ajax 方式,讀取檔案樹子節點。
@MicroHank
MicroHank / 利用 PHP 實作群組階層關係
Last active October 7, 2015 10:19
利用 PHP 實作群組階層關係
資料如下
group_id | group_name | parent_group_id
1 | admin | NULL
2 | test | NULL
3 | A | 1
4 | a1 | 3
5 | t1 | 2
6 | me | 1
// Get All group data
@MicroHank
MicroHank / gist:c7356fce53b0c0c113e6
Last active August 29, 2015 14:25
Laravel query builder 使用需求紀錄
---------------------------------
輸出欄位的 distinct 值
(1) $output = DB::table('table_name')->distinct()->get(array('column_name')) ;
(2) $output = DB::table('table_name')->select([DB::row('DISTINCT(column_name)'), 'some_col as new_col'])->distinct()->get();
備註:輸出欄位為 new_col
---------------------------------
where 的 AND 和 OR 寫法
select id,mode FROM table_name WHERE id = 1 AND (mode = 1 OR mode = 3)
$data = DB::table('table_name')->where('id','=',1)->where(function ($query) {
$query->where('mode','=',1)->orWhere('mode','=',3) ;
@MicroHank
MicroHank / gist:626580b1aa6730858519
Created July 21, 2015 10:05
Laravel 交易函數使用參數
交易函數可以使用一個變數
DB::transaction(function ($param) use ($param) {
$output = DB::table($param)->get();
}) ;
以下範例是錯誤的
DB::transaction(function ($p1,$p2,$p3) use ($p1,$p2,$p3) {
...code...
}) ;
@MicroHank
MicroHank / gist:9d2e6fa0f345cdc40f89
Created July 21, 2015 10:02
Javascript 正規式函數 match 使用自訂參數
[成功]
filter是要過濾的字串開頭
var regrule = new RegExp('^'+filter, "g") ;
string.match(regrule) ;
[錯誤]
string.match(/^filter/) ;
@MicroHank
MicroHank / gist:e79c2ee55185a1190c14
Last active September 22, 2015 06:07
Laravel 實作路由 post 設定
剛開始接觸 Laravel,第一個卡關的地方是路由的 post 設定,仔細研究官網文件後,終於成功了。
以下提供 form post 及 ajax post 範例:
路由設定
Route::post('testpost/', 'UserController@testpost');
(1) form 表單 post
送出一個名字欄位至 testpost/ 頁面,因為 Laravel 為了防止跨網站的 post 請求,
@MicroHank
MicroHank / gist:1fc1e9721cbcd5e3d199
Last active August 29, 2015 14:25
$.each()、array.prototype.forEach()、sort(function)
這兩個函數皆能走訪陣列所有元素
(範例 1) JQuery 的物件,所以只能用 $.each(array, callback(index,element))。
var arr = [] ;
var li = $("#id option") ; // 取出所有 option element
$.each(li, function(index, element){
arr.push(element.innerHTML) ; // or element.outerText
}) ;
範例 1 備註:
@MicroHank
MicroHank / gist:1932d3f9b3885f317c2c
Created July 16, 2015 05:48
在 ubuntu 14.04 安裝 skype 和 Line
[Skype 4.3]
32 bits
sudo apt-get install gdebi
wget download.skype.com/linux/skype-ubuntu-precise_4.3.0.37-1_i386.deb
sudo gdebi skype-ubuntu-precise_4.3.0.37-1_i386.deb
64 bits
sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install gdebi
@MicroHank
MicroHank / gist:c1fbeea418c982266e65
Created July 16, 2015 05:45
製作 ubuntu 安裝隨身碟
1.先至官方網站下載 iso 檔
正體站:http://www.ubuntu-tw.org/modules/tinyd0/ (如果不行則去英文官方網站下載)
2.下載 Universal USB Installer (UUI)
http://www.pendrivelinux.com/universal-usb-installer-easy-as-1-2-3/#button
3.參考 UUI 步驟:http://www.ubuntu.com/download/desktop/create-a-usb-stick-on-windows
(1)先插入隨身碟
(2)選擇 ubuntu -> 選擇 iso 檔 -> 選擇隨身碟槽 -> create