当前位置:首页 > 代码 > 正文

php注册登录源代码(thinkphp注册登录源码)

admin 发布:2022-12-19 04:04 90


今天给各位分享php注册登录源代码的知识,其中也会对thinkphp注册登录源码进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

PHP来实现网站的注册和登录

说明: 对于小白学习php还是先下一个phpstudy吧 比较便捷许多且自带mysql

1、打开phpstudy并启动

2、打开mysql管理器并启动MYSQL-front 如图所示

1、建立一个名为register的html文件

2、建立一个名为registApi的php文件并刚建立的html相连

-拿到用户的字段和密码

-查询是否有重名现象(注:可以在php中嵌入html语句但一般写在外面如该图末尾所示)

-根据返回值判断是否成功

1、返回登录页面

2、创建一个名为loginApi的php文件并与刚刚的html相连接

3、若用户登录成功返回一个成功的界面所以创建一个success的html

求一用php写的注册和登录页面代码

reg.php文件

?php

header("Content-type:text/html;charset=utf-8");

if($_POST){

$dsn = 'mysql:dbname=1104javab;host=127.0.0.1';

$user = 'root';

$password = '';

try{

$pdo = new pdo($dsn,$user,$password,array(PDO::MYSQL_ATTR_INIT_COMMAND = 'SET NAMES \'UTF8\'')

);

}catch(Exception $e){

echo '错误'.$e-getmessage();

}

$name = $_POST['name'];

$pwd = md5($_POST['pwd']);

$sql = "insert into 表 (username,password) values ('$name','$pwd')";

$exec = $pdo-query($sql);

if($exec){

echo "scriptalert('成功');location.href='reg.html'/script";

}else{

echo "scriptalert('失败');location.href='reg.html'/script";

}

}

?

reg.html文件

form action='reg.php' method='post'

用户名:input type='text' name='name'

密码:input type='password' name='pwd'

input type='submit' value='submit'

/form

login.html文件

form action='reg.php' method='post'

用户名:input type='text' name='name'

密码:input type='password' name='pwd'

input type='submit' value='submit'

/form

login.php文件

header("Content-type:text/html;charset=utf-8");

if($_POST){

$dsn = 'mysql:dbname=1104javab;host=127.0.0.1';

$user = 'root';

$password = '';

try{

$pdo = new pdo($dsn,$user,$password,array(PDO::MYSQL_ATTR_INIT_COMMAND = 'SET NAMES \'UTF8\'')

);

}catch(Exception $e){

echo '错误'.$e-getmessage();

}

$name = $_POST['name'];

$pwd = $_POST['pwd'];

$sql = "select user_id from 表名 where username='$name' and password='$pwd'";

$stmt = $pdo-query($sql);

$info = $stmt-fetch(PDO::FETCH_ASSOC);

if($info){

echo "登录成功";

}else{

echo "登录失败";

}

}

大概这样

PHP-用户登录代码

真刁钻,

不会PHP的就别在这里瞎蹭!

快回去买一本php的书吧,php不难的,网上连视频教程都有。

我最多只会告诉你基本思路,代码我是决不会给懒到极点的人的!

特别准备:临时数据表;

从用户获取账号和密码 - 用查找密码md5 - 若不吻合,跳出错误页面,否则掠过 - 把密码用md5加密 - 与数据库md5码对比 - 若不吻合,跳出警告页面,否则掠过 - 在临时数据表中记录用户登录时间 - 引入成功目标页面

ps:

你问我为什么要用临时数据表?

那用作超时标记,也就是在下次访问时,若用户超时就把该用户踢出去...

这样的好处就是更安全,不用怕Cookies被黑,

但是会消耗一定的服务器资源......

ps*2:

你这个人真的太刁钻了,给人的感觉就是:装蒜+不要脸。

更可恶的就是你太爱摆架子了,

别以为你那个破200分就可以糊弄我们PHP工程师,

简直就是有辱我们智商!!

你现在知道为什么还得不到满意的答案吧,

因为你已经被真正的PHP工程师鄙视了!!!

我就是那种抱打不平(爆打不平)的人,看你不顺眼!

