本文内容:

  • 什么是表单?
  • 如何创建一个表单:
  • 接收并验证:
  • PHP和数据库交互

1,什么事表单?

  表单在网页中主要负责数据采集。

  表单由三部分组成:

    表单标签:这里面包含了处理表单数据所用动态脚本的URL,以及数据提交到服务器的方法。

    表单域:包含了文本框、密码框、隐藏域、多行文本、复选框、下拉选择框和文件上传框等。

    表单按钮:包括提交按钮、复位框和一般按钮:用于数据传送到服务器上的动态脚本或者取消输入,还可以用表单按钮来控制其他定义了处理脚本的处理工作。

  使用场景:

    登录框

    搜索框

    留言框

    上传框

    ……(各种框)

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

      action:数据提交到哪里。

      method:什么方式提交。

  表单域:即表单组件,主要有:文本框、密码框、隐藏域、复选框、单选框、文件上传框、多行文本框(文本域)。

补充:正常情况下,有框一定有表单,但是并不是一个框一个表单。

   表单其实就是一个HTML标签=>form表单。

   反斜杠:[转义字符]

2,如何创建一个表单?

  <meta charset="utf-8">
  <center>
  <h3>后台登录</h3>
  <form action="" method="POST">

  账号:<input type="text" name="a"><br>
  密码:<input type="password" name="b"><br>
  <input type="submit" value="登录"/>
  </form>
  </center>

3,接收并验证表单:

  验证表单:

    数据长度、数据类型、是否存在敏感内容:stripos()、strstr()

    stripos:查找字符串首次出现的位置(不区分大小写)。

    stristr:查找字符串首次出现的位置,并返回其余部分字符串。

要求 检测函数 说明
字符串不能为空 strlen() 判断字符串长度是否为0
整数不小于1,不大于100 <= >= 使用大于小于判断整数范围
数组元素3个 count() 判断数据元素个数
必须为数字 is_numeric() 如果为数字返回true否则返回false
必须是数组 is_arrary 数组返回true,非数组返回false
不能为空 is_null() 为空返回true,否则返回false
  isset() 若存在该变量且不能为null,则返回true,否则返回false

补充:SQL注入=>攻击核心就是输入的东西当做代码执行=>只要我们的传参在单引号内永远是字符串。

  防注入核心方法:

    正则匹配

    字符串匹配

4,PHP和数据库交互:

如下:举例,详细看一下第二章-5

<?php

$servername = "localhost";

$username = "username";

$password = "password";

// 创建连接

$conn = new mysqli($servername, $username, $password);

// 检测连接

if ($conn->connect_error) {

die("连接失败: " . $conn->connect_error);

}

echo "连接成功"; 3

?>

与君共勉:

自己喜欢的东西就不要问别人好不好看,

你的生活不会因为别人的话变好,

喜不喜欢,

决定权还是在自己。

