[高雄美食] 高雄-TON 卡茲日歐風尚食堂

DSC03303

mobile01 發現【Catanna食記】高雄-TON 卡茲日歐風尚食堂 這篇文章,之前答應宗翰要請他吃一次飯,原因是我找到了第一份工作,所以凹了我一頓飯,這次也拖了很久,從我畢業到現在都半年超過了,才一起出來吃飯,宗翰也寫了一篇食記:[Food]TON 卡茲日歐風尚食堂 – 高雄,先不多說,來介紹一下美食吧,我跟宗翰還有他高中同學總共一起吃了 693 元(炸豆腐 炸野菇 藍帶雙起士豬排 雙人海陸稱霸餐),吃到我們快撐死了,其實點餐點就會附上白飯跟高麗蔡絲,很大一盤,請看底下的圖:

DSC03289

DSC03290

Continue reading “[高雄美食] 高雄-TON 卡茲日歐風尚食堂”

[CodeIgniter] 解決 CI 下載函數 force_download 在 IE 底下檔案標題亂碼

CodeIgniter CodeIgniter 底下提供了 force_download 函數,讓使用者可以直接下載檔案,但是會遇到中文的問題,IE 底下開起來檔名會是亂碼,force_download(‘filename’, ‘data’) 如果 filename 使用中文,測試 FireFoxChrome 都是沒問題的,唯獨 IE 開起來就是有問題,所以麻煩請修改 helpers/download_helper.php 這隻程式。
if ( ! function_exists('force_download'))
{
	function force_download($filename = '', $data = '')
	{
		if ($filename == '' OR $data == '')
		{
			return FALSE;
		}

		// Try to determine if the filename includes a file extension.
		// We need it in order to set the MIME type
		if (FALSE === strpos($filename, '.'))
		{
			return FALSE;
		}
	
		// Grab the file extension
		$x = explode('.', $filename);
		$extension = end($x);

		// Load the mime types
		@include(APPPATH.'config/mimes'.EXT);
	
		// Set a default mime if we can't find it
		if ( ! isset($mimes[$extension]))
		{
			$mime = 'application/octet-stream';
		}
		else
		{
			$mime = (is_array($mimes[$extension])) ? $mimes[$extension][0] : $mimes[$extension];
		}
	
		// Generate the server headers
		if (strstr($_SERVER['HTTP_USER_AGENT'], "MSIE"))
		{
			header('Content-Type: "'.$mime.'"');
			header('Content-Disposition: attachment; filename="'.iconv('utf-8', 'big5', $filename).'"');
			header('Expires: 0');
			header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
			header("Content-Transfer-Encoding: binary");
			header('Pragma: public');
			header("Content-Length: ".strlen($data));
		}
		else
		{
			header('Content-Type: "'.$mime.'"');
			header('Content-Disposition: attachment; filename="'.$filename.'"');
			header("Content-Transfer-Encoding: binary");
			header('Expires: 0');
			header('Pragma: no-cache');
			header("Content-Length: ".strlen($data));
		}
	
		exit($data);
	}
}
裡面利用了 iconv 把 utf-8 編碼,改成 big5,這樣在 IE 底下就不會出現問題了
header('Content-Disposition: attachment; filename="'.iconv('utf-8', 'big5', $filename).'"');

WordPress 2.8.5 Hardening Release