怎样用php做一个网站的登录注册

在php文件中嵌入html代码(包含表单,做好表单验证),提交到一个表单处理文件(php文件),处理文件里查询数据库,和用户提交的用户名,密码匹配,异常则登录失败,正常则登录成功,跳转页面(重定向或转发)。注册同理做好html页面,提交到注册处理页,先校验数据库是否存在用户名,有则返回注册页,提示注册失败,无则在数据库插入用户注册表单的信息。

php封装一个用户类,里面有登录注册方法,这个要怎么写

第一步:login.php

//登陆方法

public function login(){

//如果用户名和密码为空,则返回登陆页面

if(empty($_POST['username']) || empty($_POST['password'])){

$data['verifycode'] = rand(1000,9999);//生成一个四位数字的验证码

//将验证码放入session中,注意:参数是数组的格式

$this-session-set_userdata($data);

//注意:CI框架默认模板引擎解析的模板文件中变量不需要$符号

//$this-parser-parse("admin/login",$data);

//smarty模板变量赋值

$this-tp-assign("verifycode",$data['verifycode']);

//ci框架在模板文件中使用原生态的PHP语法输出数据

//$this-load-view('login',$data);//登陆页面,注意:参数2需要以数组的形式出现

//显示smarty模板引擎设定的模板文件

$this-tp-display("admin/login.php");

}else{

$username = isset($_POST['username'])!empty($_POST['username'])?trim($_POST['username']):'';//用户名

$password = isset($_POST['password'])!empty($_POST['password'])?trim($_POST['password']):'';//密码

$verifycode = isset($_POST['verifycode'])!empty($_POST['verifycode'])?trim($_POST['verifycode']):'';//验证码

//做验证码的校验

if($verifycode == $this-session-userdata('verifycode')){

//根据用户名及密码获取用户信息,注意:参数2是加密的密码

$user_info=$this-user_model-check_user_login($username,md5($password));

if($user_info['user_id'] 0){

//将用户id、username、password放入cookie中

//第一种设置cookie的方式:采用php原生态的方法设置的cookie的值

//setcookie("user_id",$user_info['user_id'],86500);

//setcookie("username",$user_info['username'],86500);

//setcookie("password",$user_info['password'],86500);

//echo $_COOKIE['username'];

//第二种设置cookie的方式:通过CI框架的input类库

$this-input-set_cookie("username",$user_info['username'],3600);

$this-input-set_cookie("password",$user_info['password'],3600);

$this-input-set_cookie("user_id",$user_info['user_id'],3600);

//echo $this-input-cookie("password");//适用于控制器

//echo $this-input-cookie("username");//适用于控制器

//echo $_COOKIE['username'];//在模型类中可以通过这种方式获取cookie值

//echo $_COOKIE['password'];//在模型类中可以通过这种方式获取cookie值

//第三种设置cookie的方式:通过CI框架的cookie_helper.php函数库文件

//这种方式不是很灵验,建议大家采取第二种方式即可

//set_cookie("username",$user_info['username'],3600);

//echo get_cookie("username");

//session登陆时使用:将用户名和用户id存入session中

//$data['username']=$user_info['username'];

//$data['user_id']=$user_info['user_id'];

//$this-session-set_userdata($data);

//跳转到指定页面

//注意:site_url()与base_url()的区别,前者带index.php,后者不带index.php

header("location:".site_url("index/index"));

}

}else{

//跳转到登陆页面

header("location:".site_url("common/login"));

}

}

}

}

第二步:User_model.php

//cookie登陆:检测用户是否登陆,如果cookie值失效,则返回false,如果cookie值未失效,则根据cookie中的用户名和密码从数据库中获取用户信息,如果能获取到用户信息,则返回查询到的用户信息,如果没有查询到用户信息,则返回0

public function is_login(){

//获取cookie中的值

if(empty($_COOKIE['username']) || empty($_COOKIE['password'])){

$user_info = false;

}else{

$user_info=$this-check_user_login($_COOKIE['username'],$_COOKIE['password']);

}

return $user_info;

}

//根据用户名及加密密码从数据库中获取用户信息,如果能获取到,则返回获取到的用户信息,否则返回false,注意:密码为加密密码

public function check_user_login($username,$password){

//这里大家要注意:$password为md5加密后的密码

//$this-db-query("select * from ");

//快捷查询类的使用:能为我们提供快速获取数据的方法

//此数组为查询条件

//注意:关联数组

$arr=array(

'username'=$username,//用户名

'password'=$password,//加密密码

'status'=1 //账户为开启状态

);

//在database.php文件中已经设置了数据表的前缀,所以此时数据表无需带前缀

$query = $this-db-get_where("users",$arr);

//返回二维数组

//$data=$query-result_array();

//返回一维数组

$user_info=$query-row_array();

if(!empty($user_info)){

return $user_info;

}else{

return false;

}

}

第三步:其它控制器:

public function __construct(){

//调用父类的构造函数

parent::__construct();

$this-load-library('tp'); //smarty模板解析类

$this-load-helper('url'); //url函数库文件

$this-load-model("user_model");//User_model模型类实例化对象

$this-cur_user=$this-user_model-is_login();

if($this-cur_user === false){

header("location:".site_url("common/login"));

}else{

//如果已经登陆,则重新设置cookie的有效期

$this-input-set_cookie("username",$this-cur_user['username'],3600);

$this-input-set_cookie("password",$this-cur_user['password'],3600);

$this-input-set_cookie("user_id",$this-cur_user['user_id'],3600);

}

$this-load-library('pagination');//分页类库

$this-load-model("role_model");//member_model模型类

$this-load-model("operation_model");//引用operation_model模型

$this-load-model("object_model");//引用object_model模型

$this-load-model("permission_model");//引用permission_model模型

}

php登录页面完整代码连接数据库

创建conn.php,连接数据库。

$dns = 'mysql:host=127.0.0.1;dbname=test';

$username = 'root';

$password = 'root';

// 1.连接数据库,创建PDO对象

$pdo = new PDO($dns,$username,$password);

创建login.html,登陆页面。

用户名

密 码

创建login.php,验证账号密码。

header("Content-Type: text/html; charset=utf8");

if(!isset($_POST["submit"])){

exit("错误执行");

}//检测是否有submit操作

include('conn.php');//链接数据库

$name = $_POST['name'];//post获得用户名表单值

$pwd = sha1($_POST['password']);//post获得用户密码单值

if ($name $pwd){//如果用户名和密码都不为空

$sql = "select * from user where username = '$name' and password='$pwd'";//检测数据库是否有对应的username和password的sql

$stmt = $pdo-prepare($sql);

$stmt-execute();

if($stmt-fetch(PDO::FETCH_BOUND)){//0 false 1 true

header("refresh:0;url=welcome.html");//如果成功跳转至welcome.html页面

exit;

}else{

echo "用户名或密码错误";

echo "

setTimeout(function(){window.location.href='login.html';},1000);

";//如果错误使用js 1秒后跳转到登录页面重试;

}

}else{//如果用户名或密码有空

echo "表单填写不完整";

echo "

setTimeout(function(){window.location.href='login.html';},1000);

";

//如果错误使用js 1秒后跳转到登录页面重试;

}

$pdo = null;

创建signup.html,注册页面

用户名:

密 码:

创建signup.php

header("Content-Type: text/html; charset=utf8");

if(!isset($_POST['submit'])){

exit("错误执行");

}//判断是否有submit操作

$name=$_POST['name'];//post获取表单里的name

$pwd = sha1($_POST['password']);//post获取表单里的password

include('conn.php');//链接数据库

$sql="insert into user(id,username,password) values (null,'$name','$pwd')";//向数据库插入表单传来的值的sql

$stmt = $pdo-prepare($sql);

$stmt-execute();

$stmt-fetch(PDO::FETCH_BOUND);

if (!$stmt){

die('Error: ' . $stmt-getMessage());//如果sql执行失败输出错误

}else{

echo "注册成功";//成功输出注册成功

}

$pdo = null;//关闭数据库

php注册登录源代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于thinkphp注册登录源码、php注册登录源代码的信息别忘了在本站进行查找喔。

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/2106.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载