編程遇到的幾個問題真奇怪,今天編碼遇到好幾個問題,把重要的幾個記下來吧: 1。首先看下面一段代碼: 瀏覽器會跳轉(zhuǎn)到哪個頁面? <A onclick=”javascript:window.location.href=’yahoo.com’ ” href=”#” >Click Me!</A> FireFox和IE還是會先執(zhí)行頁面JS腳本,但由于HREF指向的頁面是”#”,所以瀏覽器會跳轉(zhuǎn)到y(tǒng)ahoo.com。 2。htmlspecialchars函數(shù)可以把引號等特殊字符轉(zhuǎn)換成HTML entities, 如何從HTML entities 還原成相應的特殊字符呢? PHP5提供了一個函數(shù)htmlspecialchars_decode,可以做到.在PHP4環(huán)境下,只能通過下面的方法完成轉(zhuǎn)換: 3。在構(gòu)造http GET請求的字符串時,如果沒有把參數(shù)的值用urlencode函數(shù)進行處理,可能會產(chǎn)生字符編碼的問題。例如我構(gòu)造了這樣一個請求,http://yahoo.com/somePage.php?p=$string&u=…,變量$string使用UTF8編碼的,而頁面是GBK編碼。當用戶提交這樣一個GET請求時,瀏覽器會把“p=”后面的字符按照GBK編碼來處理,后果是可能會把$string的最后一個字符和緊跟著的字符&結(jié)合,而產(chǎn)生混亂的字符。 用urlencode處理$string字符串后,頁面上的http GET請求鏈接就不會有問題。服務(wù)器端接受到參數(shù)p的值后,還得用urldecode函數(shù)對字符串進行解碼。 |
|