[PHP] 解決網址傳遞中文參數時所發生的亂碼問題

當我們使用IE系列的瀏覽器,在傳送中文參數時,往往會產生亂碼的問題。而身為一個程式設計師,必須要解決此問題,因此若是先將中文參數先給編碼後,再由瀏覽器去解碼,才是一個不錯的解決方案。

假設有一段程式碼如下:

<html>
<head>
<meta content='text/html; charset=UTF-8' http-equiv='Content-Type'/>
</head>
<body>

<?php
echo "school=" . $_GET['school']";
echo "schoolcode=" . $_GET['schoolcode'];
$school = "中和高中";
$URL = "test.php?school=".$school."&schoolcode=123";
?>

<p>
<a href=<?php echo $URL?>>中和高中</a>
</p>
</body>
</html>

 

 

那麼,當你用IE看時,很明顯地就知道他是亂碼。這時我們必須要將中文參數的地方先編碼過後再傳。這時,就得動用到「rawurlencode」這個函式了。

<?php
$school = "中和高中";
$school = rawurlencode($school);
?>

Read More

如何在 MySQL 中讓欄位依中文筆畫排序?

當資料庫是使用UTF-8編碼時,若有A欄位是中文,且要依此欄位進行排序,將會造成排序可能不如預期之現象。而資料庫的編碼格式是UTF-8,因此將會依UTF-8的編碼來排序,而不會依我們所預期的Big-5來排序。而在知道原因後,要解決此問題就變得相對容易,只要在排序時,將排序的欄位轉為BIG-5就可以依筆畫排序了。而這個轉換的利器,就是「CONVERT(欄位名稱 using big5)」。

舉例來說,若有一個資料表「test」中的欄位是這樣的內容:

idname
1國立大甲高中
2國立大里高中
3市立內湖高中
4國立中和高中

如果要依「name」來遞減排序,只要用下列程式碼就可以了。

SELECT * FROM `test` WHERE 1 order by CONVERT(`name` using big5) desc

 

[php] 將Unix Time 轉為易讀的時間格式

在PHP中,我們可以透過幾個簡單的時間函式,來讀取Unix的時間,而Unix的時間是從1970年1月1日開始算起的。而就目前已知著名程式的來說,著名的討論區程式Discuz在文章即是用Unix Time來做文章的記錄。

 

首先,先介紹怎樣讀取Unix Time,只要輸入以下的函式即可。

$time = time();

 

怎樣把Unix Time轉換成我們可讀的呢?這時就只要動用date()這個函式即可。其用法如下:

string date  ( string $format  [, int $timestamp  ] )

 

因此,若我們已有一個Unix的時間字串,要裝該字串轉為易讀的時間格式時,可以使用下列方法:

$time = 1234567890;
   $year = date("Y",$time);
   $month = date("m",$time);
   $day = date("d",$time);
   $hour = date("h",$time);
   $minute = date("i",$time);
   $second = date("s",$time);
   echo
"Unix時間:$time,可轉換成".$year."年".$month. "月" .  $day. "日".  $hour."時". $minute. "分". $second."秒。";

 

這個函式亦有其它參數,可見官方網站的說明。

網址退散!動手打造列印網頁的設定! (IE、Fiefox、Opera適用)

如果您有使用過瀏覽器列印網頁,在預設的設定下,通常都會很順利地連網址一起印出來。但若是「交作業」或特殊需要,不希望網址及網站標題列印出來,這時就得動手自我打造一番列印的設定囉!

 

而在目前各主要的瀏覽器,裡面大多有提供自訂列印的功能,以下就以IE6、IE8、Firefox 3.07、Opera 9.64的校調列印功能,做一個示範教學,希望讀者們在列印時,能夠適時隱藏不必要的資訊,以免給老闆看時,不幸被抓包囉!

 

(一) Internet Explorer 8:

STEP 1.
首先,選擇〔印表機〕→〔預覽列印〕。

Read More

StreamDrag ~ 藉由 YouTube 豐富資料讓喇叭高聲放歌

如果你有臨時想要聽的歌曲,或想要看的mv,大多人數的第一個直覺,就是上Youtube等串流網站去尋找。的確,在頻寬愈來愈大的現在,許多豐富且珍貴的影音資料,都可以在youtube中取得。也因此,有許多的網站,是圍繞著youtube來發展的,其中,Streamdrag就是一個成功的例子,透過此網站,你可以輕易地從youtube中搜尋任何你要聽,想要看的影片,然後再利用此網站內建的播放清單,來幫助你達到循環播放的功能。

 

當然,或許是由於版權的關係,此網站並未提供下載,以及內嵌至自己的網站的功能,但對於平常只是聽聽舊歌的我,已經是足夠了。而在此,就介紹一下如何使用此網站所提供的服務,讓你的電腦也能成為眾人欣羨的點唱機。

 

◎◎網站小檔案◎◎
網站名稱:StreamDrag
網站介面:英文
網站性質:免費
是否註冊:
網站網址:http://streamdrag.com/

 

Step 1.
打開StreamDrag的首頁,並按下〔Push Me〕。

 

Read More

Safari 4 ~ 挑戰視覺新享受,新功能實戰剖析

瀏覽器大戰儼然已經成為兵家戰場了!繼IE 8、Firefox 3.1等主流瀏覽器陸續推出測試版後,Safari這個蘋果牌瀏覽器當然也不遑多讓地推出Safari 4,而在這一版又有那一些新功能呢?且讓海芋透過最詳盡的圖文,開始為你介紹吧!

 

1.類似Google Chrome的使用介面,且簡單的分頁操作模式:

 

在這一版,Safari將介面改得跟Google Chrome差不多,當然這對於喜歡或習慣用Google Chrome的朋友,當然是一大福音囉!而若要操作分頁,只要按下分頁旁的新增及關閉分頁按鈕就可以了喔!

Read More

User Agent Switcher ~ 將 Firefox 偽裝成 Chrome、IE…等

網頁開發常常因為各瀏覽器的不同,而呈現不同的效果,透過 User Agent Switcher 這個 Firefox 套件,可以讓我們將瀏覽器偽裝成不同的瀏覽器!而你一定會覺得,為什麼我要使用 User Agent Switcher 呢?這個套件對我又有什麼幫忙嗎?因早期IE是雄霸天下,有些網站只有限IE的User Agent能閱讀,而這時我們的Firefox,就無法讀取那些網站的資料,這時你可以改一下User Agent,或許就能用Firefox讀取那些IE Only的網站了喔!而這並不代表,你可以很順利地欣賞IE Only網站的排版,及使用該網站的全部功能!

◎◎軟體小檔案◎◎
套件名稱:User Agent Switcher
套件介面:0.7.3
套件版本:繁體中文
套件性質:免費
支援瀏覽器:Firefox
套件下載:http://forum.jeasy.info/viewtopic.php?f=72&t=1876

 

Step 1.
點選功能表上的〔工具〕→〔附加元件〕→〔User Agent Switcher〕→〔選項〕,並點選〔使用者識別字串〕。

Read More

在 Godaddy 中使用真正的 301永久轉移網址 (Permanently Moved)?

常見的轉移網頁方式,有 使用meta 、使用header,以及使用 apache 的設定等。而在 godaddy 中,亦提供了301的永久轉移方式,和302的暫時轉移方式。雖然 godaddy 內建 301 轉移方法,但經過測試之後,發現會先跑兩次 302 的網址轉移,最後再跑一次 301 的網址轉移。而這會不會造成對搜尋引擎的影響呢?老實說我也不清楚,但是與其讓 godaddy 在那邊轉啊轉的,不如我們手動修改設定,讓我們的網站只要跑一次 301 的轉移方式。這樣,豈不是更好嗎?

而什麼是永久轉移和暫時轉移呢?簡單來說,永久轉移就是對搜尋引擎和其它來爬網頁的程式說:「嘿,我的網站搬家了,我的新家在…」,而暫時轉移則是對搜尋引擎和其它來爬網頁的程式說:「嘿,我最近可能不回家,我最近要住在…喔!」因此,大部份的搜尋引擎,都是比較喜歡永久轉移的方式。

而要到底要怎樣從Godaddy中,使用301的永久轉移呢?就從以下的文字慢慢看起吧!

Step 1.
首先,你必須透過Godaddy開立一個網站,而如果你有在 Godaddy 買網址的話,請放心,這是免費的服務。只要點選〔Hosting〕→〔My Host Account〕,並依指示建立一個新的免費網站即可,而網址當然就是你要轉移的域名。而在選主機的話,記得要選 Linux 的主機,關於申請的流程,請參閱「申请Godaddy免费空间及DNS设置 | 猫言猫语

Read More

淺談 Google Toolbar 5 For Firefox 新增的功能

Google Toolbar For Firefox」 在昨天無預警地推出了測試版,而其中一些功能有了改善和新增,就以海芋的觀察和試用,把他整理成下面文章,供大家做一個參考。

1.新增自動填入的功能:

自動填入可以讓您自動填入信用卡及個人資料,對於網路購物的人,非常方便。而且信用卡資料,還可以設定密碼保護。

Read More