Blog專案 - 增加頂置功能
如圖所示,可以頂置文章了
頂置功能本身很簡單就能想像如何實現吧
加一個叫pin的int欄位,抓文章列表時加一個order by pin desc,沒其他花招 這次想講的反而是
當我們想要新增一個功能時,似乎增加欄位不一定是個好做法
像現在要為文章增加一個欄位,pin這個欄位幾乎肯定只有一兩個有值,不可能幾十篇文章都頂置< ...(more)
如圖所示,可以頂置文章了
頂置功能本身很簡單就能想像如何實現吧
加一個叫pin的int欄位,抓文章列表時加一個order by pin desc,沒其他花招 這次想講的反而是
當我們想要新增一個功能時,似乎增加欄位不一定是個好做法
像現在要為文章增加一個欄位,pin這個欄位幾乎肯定只有一兩個有值,不可能幾十篇文章都頂置< ...(more)
sql server以script形式輸出數據
話說目前Blog的文章id在某次亂搞的時候設成1000起步
現在看上去覺得怪怪的,有種想換回去的衝動
可是id既是primary key又有設auto_increment
不是隨手能改掉 我採用的方式是: 將Data輸出成insert into [table] (col1, col2) values(data1, data2) 手動修 ...(more)
現在看上去覺得怪怪的,有種想換回去的衝動
可是id既是primary key又有設auto_increment
不是隨手能改掉 我採用的方式是: 將Data輸出成insert into [table] (col1, col2) values(data1, data2) 手動修 ...(more)
HKEX news披露易訂閱助手 功能介紹
作者早前曾經十分熱衷於炒全購股,因發現當一隻股票喺臨開市前先公布私有化建議時,因消息來得突然,開市時參與嘅炒家不多,開市競價嘅成交價有時會比預期中低,等消息傳開了,大家睇到新聞了,先慢慢追入炒高股價。
但hkexnews目前並無依種訂閱指定類別消息嘅功能。
因此,我寫左一個小程式,去capture hkexnews關於全購、私有化嘅通告,通過telegram自動發通知,效果甚好。喺年中
...(more)
MVC裡的URL Decode
URL裡只能傳送ASCII字符
一般來說為了避免傳送的URL帶有其他不合法字符,在傳送URL前都應該先URL Encode一下
而因為送出去有Encode過,我以為Controller接request的時候也要先Decode
結果原來本來就Decode了 比方說URL中(輸出給user的)
c=%2by1W1wniZS9ZLccej53 ...(more)
一般來說為了避免傳送的URL帶有其他不合法字符,在傳送URL前都應該先URL Encode一下
而因為送出去有Encode過,我以為Controller接request的時候也要先Decode
結果原來本來就Decode了 比方說URL中(輸出給user的)
c=%2by1W1wniZS9ZLccej53 ...(more)
讓連結貼上到whatsapp、telegram等通話軟件時能顯示預覽/摘要
當我們用通話軟件分享連結時,通常都有預覽摘要之類
沒有的話就會想,這會不會是spam啦,不敢點進去這樣
尤其當你的網站一點知名度都沒有的時候 可以看見網媒這種很講究SEO的網站,所有meta tag都一應俱存 儘管這個blog已經加上了description,但顯然不夠
這次加上了description、title、keywords等< ...(more)
沒有的話就會想,這會不會是spam啦,不敢點進去這樣
尤其當你的網站一點知名度都沒有的時候 可以看見網媒這種很講究SEO的網站,所有meta tag都一應俱存 儘管這個blog已經加上了description,但顯然不夠
這次加上了description、title、keywords等< ...(more)
SQL筆記
避免全表掃瞄(Full Table Scans, FTS)
加index
不要select *,要什麼就抓什麼,不要抓多餘資料
where盡量避免使用!=和<>,這樣會令engine放棄使用index改用FTS
避免用null,理由同上,可以將表的null改成0,然後用=0,觸發使用index
避免使用or,改用union all,理由同上
避免在wher
...(more)
blog專案 - 點擊圖片縮放
新增了一個圖片縮放的功能
https://github.com/fat/zoom.js
它是一個很簡單的插件,所有擁有attribute data-action="zoom"的img元素都具有放大功能 <img src="img/blog_post_featured.png" data-action="zoom"> ...(more)
https://github.com/fat/zoom.js
它是一個很簡單的插件,所有擁有attribute data-action="zoom"的img元素都具有放大功能 <img src="img/blog_post_featured.png" data-action="zoom"> ...(more)
Blog專案 - 創造文章
上一篇文章做到的進度是:
能讀DB抓文章進Views
能根據傳進Views的Data產生文章列表
能點進去看內文 那基本上Blog最最基礎的部份就達成了,接下來應該開始寫文章,不然其他功能都用不到 當初計劃本站的時候是打算把文章用markdown語法儲存在DB
再找方法把markdown parse成html顯示出來
所以b ...(more)
能根據傳進Views的Data產生文章列表
能點進去看內文 那基本上Blog最最基礎的部份就達成了,接下來應該開始寫文章,不然其他功能都用不到 當初計劃本站的時候是打算把文章用markdown語法儲存在DB
再找方法把markdown parse成html顯示出來
所以b ...(more)
Blog專案 - 連接DB
目前的進度
首頁文章列表 (Controller & View)
內文
連接DB
閱讀文章的基本功能已經大致完成,但還沒有文章,所以現在開始著手寫連接DB的部份
前文提到當我們request /blog或者/blog/{id} 時,會執行BlogFactory的2個Method,從database裡面抓取 ...(more)
首頁文章列表 (Controller & View)
內文
連接DB
閱讀文章的基本功能已經大致完成,但還沒有文章,所以現在開始著手寫連接DB的部份
前文提到當我們request /blog或者/blog/{id} 時,會執行BlogFactory的2個Method,從database裡面抓取 ...(more)
惡耗! 網站剛上線就發現本來在用的SSL供應商取消了免費政策!
話說本來因為主機上某個service api需要用到SSL憑證
當時第一次處理,在網上找到SSL for free的教學就用了,需要每3個月手動更新一次證書 ^如圖 第一次申請證書,從下載到掛上IIS,足足花了一個晚上,終於更新幾次之後成為老手,15分鐘完成 今天買了新域名cancode.co,但本來在用的SSL憑證是 ...(more)
當時第一次處理,在網上找到SSL for free的教學就用了,需要每3個月手動更新一次證書 ^如圖 第一次申請證書,從下載到掛上IIS,足足花了一個晚上,終於更新幾次之後成為老手,15分鐘完成 今天買了新域名cancode.co,但本來在用的SSL憑證是 ...(more)