記憶加載中,請稍待...

尋找已經紀錄的故事

PHP Caching Headers

PHP Caching Hea ...

[img]pexels-photo-speed-8691866723.jpg[/img] 最近測試平台系統執行速度,老實說測試的有點無力~ 總覺得能做的可以做的都做了,但速度就是快不了~ 不管是用哪種測速平台測試,都不盡理想。 Google PageSpeed Insights給了我一個方向。 Caching 為什麼要設定Cache? 因為若每次平台開啟都得重新把所有的圖像或框架重新載入一遍那得耗掉多少的網路資源跟時間? 因此,參考了一些Cache的設定,如下: [pre][code]$seconds_to_cache = 3600; $ts = gmdate("D, d M Y H:i:s", time() + $seconds_to_cache) . " GMT"; header("Expires: $ts"); header("Pragma: cache"); header("Cache-Control: max-age=$seconds_to_cache");[/code][/pre] 設置快取時間1個小時。 清除快取則是 [pre][code]header("Expires: Mon, 26 Jul 1990 05:00:00 GMT"); header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT"); header("Cache-Control: no-store, no-cache, must-revalidate"); header("Cache-Control: post-check=0, pre-check=0", false); header("Pragma: no-cache");[/code][/pre] 先不管測速平台的測試結果如何~至少我的肉眼是有感受到執行速度似乎真的變快了~ 總之,先觀察一段時間。
2018-06-09 Mark Chang

0 35 0

尚未提供地址...
分享 斜槓青年正夯,什麼都會才是王道?他舉賈伯斯、巴菲特為例,勸你萬萬不可跨領域-風傳媒
www.storm.mg

分享 斜槓青年正夯,什麼都會才 ...

巴菲特:「了解自己的能力圈,待在裡面。這個圈圈到底有多大其實無關緊要。知道圈圈的邊線究竟在哪則非常重要。」 所以,我的能力是.........? 好吧~陷入沉思狀態..........。
2018-06-06 Mark Chang

0 31 0

尚未提供地址...
破版,很醜!!

破版,很醜!!

