Php+;AJAX,如何隐藏文件名?
这是我的密码Php+;AJAX,如何隐藏文件名?,php,ajax,Php,Ajax,这是我的密码 getuser.php: ... while ($result = @mssql_fetch_assoc($data)) { foreach ($result as $item => $value) { if (is_null($value)) { $result[$item] = 'Empty'; } } foreach ($result
getuser.php
:
...
while ($result = @mssql_fetch_assoc($data)) {
foreach ($result as $item => $value) {
if (is_null($value)) {
$result[$item] = 'Empty';
}
}
foreach ($result as $result => $data) {
echo '' . $result . '' . '' . $data . '';
}
}
echo "";
}
mssql_close($con);
?>
function showUser(str) {
if (str=="") {
document.getElementById("result").innerHTML="";
return;
}
if (window.XMLHttpRequest) {
xmlhttp=new XMLHttpRequest();
} else {
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
document.getElementById("result").innerHTML=xmlhttp.responseText;
}
};
xmlhttp.open("GET","getchar.php?q="+str,true); xmlhttp.send();
}
index.php
:
...
while ($result = @mssql_fetch_assoc($data)) {
foreach ($result as $item => $value) {
if (is_null($value)) {
$result[$item] = 'Empty';
}
}
foreach ($result as $result => $data) {
echo '' . $result . '' . '' . $data . '';
}
}
echo "";
}
mssql_close($con);
?>
function showUser(str) {
if (str=="") {
document.getElementById("result").innerHTML="";
return;
}
if (window.XMLHttpRequest) {
xmlhttp=new XMLHttpRequest();
} else {
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
document.getElementById("result").innerHTML=xmlhttp.responseText;
}
};
xmlhttp.open("GET","getchar.php?q="+str,true); xmlhttp.send();
}
这是一个即时搜索,为了找到用户,它会在输入信息后立即获取他们的信息。
基本上我想知道,是否有一种方法可以在AJAX脚本(xml部分)中隐藏PHP页面(getuser.PHP)的文件名,这样人们就不能直接访问www.example.com/getuser.PHP?q=user
并获取信息。我是否需要添加&&语句来查看登录的人是否是管理员?很像
if(isset($_GET)) && isset($_SESSION['user']))
{
// do code
}
你不能
浏览器必须知道它将要获取的URL,并且找出浏览器正在请求的URL(如果没有其他内容,则通过查看调试器中的“网络”选项卡)非常简单。没有。但是您可以在PHP文件中检测AJAX请求,这样用户就无法在浏览器中导航到该页面。像这样:
if (!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && 'xmlhttprequest' == strtolower($_SERVER['HTTP_X_REQUESTED_WITH'])) {
// put code here
}
请添加换行符并正确缩进代码。如果您的代码可读,这里的更多成员将愿意提供帮助。我在许多网站的“网络”选项卡中进行了检查,但没有显示名称…-在这里,当我更改Category下拉选项时,文件名与current相同URL@sqlchild-当我更改类别下拉列表时,该站点发出了两个在Net选项卡中可见的HTTP请求: