我正在尝试开发简单登录测试网页的前端。基本上,如果登录成功或不成功,我的网站应该能够向用户显示。该消息应该是登录表单下方的文本。页面不应该重新启动,因此ajax。我必须为页面制作标记,使用ajax将数据发送到我的PHP文件,在那里我将我的信息卷曲到中间端。然后中间端将向我发送一个响应,我将其解析为一个字符串,并将字符串显示给用户。中间端将返回类似:{"message":"login failed","success":false}
的内容。我只需要在日志下面写一条消息,说login failed
。我的三个文件包含在下面:
的index.html
<!DOCTYPE html>
<html>
<head>
<title>Login Alpha</title>
</head>
<body>
<h1>Log In</h1>
<br>
<form name="alphalogin" method="post" action="front-connect.php" id="input_form">
<input type="text" name="user" id="user" placeholder="User..."><br>
<input type="password" name="password" id="password" placeholder="Password..."><br>
<input type="button" value="Log In" id="login">
</form>
<div id="responce"></div>
<script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
<script type="text/javascript" src="scripts.js"></script>
</body>
</html>
scripts.js中
$(document).ready(function () {
$("#login").on('click', function () {
var user = $("#user").val();
var password = $("#password").val();
if (user == "" || password == "")
alert('Please check inputs');
else {
$.ajax(
{
url: 'front-connect.php',
method: 'POST',
data: {
user: user,
password: password
},
success: function (responce) {
$("#responce").html(responce);
},
dataType: 'text'
});
}
});
});
前connect.php
<?php
$parmas = json_decode(file_get_contents('php://input'));
$user = $parmas->{'user'};
$password = $parmas->{'password'};
$post = array("user" => $user, "pass" => $password);
$transfer = json_encode($post);
$ctrl = curl_init();
curl_setopt($ctrl, CURLOPT_URL, "https://web.njit.edu/~bgb7/login/login.php");
curl_setopt($ctrl, CURLOPT_POST, TRUE);
curl_setopt($ctrl, CURLOPT_POSTFIELDS, $transfer);
curl_setopt($ctrl, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
curl_setopt($ctrl, CURLOPT_RETURNTRANSFER, TRUE);
$responce = curl_exec($ctrl);
$responce = json_decode($responce, 0);
curl_close($ctrl);
exit($responce);
?>
如果您想在网络服务器上看到它现在网站正在这里托管:https://web.njit.edu/~cfr5/cs490/
谢谢!
答案 0 :(得分:0)
类stdClass的对象无法在最后一行转换为字符串&#39;退出($ responce);&#39;