[img]pexels-photowrite-3941605002.jpg[/img] 破版......很醜對不對!! 我想這是所有從事網頁設計師的痛~ 這時你需要的是可以輕輕鬆鬆協助你過關的CSS 文字強迫換行 [pre][code]word-break: break-all;[/code][/pre] 使用方式 [pre][code].divname { background-color: #e0ebee; width: 100%; max-width:600px; word-break: break-all; overflow: auto; margin: 18px 0 18px 0 !important; padding-top: 0px;  }[/code][/pre] 注意~max width 600px,這表示最寬你給我到600px就好就給我強迫換行~ 當然,若排版需要,你還可以有其他選擇~ 依單字換行 [pre][code]word-wrap:break-word;[/code][/pre] 使用契機? 若使用文字強迫換行,太長的英文字,會自動切成兩半。 這時就得使用依單字換行方式~ 另外....... 還有一個,死都不要給我換行的選擇。 [pre][code]white-space:nowrap;[/code][/pre] 請審慎使用之~
2018-06-01 Mark Chang

0 36 0

尚未提供地址...
javascript獲取當前時間

javascript獲取當前時 ...

[img]watch-clock-8923743073.jpg[/img] [pre][code]var myDate = new Date(); //獲取當前年 var year=myDate.getFullYear(); //獲取當前月 var month=myDate.getMonth()+1; //獲取當前日 var date=myDate.getDate(); var h=myDate.getHours(); //獲取當前時(0-23) var m=myDate.getMinutes(); //獲取當前分(0-59) if(m<10) m = '0' + m; var s=myDate.getSeconds(); if(s<10) s = '0' + s; var now=year+'-'+month+"-"+date+" "+h+':'+m+":"+s;[/code][/pre] 以上紀錄~
2018-05-28 Mark Chang

0 19 0

尚未提供地址...
使用PHP mb_substr() 函式,擷取部分字串並記得使用UTF-8。

使用PHP mb_substr ...

[img]pexels-photo-hello-1322063775.jpg[/img] 文字長度太長,一般來說我們可以使用DIV包住字串,再定義DIV的最大高度及最大寬度。 然後使用hidden的方式讓超出範圍的字串隱藏起來~ 當然還可以使用以下函式: PHP mb_substr() 函式基本語法 [pre][code]string mb_substr ( string $str , int $start , int $length , string $encoding )[/code][/pre] mb_substr 是用來取得部分字串的函式,用法與 substr() 類似,但 mb_substr 多了編碼的判斷。 若是中文字串最好能使用UTF-8編碼。 以下使用UTF-8,PHP mb_substr() 函式範例說明 [pre][code]$string="我家門前有小河and後面有山坡";  echo mb_substr( $string,0,10,"utf-8");[/code][/pre] 在上列範例中有個字串叫做「我家門前有小河and後面有山坡」。 參雜了中文字與英文字,再使用 mb_substr 截取字串。 從第 0 個字擷取到第 10 個字,並採用 UTF-8 編碼。 這樣跑出來的結果就是「我家門前有小河and」這 10 個字。  
2018-05-10 Mark Chang

0 66 0

尚未提供地址...
jQuery resize取得瀏覽器目前視窗寬度

jQuery resize取得 ...

[img]pexels-photo-keyboard-3657884262.jpg[/img] 在使用CSS調整RWD顯示時~ 也可以使用javascript來做一些輔助,例如判斷目前瀏覽器的大小。 [pre][code]$(document).ready(function(){ $(window).resize(function() { var wdth=$(window).width(); alert(wdth); }); });[/code][/pre]  
2018-05-04 Mark Chang

0 40 0

台北市內湖區江南街71巷75弄 Go
使用PHP取得目前網址方式

使用PHP取得目前網址方式

[img]pexels-photo-900106_edit-1835445142.jpg[/img] 使用PHP取得網址相關的方式有下列幾種: [pre][code]$_SERVER["REQUEST_URI"]取得當前 $_SERVER["HTTP_REFERER"] 取得上一頁連結 $_SERVER['PHP_SELF']不含參數[/code][/pre] 以下修改,是為了資安。 [pre][code]htmlEntities($_SERVER["PHP_SELF"], ENT_QUOTES, "UTF-8")不含參數 htmlEntities($_SERVER['HTTP_REFERER'], ENT_QUOTES, "UTF-8") 取得上一頁連結 htmlEntities($_SERVER['REQUEST_URI'], ENT_QUOTES, "UTF-8") 取得當前[/code][/pre] 老了,純粹只是記錄~
2018-04-23 Mark Chang

0 57 0

尚未提供地址...
PHP–implode() 將陣列轉成字串

PHP–implode() 將 ...

[img]pexels-photo_-18863687.jpg[/img] 使用implode將陣列轉換成字串; [pre][code]$ar=array('a','b','c','d','e'); $output=implode(",",$ar); print_r($output);[/code][/pre] 輸出結果: a,b,c,d,e
2018-04-20 Mark Chang

0 54 0

尚未提供地址...
mysql 查詢數據資料是否有重複

mysql 查詢數據資料是否有 ...

[img]pexels-photo-edit-5824679136.jpg[/img] 有沒有試過資料庫裡上萬筆資料卻不知道是不是有重複的數據? 這時你一定要試試這個查詢方法~ [pre][code]//列出是否有重複的姓名 select name,count(*) as count from member_table group by name having count >1 //上列查詢是說要查詢member_table的表單裡有沒有name相同的數量是大於1的[/code][/pre]  
2018-04-18 Mark Chang

0 55 0

尚未提供地址...
文件上傳過程中使用白名單、黑名單、或者MIME做認證

文件上傳過程中使用白名單、黑名 ...

[img]pexels-photo-lock_-6533494698.jpg[/img] [strong]是不是被資安的問題搞得很煩?[/strong] 我想,在建置系統的過程中,或多或少都會遇到資安的問題.... 除非你是秉持著歡迎大家進來坐坐,想喝茶得自己來,泡咖啡的就在旁邊,然後吃不完可以順便帶走。 又或者,您的客人是一位很有禮貌的人,三不五時來拜訪您還給您帶來了禮物..... 但您希望說人來就好不用特別帶禮物來了。 又或者,如果您會想說真的想帶禮物,那麼幫我帶杯咖啡好了~ 所以,該怎麼做? [strong]設定黑名單[/strong] [pre][code] $BlackList = array('asp','php','jsp','php5','asa','aspx');//黑名單列表 if (isset($_POST["submit"])){ $name = $_FILES['file']['name']; //接收上傳的檔案檔名 echo $name; $extension = substr(strrchr($name,"."),1);//以副檔名判斷檔案類別 $boo = false; foreach ($BlackList as $key=>$value){ if ($value==$extension){//判斷是否為自訂的黑名單 $boo=true; break;//如果是黑名單直接退出 } } if(!$boo){//如果不是黑名單就進行上傳檔案 $size=$_FILES['file']['size'];//檔案大小 if($size>5242880){//檔案不能超過5MB echo "您想上傳檔案不能超過5MB"; exit(); } $tmp=$_FILES['upfile']['tmp_name'];//暫存位置 $uploadfile = $datum."_".$flag.".".$extension;//重新命名檔案 move_uploaded_file($tmp,"../uploadfile/".$uploadfile); //搬移到指定路徑 }else { echo "您想上傳檔案無法允許被上傳"; } } [/code][/pre] [strong]設定白名單[/strong] [pre][code]$WhiteList = array('pdf','jpg','png','bmp','gif','jpg','doc');//白名單列表 if (isset($_POST["submit"])){ $name = $_FILES['file']['name']; //接收上傳的檔案檔名 $extension = substr(strrchr($name,"."),1);//以副檔名判斷檔案類別 $boo = false; foreach ($WhiteList as $key=>$value){ if ($value==$extension){//判斷是否為自訂的白名單 $boo=true; } } if($boo){//如果是白名單則開始執行 $size=$_FILES['file']['size'];//檔案大小 if($size>5242880){//檔案不能超過5MB echo "您想上傳檔案不能超過5MB"; exit(); } $tmp=$_FILES['upfile']['tmp_name'];//暫存位置 $uploadfile = $datum."_".$flag.".".$extension;//重新命名檔案 move_uploaded_file($tmp,"../uploadfile/".$uploadfile); //搬移到指定路徑 }else { echo "您想上傳檔案無法允許被上傳"; } } [/code][/pre] [strong]MIME[/strong] [pre][code]if ($_FILE['file']['type']=="image/jpeg"){//判斷是否為jpg格式 $imageTempName=$_FILES['file']['tmp_name']; $imageName=$_FILES['file']['name']; $last = substr($imageName,strrpos($imageName,".")); if(!is_dir("uploadFile")) mkdir("uploadFile"); } $imageName=md5($imageName).$last; move_uploaded_file($imageTempName,"./uploadFile".$imageName);//指搬移到指定路徑 echo ("檔案上傳成功"); } else{ echo ("您想上傳檔案無法允許被上傳"); exit(); } [/code][/pre] 我想,雖然禮多人不怪,但還是加把鎖,必竟我們現在談的是資安。
2018-04-11 Mark Chang

1 179 0

尚未提供地址...

活躍作者群~

JuilinChung / 784 篇
56%
鍾秉均 / 228 篇
16%
Mark Chang / 54 篇
4%
黃貓 / 49 篇
3%
故事的秘密 / 37 篇
3%
Chung lucas / 32 篇
2%

最喜愛的故事排行~

Hi,謝謝你的參與,但無法重複投票哦~

Hi,請選擇一個你認為的答案

錯誤的URL...

執行錯誤...

別忘了填寫欄位...

輸入格式錯誤...

Email已經有人使用...

請填寫Email...

請填寫正確的Email...

密碼裡需包含英文字及數字8至12...

確認密碼是否與密碼相同...

正在更新排序...

帳號已經存在!請確認您的帳號密碼 或請連絡我們...