大家可能都知道,或者你没有测到到仔细的发现,在网上下载回来的免费程序安全不说,我们暂时认为是安全的,因为由于淘宝top接口需要用到卖家的nick,这个nick有很多是中文。
在这种特殊的情况,我发现在不同浏览器的版本下和在不同的api php程序版本下,第一次打开商品展示页面是没有问题的,假如为了提高转化率,我们会提示网友刷新页面,但是很遗憾,刷新页面会造成错误,当然这也不一定,有些浏览器不会转化本来网址的编码,类似显示还是乱码符,有的会直接显示中文了.
经过测试,发现浏览器传递的是utf-8编码,那么刷新页面就会出错,实际网友浏览过后会收藏网址,因为可能需要比较才决定在哪里购买.那么有些浏览器转化为中文后,网友再次打开就错误了.
解决办法是修改程序:
error_reporting(0);
require_once 'function.php';
$nick = $_GET['nick'];
//$nick = urlencode("gb2312", urldecode("utf8", $nick));
$nick = urldecode("utf8", $nick);
上面的一段程序在view.php商品详细浏览页面,我添加的是$nick = urldecode("utf8", $nick);,添加后如果是中文就会处理,如果是中文的其他编码,也就是我们网站本来的连接url编码,打开是没有问题,$nick = urldecode("utf8", $nick);这句好像不影响,会抱错添加error_reporting(0);错误就不报了,不影响显示页面了。。
解决办法就是这样了,现在原先的url编码和中文输入同样有效,还须看效果是否有其他弊端。

Leave a comment