PHP MySQL云登录表单
我有一个GoogleAppEngine应用程序(php网站),它连接了一个云SQL实例数据库。首先,我的app.yaml是:PHP MySQL云登录表单,php,mysql,sql,forms,login,Php,Mysql,Sql,Forms,Login,我有一个GoogleAppEngine应用程序(php网站),它连接了一个云SQL实例数据库。首先,我的app.yaml是: application: applicationid version: 1 runtime: php api_version: 1 handlers: - url: /(.*\.(gif|png|jpg|ico|js|css)) static_files: \1 upload: (.*\.(gif|png|jpg|ico|js|css)) - url: /dbc
application: applicationid
version: 1
runtime: php
api_version: 1
handlers:
- url: /(.*\.(gif|png|jpg|ico|js|css))
static_files: \1
upload: (.*\.(gif|png|jpg|ico|js|css))
- url: /dbconn.php
script: dbconn.php
- url: /logincheck.php
script: logincheck.php
- url: /loginsuccess.php
script: loginsuccess.php
- url: /register.php
script: register.php
- url: /sign.php
script: sign.php
- url: /viewcurrent.php
script: viewcurrent.php
- url: /.*
script: mainpage.php
我在主页上有以下登录表单:
<form method="post" enctype="application/x-www-form-urlencoded" action="logincheck.php" autocomplete="off" >
<table>
<tr>
<td><label for="username">Username</label></td>
<td><input type="text" name="username"></input></td>
</tr>
<tr>
<td><label for="password">Password</label></td>
<td><input name="password" type="password"></input></td>
</tr>
<tr>
<td><input type="submit" value="Submit"</td>
用户名
暗语
因此,假设用户登录后被发送到“loginsucess.php”。我在CloudSQL上设置了正确的数据库,并带有正确的字段,如用户名和密码。但是,当用户键入正确的用户名和密码时,页面只需重新加载完全相同的url即可:
而不是在“logincheck.php”中实际执行操作
你知道我做错了什么吗?请在数据库交互中添加一些错误检查,并在打开
后立即在文件顶部添加错误报告。你有没有收到任何错误?我刚刚重新排列了app.yaml文件,现在在logincheck.php中出现以下错误(显示的代码是整个文件,没有其他内容):警告:session_start():无法发送会话缓存限制器-第3行已发送标头警告:无法修改标头信息-第20行已发送标头在任何输出发生之前,必须启动会话。是否添加了其余的错误检查?我已设法修复第一个错误。但第二个错误仍然存在。由于标头,但我填写并发送表单后,需要将用户发送到正确的页面——
<?php
session_start();
require "dbconn.php";
$username = $_POST['username'];
$password = $_POST['password'];
$query = "SELECT * FROM students WHERE username = '".$username."'
AND password = '".$password."'";
$result = $connect->query($query);
$row = $result->fetch_assoc();
if ($row != null)
{
$_SESSION['username'] = $username;
header("Location: loginsuccess.php");
exit();
}
else
{
header("Location: wrongdetails.php?showerror=1");
exit();
}
?>