wordpress logo WordPress 在10月20號發出安全性的更新,大家快把 2.8.4 升級到 2.8.5,可以參考 WordPress 2.8.5: Hardening Release,這次更新最主要是在安全性的議題,Wordpress 團隊在過去幾個月已經開始針對 2.9 進行新功能上的開發,但是在 2.8 branch 的版本如果有安全性的漏洞,官方網站還是會提出修正的,以增加網站的安全。 底下是一些 Release 的安全性改良:
  • A fix for the Trackback Denial-of-Service attack that is currently being seen.
  • Removal of areas within the code where php code in variables was evaluated.
  • Switched the file upload functionality to be whitelisted for all users including Admins.
  • Retiring of the two importers of Tag data from old plugins
  • 假如您的網站最近有受到攻擊,那可以利用官網提供的弱點掃描工具 WordPress Exploit Scanner 來針對網站檔案以及資料庫內容文章,還有 comment 的資料表,以及所裝的 plugin 檔案進行漏洞檢查。 升級方式很容易,可以參考之前寫的 [wordpress] 快速升級 Upgrade 2.5.0 -> 2.5.1 for Linux & FreeBSD ps. FreeBSD commit 到 ports 裡面了,參考:ports/139812

    [jQuery] ThickBox 3.1 無限期停止支援維護

    Oceanic / 人生海海 看到這篇 thickbox 停止維護ThickBox jQuery plugin 裡面算是不錯用的工具,在網路上常常會聽到這個名詞,thickbox 作者也推薦了底下類似套件: 上面我還蠻推薦 fancybox 的,目前開發專案都以它為主,因為在瀏覽整頁圖片,我覺得效果不錯,剛剛去 try 了一下 colorbox,發覺這套也不錯用。在 fancybox 裡面設定 zoomSpeedIn 或者是 frameWidth 的值,就直接設定數字,不用在加上引號,不然會沒出現效果。
    $(document).ready(function() {
    	$("a.group").fancybox({
    		'zoomSpeedIn': 300, 
    		'zoomSpeedOut': 300
    	});
    });

    [講義]屏科大 PHP & MySQL 基礎教學投影片

    這次非常開心受到國立屏東科技大學資管系邀請講課,主題是 PHP & MySQL 基礎介紹,來聽課的學生,就是資管系大三跟碩一的新生,第一次到屏科大,沒想到學校大到很誇張阿,在校園裡面都是騎機車上課,不像在東華大學,只能騎外環道,剩下的只能騎腳踏車,屏科大其實蠻偏僻的,離屏東市有一段距離,大概騎摩托車要 20 分鐘,至少今天回家是被用摩托車送到屏東火車站,感覺屏東還蠻熱鬧的。

    這些資管的學生還蠻認真的,基礎實力還不錯,不過還是要在加強一下,看屏科大資管都在學 ASP.net,對於 html 有些基礎,大家好像都蠻喜歡拉物件,說這樣寫程式還蠻快的,不過 PHP 好像沒有類似工具,今天上課蠻順利的,至少大家都聽的懂,課堂作業都有寫出來,還蠻開心的,想聽聽大家對我上課的意見,看來只好等下次上課在問問看他們。

    [美食] 高雄樹太老 成功路上新分店 10/10 開幕

    1014193958 (by appleboy46) 這次跟同事跑去吃成功路跟青年路交叉口的樹太老日本定食,高雄還有另外一間在左營區裕誠路上面,但是我想說明一下這新開的這家分店,不知道是不是剛開幕還是員工沒有熟悉環境的關係,剛開始點菜,我們才六個人,結果服務人員幫我們點了7份套餐,真的是另我傻眼了,然後飲料還弄錯送上來給我們,奇怪,這些不是基本的功夫嗎?還是太緊張了阿,五個同事都是點蓋飯,可是蓋飯送來,感覺都乾乾的,味道跟醬汁都沒有融入到米飯裡面,醬汁也沒有什麼味道,所以在想是不是也是請新廚師的關係,好險我點的是綜合炸物,這一份要 220 元,這個還不錯吃 Continue reading “[美食] 高雄樹太老 成功路上新分店 10/10 開幕”

    利用 PHP MySQL Quota-Tool 來限制 MySQL 存取空間大小

    酷!學園發現這篇,有人問到如何限制 MySQL 的使用空間大小,我第一個想到的就是 Linux quota 指令限制大小,看回文有一篇利用 MySQL 來解決此問題:MySQL Quota-Tool,它利用了 MySQL INSERT 跟 CREATE 的權限控管,來達成限制,當資料庫大小超過您所設定的限制,系統就會拔除您的 INSERT 跟 CREATE 權限,如果沒有超過,就會將權限設定回去,基本上非常簡單,首先要先建立一個專屬控管每個資料庫的 database
    CREATE TABLE `Quota` (`Db` CHAR(64) NOT NULL, 
    `Limit` BIGINT NOT NULL,
    `Exceeded` ENUM('Y','N') DEFAULT 'N' NOT NULL,
    PRIMARY KEY (`Db`), UNIQUE (`Db`));
    Continue reading “利用 PHP MySQL Quota-Tool 來限制 MySQL 存取空間大小”

    [FreeBSD] 簡易架設 git Server,git 使用教學

    Git 是一套免費 open source 的版本控制軟體,另外還有很多套版本控制軟體,如:MercurialBazaarSubversionCVSPerforce, and Visual SourceSafe,其中 Mercurial 又是 Google Code Project Hosting 採用的版本控制系統,當然 google 也支援原本的 Subversion,Git 為現在很紅的一套版本控制 Software,底下紀錄在 FreeBSD 如何架設簡易 Git Server。 1. 利用 FreeBSD ports 安裝:
    cd /usr/ports/devel/git; make install clean
    2. 修改 /etc/rc.conf
    git_daemon_enable="YES"
    git_daemon_directory="/path/git/repo"
    git_daemon_flags="--export-all --syslog --enable=receive-pack --listen=192.168.1.1"
    注意 git_daemon_flags 可以加入 –verbose 參數,以方便 debug 3. 新增使用者 git
    pw user add git
    4. 啟動 git daemon
    /usr/local/etc/rc.d/git_daemon start
    您會發現多出 9418 連接埠,就是成功了 Continue reading “[FreeBSD] 簡易架設 git Server,git 使用教學”