编程遇到的几个问题真奇怪,今天编码遇到好几个问题,把重要的几个记下来吧: 1。首先看下面一段代码: 浏览器会跳转到哪个页面? <A onclick=”javascript:window.location.href=’yahoo.com’ ” href=”#” >Click Me!</A> FireFox和IE还是会先执行页面JS脚本,但由于HREF指向的页面是”#”,所以浏览器会跳转到yahoo.com。 2。htmlspecialchars函数可以把引号等特殊字符转换成HTML entities, 如何从HTML entities 还原成相应的特殊字符呢? PHP5提供了一个函数htmlspecialchars_decode,可以做到.在PHP4环境下,只能通过下面的方法完成转换: 3。在构造http GET请求的字符串时,如果没有把参数的值用urlencode函数进行处理,可能会产生字符编码的问题。例如我构造了这样一个请求,http://yahoo.com/somePage.php?p=$string&u=…,变量$string使用UTF8编码的,而页面是GBK编码。当用户提交这样一个GET请求时,浏览器会把“p=”后面的字符按照GBK编码来处理,后果是可能会把$string的最后一个字符和紧跟着的字符&结合,而产生混乱的字符。 用urlencode处理$string字符串后,页面上的http GET请求链接就不会有问题。服务器端接受到参数p的值后,还得用urldecode函数对字符串进行解码。 |
|