php的mysql操作可实现简单登录功能

1. 表单和请求

主要使用到**$_GET** 和 $_POST这两个超全局变量,分别对应两种请求

(1) 表单操作

<form action="use.php" method="get">
    账号: <input type="text" name="username" required><br>
    密码: <input type="password" name="password" required><br>
    性别: <input type="radio" name="sex" value="1" required><input type="radio" name="sex" value="2" required><br>
    爱好: <input type="checkbox" name="hobby[]" value="1">篮球 <input type="checkbox" name="hobby[]" value="2">足球 <input type="checkbox" name="hobby[]" value="3">羽毛球<br>
    地址: <input type="text" name="address" required><br>
    <input type="submit" value="登录">
</form>

(2) 网络请求

get和post请求时常用的两种HTTP请求方法,用于客户端从服务端发送和请求数据
get请求: 通过url网址的参数的形式将数据附加在url上发送给服务器,参数会出现在url的末尾,使用?将url和参数分隔开
post请求: 将数据作为请求的主体发送给服务器,而不是附加在url上,这使得post请求更适合发送铭感的数据和超长的数据

<?php
          var_dump($_GET);		// 通过$_GET获取get请求的参数
          echo "<br>";			//  可以根据表单获取的信息实现简单登录功能
          var_dump($_POST);		// 通过$_POST获取post请求的参数
          ?>

(3) $_REQUEST超全局变量

$_REQUEST变量包含了get和post和cookie的内容
$_server获取请求方式
**htmlspecialchars()**函数: 用于将字符串中的特殊字符转换为HTML实体,以避免子啊HTML文档中引起解析错误或安全漏洞

2. mysql数据库操作

mysqli和PDO操作数据库

1) mysqli连接操作

扩展mysqli: 配置php.ini文件 ,打开一下两个配置
在这里插入图片描述
在这里插入图片描述
配置phpstorm:
在这里插入图片描述
编写代码测试:

// 面向对象连接
<?php
$mysqli = new mysqli("localhost", "root", "xjy1234", "test");
if ($mysqli->connect_errno) {
    echo "连接失败: " . $mysqli->connect_error;
}
echo "连接成功";
$mysqli->close();
?>

// 面向过程连接
<?php
$localMysql = mysqli_connect("localhost", "root", "xjy1234", "test");
if (!$localMysql){
    echo "连接失败".mysqli_connect_error();
}
echo "连接成功";
// 关闭连接
mysqli_close($localMysql);
?>

2) 操作数据库

查询数据表

<?php
$mysqli = new mysqli("localhost", "root", "xjy1234", "test");
if ($mysqli->connect_errno) {
    echo "连接失败: " . $mysqli->connect_error;
}
$test = $mysqli->query("select * from user"); // 该query可以执行sql语句例如: 创建数据库表,数据的增删查改
print_r($test->fetch_all());
$mysqli->close();
?>

3) 预处理语句

解决sql注入

// 使用?作为占位符
$sql = "select * from user where username=? and password = ?";
$stmt = $conn->prepare($sql)
// s表示字符串,i表示整型,d表示double形,b表示二进制
$stmt = bind_param("ss",$username,$password)
$stmt = execute();		// 执行
// 获取返回结果
$result = $stmt->get_result()

$stmt->close()

4) pdo操作数据库

开启pdo
在这里插入图片描述

// 查看是否有
phpinfo();

在这里插入图片描述

5) 创建连接并执行查询语句

<?php
try {
    $PDO = new PDO("mysql:host=localhost;dbname=test", "root", "xjy1234");
    $PDO->setAttribute($PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING);
}catch (Exception $e){
    echo "sql连接错误".$e;
}
// 新增删除修改使用exec
$result = $PDO->query("select * from user");
print_r($result->fetchAll());
?>
  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值