我有一个php页面(client.php)包含下面的脚本。该脚本执行ajax调用。成功后,它会执行另一个ajax调用。我遇到了第二个ajax调用的问题,它将request_uri
作为“sql / adminloademail.php”而不是父路径返回“/client.php”。如何告诉php回显出现在当前窗口URL中的父路径“/client.php”?
SCRIPT
$.ajax({
method:'POST',
url:'sql/adminaddclient.php',
data:formData,
contentType: false,
processData: false,
success: function(data){
$.ajax({
type:'POST',
url:'sql/adminloademail.php',
success: function(data){
$('#account_list').html(data);
}
});
}
});
PHP(adminloademail.php)
$page = parse_url(filter_input(INPUT_SERVER, 'REQUEST_URI' , FILTER_SANITIZE_STRING), PHP_URL_PATH);
echo $page;
答案 0 :(得分:0)
您可以将父网址设置为变量,然后使用数据参数发送它。
var parentUrl = window.location.href;
$.ajax({
type:'POST',
url:'sql/adminaddclient.php',
data:formData,
contentType: false,
processData: false,
success: function(data){
$.ajax({
type:'POST',
data:{"parentUrl":parentUrl},
url:'sql/adminloademail.php',
success: function(data){
$('#account_list').html(data);
}
});
}
});
您也可以尝试从标题中获取它。
$headers = apache_request_headers();
if (isset($headers['Referer'])) {
echo "Referer: " . $headers['Referer'];
}
由于PHP 5.4.0 apache_request_headers
也可以在FastCGI下使用。
由于PHP 5.5.7 apache_request_headers
也可在CLI服务器中使用。
http://php.net/manual/en/function.apache-request-headers.php