-1
我一直在遵循本指南(http://www.tutorialspoint.com/php/php_mysql_login.htm)来构建自定义Php & MySQL登录系统,但我无法让我的工作。MySQL Php登录系统
登录可能会失败,它会检查数据库,它验证用户是true还是false,但是一旦完成,它就不会重定向用户。它只是将它们带回到登录页面,并且不显示HTML,PHP或CSS元素。
我们已经附上两个核心的login.php & session.php文件
的login.php:
include("databaseconfig.php");
session_start();
if($_SERVER["REQUEST_METHOD"] == "POST") {
// username and password sent from form
$myusername = mysqli_real_escape_string($db,$_POST['username']);
$mypassword = mysqli_real_escape_string($db,$_POST['password']);
$sql = "SELECT * FROM pacientes WHERE nombre = '$myusername' and apellidos = '$mypassword'";
$result = mysqli_query($db,$sql);
$row = mysqli_fetch_array($result,MYSQLI_ASSOC);
$active = $row['active'];
$count = mysqli_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row
if($count == 1)
{
session_register("myusername");
$_SESSION['login_user'] = $myusername;
header("location: http://www.google.com/");
}
else {
$error = "Your Login Name or Password didn't work!";
}
}
session.php文件
include('databaseconfig.php');
session_start();
$user_check = $_SESSION['login_user'];
$ses_sql = mysqli_query($db,"SELECT nombre FROM pacientes WHERE nombre = '$user_check' ");
$row = mysqli_fetch_array($ses_sql,MYSQLI_ASSOC);
$login_session = $row['nombre'];
if(!isset($_SESSION['login_user'])){
header('location: www.google.co.uk');
}
我不知道为什么它的不会重定向到新页面。它甚至不会重定向到Google。就像我说的;
与数据库的连接有效, 代码检查数据库, 代码不会将用户发送到下一页。
该系统的用途是用户将登录并能够看到他们自己的配置文件。但目前我无法让系统重定向到任何页面。
我感谢您的支持,并希望您能提供帮助。
你确定它会在这个'如果($计数== 1)'? –
检查日志,可能你在'header'调用之前获得了alreay输出信息。另外,这是一个糟糕的教程,你应该使用准备好的语句。 –
从世界的哪个角度来看并不重要:在php或mysql中使用非英文变量名称是错误的。 – Peon