我有一个希望简单的问题需要解决。我们正在尝试使用简单的密码保护我们网站安全部分内的链接。基本上,在我们传统安全的网站内,我们有一个动态驱动的记录表,带有一个挂锁图标,可以在锁定和解锁之间来回切换。该站点的这一部分传统上是安全的,只有授权用户才能访问。因此,我们只想实现这种不太安全的静态PHP密码身份验证系统,该系统允许用户锁定和解锁此表中的记录。基本上,一旦他们在表中创建了一个记录,他们就可以选择点击锁定图标(这显然会锁定记录),但只有那些带有简单硬编码引脚的人才能锁定一个记录(即所有用户都可以锁定,但并非所有用户都可以解锁)。因此我尝试编写一个简单的PHP + AJAX引脚系统。我的其他管理员坚持服务器端解决方案。他拒绝使用基本的javascript,我同意。它仍然需要合理的安全性。这是我到目前为止所拥有的,但我对AJAX非常新(分钟),显然有些东西不起作用。这是一个名为pin.php的文件(基本上该页面提交给自己)
UNLOCK链接模拟用户点击以解锁记录的锁定图标。
<html>
<script src="js/jquery.js" type="text/javascript"></script>
<?php
$static_password = "1234";
if(isset($_POST['data'])){
$submit_password = $_POST['data'];
if($submit_password == $static_password){
echo "Do the unlock stuff";
}
else{
echo "Sorry try again";
}
}
?>
<body>
<h2>Simple AJAX PHP Example</h2>
<a href="javascript:Unlock();">UNLOCK</a>
<script>
function Unlock() {
var pin=prompt("You must enter pin to unlock");
$.ajax(
{
url: 'pin.php',
type: 'POST',
dataType: 'text',
data: {data : pin},
success: function(response)
{
console.log(response);
}
});
}
</script>
</body>
</html>
非常感谢任何帮助。感谢
答案 0 :(得分:3)
这对我来说符合预期:
<?php
$static_password = "1234";
if(isset($_POST['data'])){
$submit_password = $_POST['data'];
if($submit_password == $static_password){
die("Do the unlock stuff");
}
else{
die("Sorry try again");
}
}
?><!DOCTYPE html><html>
<head>
<script src="jquery-3.1.0.min.js" type="text/javascript"></script>
</head>
<body>
<h2>Simple AJAX PHP Example</h2>
<a href="javascript:Unlock();">UNLOCK</a>
<script>
function Unlock() {
var pin=prompt("You must enter pin to unlock");
$.ajax(
{
url: 'pin.php',
type: 'POST',
dataType: 'text',
data: {data : pin},
success: function(response)
{
console.log(response);
}
});
}
</script>
</body>
</html>