韌館-LearnHouse

mysql 中文亂碼解決方案

內容來源:LINK     (此篇文章僅供站長備份參考用,固為加密文章) 

*mysql中文亂碼的原因

mysql 會出現中文亂碼的原因不外乎下列幾點:

-mysql server本身設定問題,例如還停留在 latin1

-mysql table 的語系設定問題(包含 character 與 collation)

-客戶端程式(例如 php) 的連線語系設定問題

mysql 4.1 及之後的版本在語系方面增加了許多功能,它可以設定語系的層次從最底層的 server, database 到單一 table, column, connection 都可以設定,而除了語系之外,還可以指定搭配不同的 collation(校對),所以組合百百種,只要一個錯了就難逃亂碼的命運。

進phpmyadmin找到可輸入 sql query的畫面,然後鍵入:
show variables like '%character%';
這句話會顯示目前資料庫使用的語系設定,一般國外的網站或剛裝好的 mysql 4.1預設都是 latin-1。

[新增資料庫]
如果你熟悉 phpmyadmin 的操作,在畫面上就可以選擇建立新 database 要用的語系,
charset 請選擇 UTF-8 Unicode (utf8)
collation 請選擇 utf8_general_ci (ci 代表 case insensitve 大小寫沒差)

[修改資料庫]
改 database語系,同樣在 phpmyadmin 的query畫面鍵入下面兩行:
alter database myblog
character set utf8;

前面曾經提過,mysql的語系設定是多層次的,前面我們把database與table的語系都設定正確,但程式與mysql連線時的語系則是由 connection 來決定,這部份就要使用程式碼
mysql_query("SET NAMES 'utf8'");
這句話會同時設定 client, results, connection三者使用的語系為 utf-8。

最後檢查是否全部改成 utf-8
show variables like '%character%';

此時你應該會看到大部份欄位都是utf-8了,除了 server 這項之外,如果是用別人的 hosting 主機,就沒法兒改這部份,但平常做案子時大部份都可以直接控管mysql,此時就可以用 my.ini 設定:

[mysqld]
default-character-set=utf8
告訴mysql server啟動時要用 utf-8即可。

*mysql中文亂碼必勝解決法
1、mysql 啟動時會讀取一個預設的 config 檔,一般名稱為 my.ini,而它會到下列兩位置去尋找這個檔案:
C:windowsmy.ini 也就是作業系統的安裝目錄,也有可能是 C:winntmy.ini
C::my.cnf 也就是 C disk 的根目錄

2、my.ini 裏的內容為:
[mysqld]
default-character-set=utf8

[client]
default-character-set=utf8
init_c

其 中 mysqld 是指定 server 啟動時要用的語系,但如果這裏設定為 utf8 可能會讓許多英文軟體不開心,例如 osCommerce/mediaWiki/wordpress/drupal/gregarius,所以這裏建議設成 latin1。要使用utf8中文的人,只要記得建資料庫時將它設成utf8,讓中文程式正確的使用 utf8 與它溝通即可。

下 面的 client 則是設定當 client 連線時要使用什麼語系,但可惜的是這個設定不是每個 client 都會鳥它,基本上只有 mysql 自已家的程式,例如 mysql.exe, mysqld.exe, mysqladmin.exe 或是 MySQL Control Center 這種程式會去讀取這個設定檔然後改用 utf8 連線。

所以通常會用一個獨立的檔案來處理 mysql connection的設定,例如:

PHP:

<?
//database connection details.
$host = "localhost";
$link = mysql_connect($host, "xxx", "xxx");
mysql_query("SET NAMES 'utf8'");
mysql_select_db("your_table_name_here", $link);
?>

請注意在 mysql_connect後第五行的地方有加上一個 "set names 'utf8' "的指令,告訴mysql 這個 connection 之後的連線內容都要使用utf8,經過這樣設定後,通常就可以解決大部份問題。

從這裏也可以推想得知,如果你有用某種 custom connection pooling 機制,就要記得在每次建立新的 connection 後立即設定為 utf8。

2007年10 月 posted by admin in Linux and have No Comments

無懼股災!基金投資人4成賺錢

更新日期:2007/09/29 17:58 記者:張中昌

你想賺錢嗎?八月初美國次級房貸風暴震撼全球,使得MSCI全球股價指數下跌逾10%,台股跌幅也近15%,令不少投資人哀聲不斷。但是根據一項調查,還是有近4成基金投資人不受影響,照樣賺錢,而其中更有近82%的人表明,就是利用定時定額來進行投資。

今年7月份投信投顧公會統計,定期定額投資的國人已經有超過50萬,不但創下歷史新高,未來還有繼續增加趨勢。

根據Smart智富月刊的調查,現在雖然有基金投資經驗的民眾只有約29.1%,仍低於股票一族,但是兩者間差距僅剩3.2%,顯示越來越多民眾都改以風險性較低的基金做為投資標的。

此外,在這些有基金投資經驗的民眾當中,有高達76.9%的人選擇定時定額的方式,會單筆投資基金的民眾只有23.1%。

至於定期定額的投資人每個月會固定投資多少錢?調查結果則顯示,以每月投資5,000元以下的比例佔最多,約為36.8%,不過整體平均起來,每月扣款金額可達11,258元。

而以單筆方式申購基金的民眾,則以總額在10.1萬元到50萬元者佔最多,約有34.5%,不過還是有6.3%的「大戶」投資金額超過200萬元。

Smart智富月刊表示,經過10多年的基金教育推廣,現在民眾在投資基金觀念與行為上,出現了「定時定額投資多於單筆投資」的好現象,因為採取定時定額投資,賺錢機率是比較高的。

像今年的八月股災,沒受到影響繼續賺錢的人中,有近82%的比例就是使用定時定額投資法,單筆申購且賺錢的人只佔不到17%。

不過Smart智富月刊也指出,一般人對於基金投資還是有4個觀念必須調整,才有辦法像「基金達人」們一樣,獲得長時間的利潤。

需 要調整的4個觀念包括:一、近7成民眾以淨值高低而非以績效來衡量是否買進某檔基金;二、有4成民眾會死守賠錢基金,不願停損賣掉;三、有5成民眾在停利 出場後就會更換基金標的,等於變相懲罰績效好的基金;四、近3成民眾習慣購買特定公司基金,而非比較績效等指標後決定投資標的。

其實單筆投資需要有精準判斷,但相信絕大多數投資人都不具備這樣的能力。因此想要追求長期穩健獲利,定期定額投資法還是最佳的方法。

2007年9 月 posted by admin in 投資理財 and have No Comments

突破學校防火牆限制

大學的同學跟我抱怨說他們他們政戰學校很多網頁都鎖,即時通訊也都不能用

就算沒鎖80 port可以找到web msn,但很多web IM性質的也幾乎被鎖了

所以要我架設破解的平台,當然這篇文章其實不適合寫的

因為這方法可適用於企業與學校等任何有防火牆限制

學校或企業會有如此限制就是有他的安全考量

不過網管人員也不是省油的燈,假使限制只能用公司的proxy或只能瀏覽網頁的80 443等port

這樣這個方法還是無用武之地,不過道高一尺魔高一丈,其實還是有破解的方法

但我在這就不提供怎麼做了,只講述如何利用SOCKS來突破學校防火牆 Read more...

2007年9 月 posted by admin in 程式&軟體 and have Comments (4)

[新聞]Eclipse基金會釋出PHP開發工具1.0版

文/陳曉莉 (編譯) 2007-09-19

PHP Development Tools(PDT)1.0是Eclipse基金會第一個針對PHP開發社群的專案,預計將有助於擴大Eclipse社群。

 
Eclipse基金會在周二(9/18)釋出Eclipse平台的PHP Development Tools(PDT)1.0版,提供所有開發PHP所需的元件。

 

這是Eclipse基金會第一個針對PHP開發社群的專案,Eclipse基金會總經理Mike Milinkovich表示,PDT 1.0版可讓450萬名的PHP開發人員開始使用以Eclipse為基礎的工具,同時也能擴大Eclipse社群。目前Eclipse社群約有230萬名 開發人員。

現在採用PDT的開發人員可以使用逾1400個Eclipse外掛程式。該基金會說明,有許多PHP開發人員使用多種不同的開發語言,例如 Java或C/C++等,另外他們在建置豐富網路應用程式時也使用了像是原始碼管理(source code management,SCM)等工具來測試,而PDF則讓開發人員透過Eclipse整合所有這些工具到單一的開發環境中。

Eclipse PDT專案負責人暨Zend Technologies產品經理Yossi Leon說,從今年初開放下載迄今,下載PDT的次數已超過30萬。

PDT 1.0的功能包括突顯語法、智慧代碼支援、代碼摺疊等編輯工具;整合Eclipse專案模式,允許利用File and Project Outline Views及新的PHP Explorer View進行檢查;支援PHP程式碼除錯;可讓開發人員及獨立軟體開發商利用PDT創造新的PHP導向開發人員工具的各種架構及APIs等。

受到PDT 1.0出爐影響最大的可能是專門銷售PHP開發工具的Zend,不過Zend不但積極參與該計畫,同時也不認為自己的產品與PDT是競爭的。 InfoWorld引用Yossi Leon的說法表示,PDT較像是一個架構,提供很好的編輯器及除錯工具,但除此之外它應該要有更多的功能,Zend打算以PDT為基礎,在自家的商業商 品中加入更多功能及外掛程式。(編譯/陳曉莉)

2007年9 月 posted by admin in 新聞報報 and have No Comments

奇聞!吃月餅竟吃出紙條......

中秋節的來臨在這裡祝福大家中秋節快樂

一連串的假期在今天也要收尾聲了,我也回到宿舍準備明天的課程

這次的中秋節過的比較特別,也遇到很多特別的事

只有一個感覺,就是大家都長大了,都要朝著自己的目標邁進

所以和大家一起共勉,加油吧!!未來就靠我們了!!

今天凌晨回到家,看到高中大學好朋友的MSN訊息,非常的特別

2007/9/25 上午 12:13:24 光軍-月圓人團圓,過完人變圓說:http://203.194.245.88/wish/wish.asp?usrName=%A3%A1%A3%A1%A8G&submit=%C0%F2%A8%FA%C2%E0%B5o%A6a%A7%7D

點進去一看,原來是道賀中秋節快樂的網址

怎麼個特別法呢??原來只要輸入好友的名字,就有特別的事情會發生

大家一起玩玩看吧!!=>請點這裡 

2007年9 月 posted by admin in 趣味一下 and have Comments (2)

2007台灣設計博覽會

今天無意中在我自己部落格的廣告看到這則消息「快樂生活,釋FUN創意」

原來是第五屆的台灣設計博覽會要在我們這裡的蕭龍文化區舉辦

這張是這次活動的串聯貼紙,聽說活動開始會輪播會場花絮

哈哈!!既然是在我的地盤上,當然要給他推銷一下啦!!歡迎大家來玩呦!!

來的時候也別忘了來找我,如果你們不知道路,我可以帶你們去逛

這屆應該也是不用錢的,去年是免費參觀

恩!!最近比較忙,寫部落格通常也不會寫太久,所以就短短的寫到這裡 

以下內容為活動網頁轉載 

一年一度的「台灣設計博覽會」已堂堂邁入第5個年頭了。5年來,台灣設計博覽會在台北華山藝文特區、宜蘭羅東運動公園、高雄衛武營、等地,留下了設計與美學的足跡與印記,在每年的夏末秋初時分,與來自全台灣愛好創意、設計與美學的朋友,一同體驗設計產(作)品所帶來的新奇體驗與魔力。

  今年9月29日,2007第5屆「台灣設計博覽會」將在再 次與大家見面。今年的主題是「快樂生活 釋FUN創意」,我們要邀請您帶著輕鬆愉快的心情,來到充滿熱情活力的南台灣,一同進入快樂、新奇、繽紛的設計新樂園,讓您親身體驗神奇的美學魔力為生活 所創造的趣味與品味。密切注意,千萬別錯過了今年您和「台灣設計博覽會」的約會喔! 

2007年9 月 posted by admin in 生活日記 and have No Comments