问题描述
||
我正在帮助建立一个网站,该网站将托管同一域中不同区域的内容。这样的例子:
www.example.com/us/
www.example.com/cn/
www.example.com/fr/
等等
我有一个系统,该系统询问用户他们想查看哪个站点(然后将其首选项存储在cookie中)。我的问题是:如果他们访问URL(例如:www.example.com/us/contact.php),并且他们的首选项cookie显示为/ fr /,我该如何最好地将其转发到www.example.com/fr/contact。 PHP的?
系统可以读取他们所在的站点区域以及他们的cookie说什么。因此,我们知道的信息将是:网站:美国和Cookie:FR。
我当时在考虑使用
$_SERVER[\'SCRIPT_NAME\']
并使用正则表达式从URL中获取\“ contact.php \”。然后使用header(\"Location: [url]\");
,但我知道如果已将任何文本传递给浏览器,则Location
不起作用...这会造成各种问题。
编辑:
这里的一些代码可以更清楚地说明问题:
<?php
// Get variable contents for $cookieRegion and $siteRegion
if($cookieRegion != \'\') { // If Cookie has been previous set
if($cookieRegion != $siteRegion) { // If Cookie pref clashes with site URL
// Forward to correct URL
}
}
else { ?>
<script type=\"text/javascript\">
$(document).ready(function(){
// Display modal window asking user preference
});
</script>
<?php } ?>
因此,<script>
标记将放置在文档开始之前……这不是一个好主意!
解决此问题的最佳方法是什么?
还是有更好的方法来处理我可以实现的整个问题?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)