1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > PHP交互MySQL 实现登录注册功能

PHP交互MySQL 实现登录注册功能

时间:2021-08-24 22:45:43

相关推荐

PHP交互MySQL 实现登录注册功能

目录

一,基础知识

建立、关闭与MySQL服务器的连接

1)连接指定的mysql服务器

2)连接错误时的提示

3)设置默认字符编码

4)选择特定的数据库mysqli_select_db ( $link , string $dbname);

5)关闭与mysql服务器的连接

二,实现登录注册表单

​登录

注册

一,基础知识

PHP与mysql交互_pipasound的博客-CSDN博客这篇文很好

建立、关闭与MySQL服务器的连接

1)连接指定的mysql服务器

$link=@mysqli_connect($host, $user, $password,$database,$port);

2)连接错误时的提示

int mysqli_connect_errno (); //返回最后一次连接调用的错误代码

string mysqli_connect_error (); //返回一个字符串描述的最后一次连接调用的错误代码

3)设置默认字符编码

mysqli_set_charset ( $link , string $charset )

4)选择特定的数据库mysqli_select_db ( $link , string $dbname);

5)关闭与mysql服务器的连接

mysqli_close ( $link );

<?phpheader('Content-type:text/html;charset=utf-8');//与MySQL数据库建立连接$link = @mysqli_connect('localhost', 'root' . '', 'login');//连接错误时的提示if (mysqli_connect_errno()) {exit(mysqli_connect_error());}//设置默认字符编码mysqli_set_charset($link, 'utf8');//选择特定的数据库mysqli_select_db($link, 'login');//做各种操作!//关闭与mysql服务器的连接mysqli_close($link);

二,实现登录注册表单

首先我在本地创建了一个login库 user表,用户名 密码字段,(我的表单就这两项)

首先这里登录和注册各写了HTML 和 PHP,下面来介绍

登录

有一个登录界面的话得先写个HTML(没有渲染很潦草)

<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>登良前端</title></head><body><div><form action="login.php" method="POST">用户名:<input type="text" name="username"><br>密 码: <input type="password" name="password"><br><input type="submit" value="登录"><br></form><div>还没有账号?<a href="register.html">马上注册</a></div></div></body></html>

紧接着就是php交互mysql啦用到上面的知识,与HTML通过form表单的action属性连接

<?phpheader('Content-type:text/html;charset=utf-8');//与MySQL数据库建立连接$link = @mysqli_connect('127.0.0.1', 'root' . '');//连接错误时的提示if (!$link) {die("连接失败: " . mysqli_connect_error());}//设置默认字符编码mysqli_set_charset($link, 'utf8');//选择特定的数据库mysqli_select_db($link, 'login');$username = $_POST['username'];$password = $_POST['password'];if ($username == '') {echo "<script>alert('请输入用户名')</script>";}if ($password == '') {echo "<script>alert('请输入密码')</script>";}//数据库查询语句,就是这样的查询方式存在着致命的SQL注入$sql = "select * from user where username='$username' and password='$password'";//查询结果保存在$res对象中$res = mysqli_query($link, $sql);//把$res转换成索引数组$row = mysqli_fetch_array($res, MYSQLI_NUM);// 数组不为空就显示登入成功if (!is_null($row)) {echo "登入成功";} else {echo "账号或密码错误<br>登录失败!";}//关闭与mysql服务器的连接mysqli_close($link);

随便输入用户名和密码,登录失败,因为数据库是空的嘛,没有注册

注册

因为没有注册嘛,直接通过马上注册的a链接访问到 register.html 也就是注册前端

<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>注册前端</title></head><body><div><form action="register.php" method="post"><p><span>用户名:<input type="text" name="username" required=""></span></p><p><span>密码:<input type="text" name="password" required=""></span></p><input type="reset" name=""><input type="submit" name="Submit" value="注册"></form><a href="login.html">已注册</a>></div></body></html>

注册php与mysql交互, 通过 insert into 插入数据,也就是所谓注册

<?phpheader('Content-type:text/html;charset=utf-8');$link = mysqli_connect('localhost', 'root', '');if (!$link) {die("连接失败" . mysqli_connect_error());}mysqli_set_charset($link, 'utf8');mysqli_select_db($link, 'login');$username = $_POST['username'];$password = $_POST['password'];$sql = "INSERT INTO user values('{$username}' , '{$password}')";$res = mysqli_query($link, $sql);if (!$res) {die("cannot insert " . mysqli_error($link));}echo "注册成功<br>";echo "<a href='login.html'>登录</a>";mysqli_close($link);

我们写入数据注册,成功执行

此时我们的user表里也插入了相应的数据 ,注册成功我们直接去登录

可以发现登录成功

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。