3.后端基础
表单
表单在网页中主要负责数据采集功能,框一定是表单,eg:搜索框
由下述三部分组成
1、表单标签
告诉别人这是一个表单,承担:数据表该 给谁,怎么给
2、表单按钮
就是一个按键,有提交的功能
3、表单域
框 填写信息的地方

写一个表单

eg:写一个表单框,在框里输入内容,自动跳转到百度网页,并搜索该内容(代码从上往下第一行为表单标签、表单域、表单按钮)

结果得到

解释,wd是百度本身name的值

登录界面

页面自动填充密码:当表单域的type为password时,就会自动隐藏密码,但是并不是加密,只是让人看不见


我输入用户名、密码,传输到a.php里面
PHP代码
php是后端代码,但是php可以和html混淆使用,一般通过标识来区分
php的标识: php的四种标签风格
$_GET //获取GET传参
$_POST //获取POST传参
$_REQUEST //获取GET/POST传参
echo 1; //输出1
var_dump(1); //查看1的内容和数据类型
var_dump($_GET); //当你在浏览器中使用GET方法向服务器发送请求时,这些请求参数通常附加在URL的查询字符串中。例如,如果你访问http://example.com/?param1=value1¶m2=value2,这里的param1和param2就是通过GET方法发送的参数。使用var_dump($_GET);这个函数会返回一个关联数组,其中包含了所有通过GET方法发送的参数及其值。如果某个参数不存在,则该参数在返回的数组中不会出现。
变量
需要有一个变量名与变量值 eg: $a=1;
数组
多个变量可以成为数组

数据库
1、基本结构:库 表 字段(列,即表头) 数据(行)
2、PHP文件与数据库产生关系方式
使用管道来,mysqli_函数组

3、执行sql语句 
双引号:可以解析变量
单引号:不可以解析变量
\ :转义字符



=符号:

@符号:
实现注册、登录功能
https://blog.csdn.net/2401_83017604/article/details/138755713
index.html
`
用户名: 密 码: 还没有账号,注册一个
register.html
`
用户名: 密 码: 密 码: 邮 箱
<a href="./index.html">已经有账号了,去登录</a>
`
login.php
<?php
/* 连接数据库*/
$mysqli = new mysqli("localhost","root","root","poirot");
if($mysqli->connect_error){
die("数据库连接错误:". $mysqli->connect_error);
}
$pass_hash=password_hash($_POST["password"],PASSWORD_DEFAULT);
$username = $_POST["username"];
/* 判断用户是否点击了登录按钮*/
if(isset($_POST["login"])){
$sql = "SELECT pass_hash FROM login WHERE username='$username'";
$res =$mysqli->query($sql)->fetch_assoc();
/**登录验证 */
if($res){
if(password_verify($_POST["password"],$res["pass_hash"])){
echo "<script>alert('登录成功!') ;window.location.href='success.html';</script>";
}else{
echo "<script>alert('密码错误!');history.go(-1);</script>";
}
}else{
echo "<script>alert('用户不存在!');history.go(-1);</script>";
}
}
register.php
<?php
/* 判断用户名是否为空*/
if(empty($_POST["username"])){
die("用户名不能为空!");
}
/* 对密码进行规则验证*/
if(strlen($_POST["password"]) < 6){
die("密码不能小于6位!!");
}
/* 判断输入的两次密码是否一致*/
if($_POST["password"] !== $_POST["qpass"]){
die("两次输入的密码不一致!");
}
/* 验证邮箱的有效性*/
if(!filter_var($_POST["email"],FILTER_VALIDATE_EMAIL)){
die("请输入有效的邮箱格式!");
}
$password=$_POST["password"];
/* 对密码加密,保证数据的安全*/
$pass_hash=password_hash($_POST["password"],PASSWORD_DEFAULT);
/* 保存用户的数据*/
$username = $_POST["username"];
$mail = $_POST["email"];
/* 连接数据库*/
$mysqli = new mysqli("localhost","root","root","poirot");
if($mysqli->connect_error){
die("数据库连接错误:". $mysqli->connect_error);
}
/* 向数据表中传入用户的数据,方便后面对登录进行验证*/
if(isset($_POST["reg"])){
$sql = "INSERT INTO login (username,email,pass_hash,password) VALUES ('$username','$mail','$pass_hash','$password')";
$mysqli->query($sql);
if($mysqli->affected_rows > 0){
echo "<script>alert('注册成功!');history.go(-1);</script>";
}
else
echo "error";
}

浙公网安备 33010602011771号