资讯专栏INFORMATION COLUMN

php+mysql开发账号注册/登录/登陆后才可以查看/登陆后才可以下载功能

Arno / 1134人阅读

摘要:本人这次的案例就是做一个注册账号,登录账号,登陆后才可以查看某些资源的功能,其实就是简单的操作数据库。登录表单里客云登录你需要登陆后,才可以获取本站资源请输入账号请输入密码登陆没有账号立即注册登录处理页面。

几乎大部分的网站都有注册账号,登录系统,这是非常需要的一个模块。
本人这次的案例就是做一个注册账号,登录账号,登陆后才可以查看某些资源的功能,其实就是简单的php操作数据库。

首先讲注册账号。
注册账号的逻辑是,先有个表单,输入账号和密码,然后通过post方式提交给php页面处理(验证表单,例如是否为空,数据库是否存在一样的数据,是否为中文、英文、数字等),若没有问题,就插入数据库,若有问题就重新返回填写,除了输入账号密码,我还特别加了一个邀请码,需要输入正确的邀请码才可以注册账号,如果不想要邀请码这个,可以自行去掉,只是我自己的项目需要用这个。
下面是注册表单:
register.php




    
    
    
    
    
    
    
    里客云 - 注册
      
    
    
    



你需要注册后,才可以登录!

没有邀请码?立即获取

上面表单可以看出来表单提交后直接给regcheck.php进行处理,验证。

regcheck.php

alert("请不要留空!"); history.go(-1);";  
}  
else  
{  
if($yqm == "LiKeYuNbA2017") //邀请码
{  
mysql_connect("数据库地址","数据库账号","数据库密码");   //连接数据库  
mysql_select_db("数据库名");  //选择数据库  
mysql_query("SET NAMES "utf8"");//设定字符集  
$sql = "select username from 表名 where username = "$_POST[username]""; //SQL语句  
$result = mysql_query($sql);    //执行SQL语句  
$num = mysql_num_rows($result); //统计执行结果影响的行数  
if($num)    //如果已经存在该用户  
{  
echo "";  
}  
else //不存在当前注册用户名称  
{ 
$sql_insert = "insert into user (username,password,phone,address) values("$_POST[username]","$_POST[password]","","")";  
$res_insert = mysql_query($sql_insert);  
//$num_insert = mysql_num_rows($res_insert);  
if($res_insert)  
{  
echo "";  
}  
else  
{  
echo "";  
}  
}  
}  
else  
{  
echo "";  
}  
}  
}  
else  
{  
echo "";  
}  
?>  

上面就是整个注册的过程了。

接着就是登录了。
登录就是通过php进行数据库字段对比验证,若存在该字段则登录成功,不存在则无法登陆。

登录表单
login.php




    
    
    
    
    
              
    
    里客云 - 登录
      
    
    
    



你需要登陆后,才可以获取本站资源!

没有账号?立即注册


登录处理页面。在登录过程,会通过session_start()在浏览器储存登录行为。
logincheck.php

alert("用户名或密码不能为空"); history.go(-1);";  
        }  
        else  
        {  
            mysql_connect("数据库地址","账号","密码");   //连接数据库  
            mysql_select_db("数据库名");  //选择数据库  
            mysql_query("SET NAMES "utf8"");//设定字符集  
            $sql = "select username,password from 表名 where username = "$_POST[username]" and password = "$_POST[password]"";  
            $result = mysql_query($sql);  
            $num = mysql_num_rows($result);  
            if($num)  
            {  
                $row = mysql_fetch_array($result);  
                //验证通过后跳转 
                echo "";
            }  
            else  
            {  
                echo "";  
            }  
        }  
    }  
    else  
    {  
        echo "";  
    }
?>

这样就完成了登录。

下面就看看如何实现登录后才可以查看某些内容,很多网站都这样做,要登录后才可以查看或者下载一些资源的。

例如index.php是该网站首页,首页有一些内容,未登录之前是显示的,有一些内容需要登录后才可以显示。

就这么简单实现了。

既然有登录,那就要有退出登录。
exitlogin.php

window.location.href="index.php";";
?>

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/25588.html

相关文章

  • 使用LeanCloud服务做一站式Chrome插件开发——Favorite Image

    摘要:云存储问题,帐号系统,多端同步最开始只想做浏览器本地的存储,使用提供的存在本地就。具体解决方案云存储及帐号系统使用提供的存储服务解决。 0. 目录 要开发的是什么项目 1.1 想法开端 1.2 应该有什么功能? 开发需要解决的核心问题 具体解决方案 3.1 帐号系统 3.2 存储服务 3.3 使用`LeanEngine`做反防盗链中转接口 3.4 Chrome 插件实现 对去...

    JohnLui 评论0 收藏0
  • 在npm发布自己的包

    摘要:今天通过一个简单的列子来演示怎么在发布自己的包。发布包,在文件夹下,右键选择,输入如下命令就可发布成功,注意发布必须是登录状态下。这时你就可以在官网通过在搜索框中输入来查询到你刚才发布的包了。 今天通过一个简单的列子来演示怎么在npm发布自己的包。 你需要先下载安装node.js 发布包 1 新建个文件夹,这里命名为test110,,2 然后再在test110下新建一个lib文件夹。...

    lemanli 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<