發表文章

Vue.Js 介紹[1]

Vue.Js 是什麼? Vue(讀音 vjuː,類似 view ),是一套構建用戶界面的 漸進式框架 (The progressive framework)。與其他大型框架不同的是,Vue被設計為可由底向上逐漸應用。Vue的核心只關注圖層,不僅易於上手,還便於與第三方套件項目整合。 另一方面,當與現代化工具鍊結合使用時Vue能對html進行高度渲染,也完全能為復染的單頁應用提供驅動。 如果你剛開始學習前端開發(html、CSS、JavaScript),將框架作為學習的第一步可能不會是個好主意。 建議掌握好基礎知識在進行較複雜的框架應用學習。 起步 首先須建立一個可執行頁面檔案並載入vue.js。 基本php檔案 教學開發筆者使用CDN Vue.Js做線上載入動作。 相關網址可至 CDN Vue.Js 自行挑選及使用。 <!DOCTYPE html> <html> <head> <script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.16/vue.js"></script> </head> <body> </body> </html> 聲明式渲染 Vue.js的核心採用簡潔的模板語法來將數據渲染進DOM的系統。 先建立相關初始介面。 div: <div id="app"> {{ message }} </div> script: var app = new vue({ el: '#app' data: { message: 'Hello Vue!' } }); 組合起來大概長這樣: <!DOCTYPE html> <html> <head> <script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.16/vue.js"></script...

PHP 資訊安全 - 資料消毒

荀子-性惡篇第二十三: 人之性惡,其善者僞也。 永遠不要相信任何來源不明的資料 不可信資料來源 只要不是系統產出組合之資料,皆不可信。 如下: $_GET $_POST $_REQUEST $_COOKIE $argv php://stdin file_get_contents() 遠端資料庫 遠端 API 來自客戶端的資料 只要是外部來源資料都有可能是攻擊的源頭( XSS 、 CSRF 等…) 怎麼說呢? 您的網站允許使用 HTML 下評論,那將有可能受到 <script> 隱碼攻擊。 <p>This is good!!!</p> <script> window.location.href='https://hank7891.github.io/'; </script> 您的登入帳號密碼被如此輸入,即會遭受  SQL Injection account: ' OR 1=1 # password: 1234 $account = $_GET['account']; // '' OR 1=1 # $password = $_GET['password']; $query = "SELECT * FROM user WHERE account = '$account' AND password = '$password'"; 產生指令: SELECT * FROM user WHERE account = '' OR 1=1 #AND password = '1234'; 如此一來是不是令您毛骨悚然呢? 所以呢? 想要開發安全的 Web 應用程式,最重要的是正確掌握資料的 用途 狀態。 一般正規化消毒→一般處理用資料 例如:trim、magicquotesgpc、NUL、強制轉型、大小寫轉換、值域範圍檢查、白名單檢查、RegExp規則檢查 HTML輸出用消毒→HTML輸出用資料 例如:htmlspecialchars, strip_tags, htmlentities SQL輸出用消毒→SQL輸出用資料 例如:mysqlreal...

wkhtmltopdf PDF 樣式設定

—disable-smart-shrinking 這個參數一定要加上,加上頁面就不縮小了; —dpi 這個參數不要用默認值,要設置大一點;letter-spacinng : 0 不然字間距太密; wkhtmltopdf常規參數記錄下 linux:wkhtmltopdf [OPTIONS]… [More input files] windows:wkhtmltopdf.exe [OPTIONS]… [More input files] 常規選項 –allow 允許加載從指定的文件夾中的文件或文件(可重複) –book* 設置一會打印一本書的時候,通常設置的選項 –collate 打印多份副本時整理 –cookie 設置一個額外的cookie(可重複) –cookie-jar 讀取和寫入的Cookie,並在提供的cookie jar文件 –copies 複印打印成pdf文件數(默認爲1) –cover* 使用HTML文件作爲封面。它會帶頁眉和頁腳的TOC之前插入 –custom-header 設置一個附加的HTTP頭(可重複) –debug-javascript 顯示的javascript調試輸出 –default-header* 添加一個缺省的頭部,與頁面的左邊的名稱,頁面數到右邊,例如: –header-left ‘[webpage]’ –header-right ‘[page]/[toPage]’ –header-line –disable-external-links* 禁止生成鏈接到遠程網頁 –disable-internal-links* 禁止使用本地鏈接 –disable-javascript 禁止讓網頁執行JavaScript –disable-pdf-compression* 禁止在PDF對象使用無損壓縮 –disable-smart-shrinking* 禁止使用WebKit的智能戰略收縮,使像素/ DPI比沒有不變 –disallow-local-file-access 禁止允許轉換的本地文件讀取其他本地文件,除非explecitily允許用 –allow –dpi 顯式更改DPI(這對基於X11的系統沒有任何影響) –enable-plugins 啓用已安裝的插件(如Flash –e...