| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> PHP知识库 -> PHP 笔记8 表单传值 -> 正文阅读 |
|
[PHP知识库]PHP 笔记8 表单传值 |
目录 表单传值表单笔记:html .4 列表 表单_ThnPkm的博客-CSDN博客 表单传值概念:浏览器通过表单元素将用户的选择或者输入的数据提交给后台服务器语言. 为什么使用表单传值? 动态网站的特点就是后台根据用户的需求定制数据.所谓的"需求"就是用户通过当前的选择或者输入的数据信息,表单就是这些数据的承载者. GET传值:1. form表单
2. a标签
3. JS location对象的href属性
4.JS location对象的assign()方法
POST传值:只有一种: form表单
post跟get方式的区别:
php接受数据的三种方式$_GET,$_POST,$_REQUEST三个都是php超全局预定义数组,表单元素的"name"属性的值作为数组的下标,而value属性对应的值就是数组的元素值 $_GET方式:接收get方式提交的数据 $_POST方式::接收post方式提交的数据 $_REQUEST方式:接收post或get提交的所有数据 ?$_REQUEST所存储数据的内容:将$_GET和$_POST合并存储到一个数组 应避免get和post同时存在相同name属性,否则$_REQUEST中post会覆盖get的数据. php处理复选框数据复选框表单项的命名方式复选框:通常是将一类内容以同样(同名)的形式传递给后台,数据库存储通常是一个字段存储. 复选框的特点:选中才会提交.(没选中不会提交) 1. 在浏览器端,checkbox的name属性的值不论什么都会被浏览器毫无保留的提交. 2. 在php后台中,$_POST和$_GET都会对同名name属性进行覆盖(如果有重名) 解决方案:浏览器不识别[](浏览器不认为有特殊性),但是PHP认为[]有特殊性:系统自动认为该符号是数组的形式,所以php就会自动的将同名的但是带有[]的元素组合到一起形成一个数组. ? ?如上图代码,用户点击了篮球和乒乓球,后台php接受到POST数据.注意同名name属性须跟[],以便PHP系统自动将同名name属性归入1个数组中去.. 复选框数据的常见处理1. 单选按钮的数据处理radio button:多个选择项,但只能选1个. ①name属性使用同名即可,因为只能选中1个,所以不会造成重复name属性提交; ②后台接受数据也不用额外处理; ③数据库存储只需要1个字段存储普通数据即可(数字或者字符串) 如上图.如果单选按钮中至少必须让用户选择一项,则可设置默认选项,即指定属性checked="checked" ④php拿到数据后,组织sql直接存储到数据表即可 2. 多选按钮的数据处理①表单中那么属性使用数组:名字加[](一组复选框使用一个名字[]) ②后台接收到数据之后,是1个数组(数组不能存储到数据库), ③php需要将数组转换成指定格式的字符串:使用分隔符分隔每一个元素并且形成字符串. ④php组织sql存储到数据库中 ⑤补充:如果需要取出该数据,则可以使用explode函数,将该字符串变成数组.... 如上图代码,用户点击了复选框(name="hobby[]")里的篮球和足球选项,递交给后台php,.php代码首先获得hobby数组,然后将hobby数组每个元素用分隔符分隔,再合并成一个字符串$hobby_string(此时该用户的兴趣字符串是:篮球|足球).这时候就可以存入数据库中了. 假设我们从数据库里取出"兴趣"字段(字符串),使用explode将兴趣字符串分割为数组.,代码如下图. 复选框细节*复选框不选中就提交,就就不会产生该数据的数组(例如$_POST['hobby']),此时就会出错..因此在php接收复选框(单选框)数据的时候,应该先判断是否存在该数据,如果存在则接收,不存在则令其等于空数组,请使用如下代码.假如代码直接写成$hobby=$_POST['hobby'];就可能因为用户没点任何一项,不存在$_POST['hobby']而出错! 函数 isset():测变量是否设置 |
|
PHP知识库 最新文章 |
Laravel 下实现 Google 2fa 验证 |
UUCTF WP |
DASCTF10月 web |
XAMPP任意命令执行提升权限漏洞(CVE-2020- |
[GYCTF2020]Easyphp |
iwebsec靶场 代码执行关卡通关笔记 |
多个线程同步执行,多个线程依次执行,多个 |
php 没事记录下常用方法 (TP5.1) |
php之jwt |
2021-09-18 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/14 14:37:37- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |