我的网站有一个国家/地区的选项,因为不同国家/地区的网站布局不同。它是在会话的基础上运行的,如果没有设置会话,用户将被重定向到索引以选择一个国家,然后将从他最初来自的页面重定向。这是代码
我的session_check_client.php
文件,包含在除索引
<?php
session_start();
if(!isset($_SESSION['country']))
{
$actual_link = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
header("location:index.php?return_uri=$actual_link");
}
?>
现在发生的事情是,当我回到主页时,我想检查这个请求是否有一些返回参数,或者只是用户第一次访问了他的网站。我显示代码的两个国家有两个按钮。
function canada(){
$.ajax({
type: 'post',
url: 'ajax_country.php?country=canada',
success: function (data) {
var $_GET = <?php echo json_encode($_GET);?>;
if($_GET){
//window.location.href=$_GET['return_uri'];
alert($_GET['return_uri']);
}
else {
window.location.href = "home.php";
}
}
});
}
function us(){
$.ajax({
type: 'post',
url: 'ajax_country.php?country=us',
success: function (data) {
var $_GET = <?php echo json_encode($_GET);?>;
if($_GET){
//window.location.href=$_GET['return_uri'];
alert($_GET['return_uri']);
}
else {
window.location.href = "home.php";
}
}
});
}
现在问题是当我警告$_GET['return_uri']
的价值时,它给了我一个假值
例如我的return_uri值为http://localhost/interfold/products2.php?category=Aprons&id=57725599688
它实际上在索引页面的return_uri中显示了整个值,如http://localhost/interfold/products2.php?category=Aprons&id=57725599688
但是当使用javascript获取url值时,它只给我{{1}的值它缺少$和之后的部分!!!有什么建议吗?
答案 0 :(得分:0)
由于您只使用超全局变量,因此可以直接在您描述的函数上打印JS变量:
var actual_link = "<?php echo "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"; ?>";
function postCountry( country ){
$.ajax({
type: 'post',
url: 'ajax_country.php?country=' + country,
success: function (data) {
if(actual_link){
//window.location.href=actual_link;
alert(actual_link);
}
else {
window.location.href = "home.php";
}
}
});
}
postCountry('us');
postCountry('canada');