Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用php实现简单登录系统_Php_Html_Mysql - Fatal编程技术网

用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