用php实现简单登录系统
编辑:现在开始工作了,谢谢大家用php实现简单登录系统,php,html,mysql,Php,Html,Mysql,编辑:现在开始工作了,谢谢大家 在MySQL上创建了一些用户之后,我用php创建了一个简单的登录系统。但当我尝试登录时,无论输入什么,我都会进入一个完全空白的页面。 这是我的html <body> <div class="mainbox"> <h3 align="center">Log In</h3> <hr> <form role="form" class="form-ho
在MySQL上创建了一些用户之后,我用php创建了一个简单的登录系统。但当我尝试登录时,无论输入什么,我都会进入一个完全空白的页面。 这是我的html
<body>
<div class="mainbox">
<h3 align="center">Log In</h3>
<hr>
<form role="form" class="form-horizontal" method="POST" action="connectivity.php">
<div class="form-group">
<label for="Username">Username:</label>
<input type="text" class="form-control" name="username" size="40" placeholder="Enter Username">
</div>
<div class="form-group">
<label for="pwd">Password:</label>
<input type="password" class="form-control" name="pass" size="40" placeholder="Enter Password">
</div>
<button id="Submit" type="submit" name="submit" class="btn btn-default">Submit</button>
</form>
</div>
</body>
登录
用户名:
密码:
提交
这里是connectivity.php
<?php
define('DB_HOST', 'localhost');
define('DB_NAME', 'simplelogin');
define('DB_USER','root');
define('DB_PASSWORD','');
$con=mysql_connect(DB_HOST,DB_USER,DB_PASSWORD) or die("Failed to connect to MySQL: " . mysql_error());
$db=mysql_select_db(DB_NAME,$con) or die("Failed to connect to MySQL: " . mysql_error());
function SignIn()
{
session_start();
if(!empty($_POST['username']))
{
$query = mysql_query("SELECT * FROM UserName where userName = '$_POST[username]' AND pass = '$_POST[pass]'") or die(mysql_error());
$row = mysql_fetch_array($query) or die(mysql_error());
if(!empty($row['userName']) AND !empty($row['pass']))
{
$_SESSION['userName'] = $row['pass'];
echo "Successful login to user profile page!";
}
else
{
echo "Sorry, You have either entered a wrong Username or a wrong password. Please retry";
}
}
}
if(isset($_POST['submit']))
{
SignIn();
}
?>
您的表单有GET方法,但您的连接需要POST。
将表单上的方法更改为POST,这样会更好
此外,提交按钮上没有名称属性。
如果发布表单,它将查找名称属性,而不是ID。因此,它现在将永远不会进入您的函数。您还需要
<input id="Submit" type="submit" name="submit" class="btn btn-default">Submit</button>
提交
您应该定义按钮名称,如“提交”。。
尝试替换按钮代码,如下所示:
<button id="Submit" name="submit" type="submit" class="btn btn-default">Submit</button>
提交
它将像您的例外一样工作:-) 首先,您应该始终使用登录功能的POST
方法POST
方法是安全的,而不是GET
方法POST
不会通过URL公开信息。有关获取知识的更多信息,请参阅get和POST之间的区别
Second,您应该避免使用mysql.*
方法。有关信息,请访问SO
第三个,要提交您正在使用的表单,请登录时出错,不要使用GET方法登录。使用POST方法代替。避免使用mysql函数。我可以知道为什么我应该使用POST吗?我还在学php@Deepkakkar看起来您将密码以纯文本形式存储在数据库中。你应该因此被关进监狱;p至少使用MD5.good-one进行评论。。官员;)我怀疑这段代码是SQL注入的产物,我最需要第一位和第二位。非常感谢,非常有用的链接提供了更多信息。非常欢迎。随时准备帮助他人@Anjunadeep