zoukankan      html  css  js  c++  java
  • PHP与数据库基础-掌控安全福利课

    PHP与数据库基础-掌控安全福利课

    1:了解PHP

    PHP是什么?
    PHP能干什么?开发网站
    输出一个属于自己的第一个PHP程序。

    <?php
    echo 'Hello World';
    ?>
    

    image-20201006162816316数据库简介及SQL语法

    2:人人都会编程

    起床上班:
    打招呼 if 判断【需要预先设定】

    <?php
      $sex='男';
    	if($sex=='男'){
        echo'帅哥';
      }else{
        echo"妹妹";
      }
    ?>
    

    变量 运算 控制
    变量 比较运算 分支语句

    3:变量教学-变量就是个盒子

    计算机特点:运算飞快,忘的也飞快

    变量就是个盒子储存东西的

    4:运算符符号

    加减乘除取余比较大于等于小于等于不等于
    1+1=2

    $Wang = 100000;
    $Ma = 150000;
    echo $Ma + $Wang
    
    $A1 = 45;
    $A = $A1*15;
    echo $A
      
    $Fang =19;
    $Zheng =18;
    if($Fang >15){
    echo '方先生大于15岁';
    }
    else{echo '方先生不大于15岁';}
    

    5:控制结构

    顺序结构 分支语句 循环语句

    穿衣服 穿鞋子 刷牙洗脸 去上班

    $a = 1;
    $a = 2;
    
    分支语句  [选择] 
    $sex = '男生';
    if($sex == '男生')
    {echo 'Hello Boy';}
    else
    {echo 'Hello';}
    
    循环语句
    while()  不断的做某件事
    
    比如说我们现在在喝水 
    
    <?php
    $water = 1;
    while($water<6){
    echo '我喝了'.$water.'杯,服务员再给我杯水吧<br />';
    $water = $water +1;
    }
    echo '谢谢,我喝了'.$water.'杯水,不渴了';
    ?>
    

    6.你已经学会编程

    打印1-100
    打印1-100偶数 //偶数的定义 能被2整除
    遇到7的倍数 打印字符A
    遇到13的倍数 打印字符B

    7.字符串的处理

    1.字符串是什么 //字符串其实就是文本 代码
    2.单双引号的区别
    3.字符串处理函数

    单引号与双引号区别

    双引号会解析$后的内容

    image-20201006192425781

    image-20201006192506365

    strstr() 字符串的匹配和寻找
    str_replace() 替换

    echo 'echo';
    在安全中,很多时候黑客会输入一些恶意传参

    8.数组

    数组
    实际上是一排柜子
    存东西
    号码牌 标识

    号码牌 Key 键 [独一无二的不会重复]

    key键 value值

    9.制作一个网页

    如何获取GET|POST传参

    $_GET
    $_POST
    

    表单 HTML代码

    GET传参 POST传参

    什么是表单?

    表单在网页中主要负责数据采集功能。
    一个表单有三个基本组成部分:
    表单标签:这里面包含了处理表单数据所用动态脚本的URL以及数据提交到服务器的方法。
    表单域:包含了文本框、密码框、隐藏域、多行文本框、复选框、单选框、下拉选择框和文件上传框等。
    表单按钮:包括提交按钮、复位按钮和一般按钮;用于将数据传送到服务器上的动态脚本或者取消输入,还可以用表单按钮来控制其他定义了处理脚本的处理工作。

    使用场景:
    登录框
    搜索框
    留言框
    上传框
    ……(各种框)

    image-20201007162317650

    表单标签:
    <form action= "URL" method="GET/POST" >

    image-20201007162440200

    表单域:即表单组件,主要有
    文本框、密码框、隐藏域、复选框、单选框、文件上传框
    多行文本框(文本域)
    下拉选择框
    ……
    表单按钮:
    提交按钮
    复位按钮
    一般按钮

    image-20201007162548655

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
    </head>
    <body>
        <form action="1.php" method="GET">
            <input type="text" name="fenshu">
            <input type="submit" value="提交">
        </form>
    </body>
    </html>
    
    <?php
        header("Content-Type: text/html;charset=utf-8");
        $fenshu=$_REQUEST['fenshu'];
        if($fenshu>=60){
            echo '及格';
        }else{
            echo '不及格';
        }
    ?>
    

    10.初识数据库

    数据库是什么? // 数据 仓库
    它的结构是怎么样的? //库 表 字段 记录
    常见的数据库有哪些? //Mysql Access MSSQL Oracle

    数据库他是靠SQL语句
    X张表变成一个库

    11.数据库结构改变

    数据库结构改变

    show databases 查看有什么库

    show tables 查看有什么表

    use 库名 [进入库]

    desc 表名 查看表的结构

    建立数据库:Create database 库名

    删除数据库:Drop database 库名

    建立表: create table 表名(字段名 字段类型,字段名2 字段类型)

    删除数据表: Drop table 表名

    添加表里面的字段:Alter table 表名 add 字段名 字段类型

    删除表里面的字段 Alter table 表名 drop 字段名

    修改表内字段名:alter table 表名 change 旧字段名 新字段名 新类型;

    出现了不知道的东西,字段类型是什么?

    就是字段的格式,例如 int 数字 [只能存储数字]

    varchar 字符串 [能存储字符串] varchar(255) [能储存255个字符]

    12.增删改查 对记录

    插入数据(增):
    insert into 表名 values (值,值)

    insert into 表名(列名1,列名2) values(值1,值2)

    查询语句:
    select *from 表名 where 条件

    select 字段名 from 表名 where 条件
    修改数据:
    update 表名 set 列名 = 新列值 where 列名 = 旧列值

    update 表名 set 列名 = 新列值,列名2 = 新列值 where 列名 = 旧列值

    删除数据
    Delete from 表 where 列名=列值

    13.运算符和结果处理

    结果排序
    order by 1 排序第一个字段
    order by 字段名 排序写了字段名的这个字段
    默认升序 [asc]
    降序[desc]

    分页
    limit n,m
    limit 从n开始,取m行数据
    多行数据一起输出
    group_concat()

    模糊查询:
    like %a% 查询包含a的所有值
    like a% 查询a开头的所有值
    like %a 查询a结尾的所有值

    休眠函数
    sleep(2) 服务器进入摸鱼模式,故意拖2秒返回数据

    查询当前所在库
    select database();

    数学运算符号:
    + - * /
    他和PHP中没有啥区别

    逻辑运算符:
    and [满足两个条件才可以] 既要这样,又要那样
    or [满足一个条件就可以] 这个或那个都行
    not [取反]

    14.联合查询与子查询

    联合查询和子查询

    联合查询: union 将两个查询语句的结果一起输出 [重复的不输出]
    union all 将两个查询语句的结果一起输出 [重复也输出]
    需要满足条件,相同列数

    子查询:
    在原本的SQL语句中写小括号,优先执行一个查询语句

    select*from ssg where password=(select uname from nf where id=1); => select *from ssg where password=10

    15.PHP与数据库交互

    1.这里需要使用mysqli扩展
    2.mysqli_connect 连接数据库
    3.mysqli_select_db() 选择库
    4.mysqli_query() 执行sql语句

    正常网站:
    传参 -> PHP 处理 -> 去数据库存东西获取东西 -> 显示数据

    这里有很核心的一步是PHP能够操作数据库,这里就需要用到PHP的mysqli扩展
    这个扩展时操纵mysql数据库,自带的,你可以理解为他是一些函数,当你看到一个函数时mysqli_ 的适合一般都属于mysqli扩展。

    Mysqli扩展的核心就是PHP去操作数据库
    如何操作
    建立连接:

    mysqli_connect(链接地址,账号,密码,库名)
    =>    $conn=mysql_connect('localhost','root','root','fuli');
    mysqli_select_db(连接,库名)
    mysqli_select_db($conn,'fuli');
    mysqli_query(连接,执行SQL语句)
    $sql = insert into nf value(88,'PHP');
    mysqli_query($conn,$sql);
    

    16.完成登陆页面功能

    1.提取数据库内容
    2.进行判断
    3.完成页面
    上节课讲了操作数据库语句,但是很多适合我们需要取出数据库里的内容,如何输出?

    $result = mysqli_query($conn,$sql);
    mysqli_fetch_array($result);
    

    将数据库执行的结果转化为数组

    尝试整合之前所学的,做一个登陆页面

  • 相关阅读:
    左边的div导航根据右部div内容的高自动调整
    IE中在a标签里的图片会显示边框
    MVC4中视图获取控制器中返回的json格式数据
    Oracle 分页
    各个数据库中top 的表示方法
    AndroidPageObjectTest_TimeOutManagement.java
    AndroidSlideTest.java
    区分:AndroidDriver, iOSDriver, AppiumDriver and Remote WebDriver
    区分:WebElement, MobileElement, AndroidElement, and iosElement
    AndroidTest.java
  • 原文地址:https://www.cnblogs.com/cxynb/p/13787113.html
Copyright © 2011-2022 走看看