阅读量:0
文章目录
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()); ?>