网络安全从入门到精通 (第二章-6) 后端基础PHP—表单验证的更多相关文章

  1. 网络安全从入门到精通(第二章-3)后端基础SQL— MySQL高级查询与子查询

    本文内容: MySQL的基础查询语句 链接查询 联合查询 子查询 渗透测试常用函数 1,MySQL基础查询语句: select * from 表 order  by ASC/DESC; ASC:从小到 ...

  2. 网络安全从入门到精通 ( 第二章-5) 后端基础PHP—简介及基本函数-下

    本文内容: 循环语句 PHP获取表单信息 PHP操作Mysql语句 语法SQL注入 1,循环语句: for循环: 语法:for($x=0,$x<10;$x++){执行语句;} 注意:$x++,先 ...

  3. 网络安全从入门到精通 (第二章-4) 后端基础PHP—简介及基本函数-上

    本文内容 什么是PHP PHP的基础语法 运算符 条件分支语句 1,什么是PHP? PHP(超文本预处理器)是一种通用开源语言,(是动态语言中的一种,动态语言还有ASP,ASPX,JSP). PHP语 ...

  4. 网络安全从入门到精通 (第二章-2) 后端基础SQL—MySQL数据库简介及SQL语法

    本文内容: 什么是数据库 常见数据库 数据库的基本知识 基本SQL语法 1,什么是数据库? 数据库就是将大量数据保存起来,通过计算机加工,可以高效访问的数据聚合. 数据库就是长期存储在计算机内,有组织 ...

  5. 网络安全从入门到精通 (第二章-1) Web安全前端基础

    本文内容: 前端是什么? 前端代码 HTML CSS JS !!!醋成酒的小墨,促成就的小墨,小墨促成就,!!! 1,前端是什么? 网站一般用两部分组成,前端负责展示,后端负责处理请求. 2,前端代码 ...

  6. ExtJs 第二章,Ext.form.Basic表单操作

    1.认识Ext.form.Panel表单面板         Ext.form.field.CheckBox 复选框 checkboxfield Ext.form.CheckBoxGroup 复选框组 ...

  7. SaltStack 入门到精通第二篇:Salt-master配置文件详解

    SaltStack 入门到精通第二篇:Salt-master配置文件详解     转自(coocla):http://blog.coocla.org/301.html 原本想要重新翻译salt-mas ...

  8. ArcGIS for Desktop入门教程_第二章_Desktop简介 - ArcGIS知乎-新一代ArcGIS问答社区

    原文:ArcGIS for Desktop入门教程_第二章_Desktop简介 - ArcGIS知乎-新一代ArcGIS问答社区 1 Desktop简介 1.1 ArcGIS for Desktop ...

  9. 第二十二章 Django会话与表单验证

    第二十二章 Django会话与表单验证 第一课 模板回顾 1.基本操作 def func(req): return render(req,'index.html',{'val':[1,2,3...]} ...

随机推荐

  1. vue日常问题总结

    1.Vue项目启动后首页URL带的#该怎么去掉? vue-router中默认使用的是hash模式,URL中带有#号,我们可以用如下代码修改成history模式: import Vue from 'vu ...

  2. caffe之android移植

    获取Android手机CPU类型 ARM.ARMV7.NEON:http://blog.csdn.net/mengweiqi33/article/details/22796619 android nd ...

  3. python 有关堡垒机的那些事

    堡垒机为了保证系统或服务器的安全性,防止运维和开发人员胡乱操作服务器,导致不必要的损失,使用堡垒机来完成对运维和开发人员的授权.用户统一登录堡垒机账号来操作系统或服务器.堡垒机等于成了生产系统的SSO ...

  4. C++扬帆远航——6(三色球)

    /* * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:sanseqiu.cpp * 作者:常轩 * 完成日期:2016 ...

  5. ueditor富文本编辑器——上传图片按钮卡顿,响应慢

    最近负责将公司官网从静态网站改版成动态网站,方便公司推广营销人员修改增加文案,避免官网文案维护过于依赖技术人员.在做后台管理系统时用到了富文本编辑器Ueditor,因为公司有一个阿里云文件资源服务器, ...

  6. 【视频+图文】带你快速掌握带continue语句的双重for循环

    双重for循环掌握后,我们就一起来看看双重for循环的进阶内容一之带continue语句的双重for循环. 上期双重for循环[视频+图文]讲解传输门:点击这里可去小乔的哔哩哔哩观看for循环视频~ ...

  7. git指令-删除

    git指令-删除 添加一个新文件test.txt到Git并且提交: $ git add test.txt $ git commit -m "add test.txt" [maste ...

  8. Linux +Docker +Nginx 部署代理转发初探

    很多开发人员仅仅只会码代码,如果让开发人员部署一些深入点的东西,或者做负载均衡等,很多开发人员估计就懵逼了,作为一个专业的开发还需要懂一些基本的运维知识:虽然说在互联网行业中,中小企业都有一个牛逼的运 ...

  9. py基础之列表生成式

    列表生成式就是用一句语句生成一个列表,格式基本是:x for i in L下面是使用for循环迭代dict而生成的一个复杂表达式,将输出后的字符串保存为html文档可以生成一个表格d = {'adam ...

  10. SAP CRM Transaction处理中的权限控制

    当试图打开一个Opportunity时, 系统会进行如下一系列的权限检查: 1. 检查Authorization object CRM_ORD_OP: 此处会检查当前user的partner func ...