用PHP创建登录页面 [英] creating login page with PHP

查看:109
本文介绍了用PHP创建登录页面的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正尝试使用一些PHP代码创建登录表单的网站,当用户尝试使用用户名和密码登录时,页面将显示欢迎....。在用户尝试将用户名和密码网站显示为空白的时刻,没有任何内容。此外,我已经创建了带有用户名和密码的mysql数据库。



我的主页index.html中的登录表单:

 < form id =formmethod =postaction =login.php> 
< label for =用户名>用户名:< / label>
< input type =textname =usernamesize =15required =required/>
< label for =password>密码:< / label>
< input type =passwordname =passwordsize =15required =required/>
< input id =loginButtontype =submitname =submitvalue =LOGIN/>
< / form>

这是我的php页面login.php:

 <?php 

session_start();

$ host =localhost;
$ username =*******;
$ password =*******;
$ db_name =********;
$ tbl_name =users;

$ conn = mysql_connect($ host,$ username,$ password)或die(Can not connect);
mysql_select_db($ db_name,$ conn)或死(无法连接);

$ myusername = $ _POST ['username'];
$ mypassword = $ _POST ['password'];

$ myusername = stripslashes($ myusername);
$ mypassword = stripslashes($ mypassword);
$ myusername = mysql_real_escape_string($ myusername);
$ mypassword = mysql_real_escape_string($ mypassword);

$ sql =SELECT * FROM $ tbl_name WHERE username ='$ myusername'and password ='$ mypassword';
$ result = mysql_query($ sql);

$ count = mysql_num_rows($ result);

if($ count == 1){
session_register(username);
session_register(password);
标题(location:page1.html);
} else {
echo错误的用户名或密码;
}

?>

和我的欢迎页面 - page1.html我已经包含了一些php代码:

 <?php 

session_start();
if(!session_is_registered(username)){
header(location:index.html);
}

?>


解决方案

首先...不要将密码存储在会话。这只是要求麻烦。

  session_register(password); 

其次.... session_register()是不推荐使用的函数,不应再使用。 / p>

反而...

  $ _SESSION ['username'] = $ myusername; 

第三....

 标题( 位置:page1.html);如果您希望会话跨页面工作,则应该是 PHP 文件。    

  header(location:page1.php); 

然后在那个PHP页面中做...

 在session_start(); 
if(!isset($ _ SESSION ['username'])){
header(location:index.php);
} else {
//显示用户登录的用户
}


I am trying to create website with login form with some PHP code, were user will try to login with username and password and page will then show "welcome....". AT the moment when user try to put username and password website that shows up is blank, nothing is on it. Also i already have created mysql database with username and password.

this login form on my main page index.html:

<form id="form" method="post" action="login.php">
    <label for="username">Username:</label>
    <input type="text" name="username" size="15" required="required" />
    <label for="password">Password:</label>
    <input type="password" name="password" size="15" required="required" />
    <input id="loginButton" type="submit" name="submit" value="LOGIN" />
</form>

and this is my php page login.php:

<?php

session_start();

$host = "localhost";
$username = "*******";
$password = "*******";
$db_name = "********";
$tbl_name = "users";

$conn = mysql_connect("$host", "$username", "$password") or die("Cannot connect");
mysql_select_db("$db_name", $conn) or die("Cannot connect");

$myusername = $_POST['username'];
$mypassword = $_POST['password'];

$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);

$sql = "SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";
$result = mysql_query($sql);

$count = mysql_num_rows($result);

if ($count == 1) {
    session_register("username");
    session_register("password");
    header("location:page1.html");
} else {
    echo "Wrong Username or Password";
}

?>

and on my welcome page - page1.html i have included some php code:

<?php

session_start();
if(!session_is_registered(username)){
    header("location:index.html");
}

?>

解决方案

First off...dont store the password in the session. Thats just asking for trouble.

session_register("password");

Secondly....session_register() is a deprecated function and shouldn't be used anymore.

Instead do...

     $_SESSION['username'] = $myusername;

Third....

header("location:page1.html");

Should be a PHP file if you want sessions to work across pages..

header("location:page1.php");

Then in that PHP page do...

session_start();
if(!isset($_SESSION['username'])){
   header("location:index.php");
} else {
     // Display stuff to logged in user
}

这篇关于用PHP创建登录页面的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