使用PHP

表单

表单处理:

  • PHP超全局变量:$_GET 和 $ _POST 用于处理表单数据(form-data)

    < form > 表单标签

    ​ action属性:规定表单数据提交URL

    ​ method属性:规定提交时使用的HTTP方法(推荐POST)

    < input > 表单元素标签

    ​ type属性:动态定义标签框的类型

    1. <!DOCTYPE html>
    2. <html>
    3. <head>
    4. <title>表单处理</title>
    5. </head>
    6. <body>
    7. <form action="index.php" method="post">
    8. Name:<input type="text" name="name" />
    9. E-mail:<input type="text" name="E-mail" />
    10. <input type="submit" value="Yes" />
    11. </form>
    12. </body>
    13. </html>

    HTML文件中表单的数据会以post方式提交给php文件处理

  • 同样,PHP文件接受HTML页面表单提交的POST表单数据

    1. <!DOCTYPE html>
    2. <html>
    3. <head>
    4. <title>php处理表单</title>
    5. </head>
    6. <body>
    7. <?php
    8. echo $_POST["name"];
    9. echo "<br />";
    10. echo $_POST["E-mail"];
    11. ?>
    12. </body>
    13. </html>

    同理,也可以将post方法改为get方法提交表单给php文件进行表单处理

表单验证:

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  5. <title>表单处理</title>
  6. </head>
  7. <body>
  8. <form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
  9. 姓名:
  10. <input type="text" name="name" />
  11. <br />
  12. 邮箱:
  13. <input type="text" name="E-mail" />
  14. <br />
  15. 网址:
  16. <input type="text" name="url" />
  17. <br />
  18. 评论:
  19. <textarea rows="20px" cols="30px" name="txt"></textarea>
  20. <br />
  21. 性别:
  22. <input type="radio" value="男" name="sex" />
  23. <input type="radio" value="女" name="sex" />
  24. <br />
  25. <input type="submit" value="Yes" />
  26. </form>
  27. <?php
  28. function br() {
  29. echo "<br />";
  30. }
  31. echo $_POST["name"] ;
  32. br();
  33. echo $_POST["E-mail"];
  34. br();
  35. echo $_POST["url"];
  36. br();
  37. echo $_POST["txt"];
  38. br();
  39. echo $_POST["sex"];
  40. ?>
  41. </body>
  42. </html>

$_SERVER["PHP_SELF"]变量:

​ 超级全局变量,返回当前正在执行的脚本的文件名

htmlspecialchars()方法:

​ 将字符转为HTML实体

日期和时间处理:

获取日期和时间:date()

  • 语法:string date(string format[,int timestamp])
  • 参数:format为显示格式,timestamp为时间戳
参数值 说明
Y 4位数字完整表示的年份
m 数字表示的月份,有前导0
d 月份中的第几天,有前导零的2位数字
l(L的小写字母) 星期几,完整的文本格式
N 表示星期中的第几,取值1-7
w 星期中的第几天,0-6
z 年份中的第几天
W 年份中的第几周
H 小时,24小时格式,有前导零
i 有前导零的分钟数
s 秒数,有前导零
U 从Unix纪元到今的秒数
time()函数:
  • 返回当前时间的时间戳总秒数
  • 格式:int time(void)
microtime()函数:
  • 返回当前时间的时间戳和微秒
mktime()函数:
  • 同上

PHP学习—了解篇2的更多相关文章

  1. [Django]模型学习记录篇--基础

    模型学习记录篇,仅仅自己学习时做的记录!!! 实现模型变更的三个步骤: 修改你的模型(在models.py文件中). 运行python manage.py makemigrations ,为这些修改创 ...

  2. JDK源码学习--String篇(二) 关于String采用final修饰的思考

    JDK源码学习String篇中,有一处错误,String类用final[不能被改变的]修饰,而我却写成静态的,感谢CTO-淼淼的指正. 风一样的码农提出的String为何采用final的设计,阅读JD ...

  3. LINQ to XML LINQ学习第一篇

    LINQ to XML LINQ学习第一篇 1.LINQ to XML类 以下的代码演示了如何使用LINQ to XML来快速创建一个xml: public static void CreateDoc ...

  4. Entity Framework 学习中级篇1—EF支持复杂类型的实现

    本节,将介绍如何手动构造复杂类型(ComplexType)以及复杂类型的简单操作. 通常,复杂类型是指那些由几个简单的类型组合而成的类型.比如:一张Customer表,其中有FristName和Las ...

  5. 从.Net到Java学习第二篇——IDEA and start spring boot

    从.Net到Java学习第一篇——开篇 所谓工欲善其事,必先利其器,做java开发也一样,在比较了目前最流行的几个java IDE(eclipse,myeclipse.IDEA)之后,我果断选择IDE ...

  6. 从.Net到Java学习第一篇——开篇

    以前我常说,公司用什么技术我就学什么.可是对于java,我曾经一度以为“学java是不可能的,这辈子不可能学java的.”结果,一遇到公司转java,我就不得不跑路了,于是乎,回头一看N家公司交过社保 ...

  7. Sublime text 入门学习资源篇及其基本使用方法

    Sublime text 学习资源篇 史上最性感的编辑器-sublimetext,插件, 学习资源 官网 http://www.sublimetext.com/ 插件 https://packagec ...

  8. Entity Framework学习初级篇2

    Entity Framework 学习初级篇2--ObjectContext.ObjectQuery.ObjectStateEntry.ObjectStateManager类的介绍 本节,简单的介绍E ...

  9. Docker虚拟化实战学习——基础篇(转)

    Docker虚拟化实战学习——基础篇 2018年05月26日 02:17:24 北纬34度停留 阅读数:773更多 个人分类: Docker   Docker虚拟化实战和企业案例演练 深入剖析虚拟化技 ...

  10. Sublime Text:学习资源篇

    官网 http://www.sublimetext.com/ 插件 https://packagecontrol.io 教程 Sublime Text 全程指南 Sublime Text 2 入门及技 ...

随机推荐

  1. TCP 连接与 HTTP 请求的相关问题

    1.现代浏览器在与服务器建立了一个 TCP 连接后是否会在一个 HTTP 请求完成后断开?什么情况下会断开? 默认情况下建立 TCP 连接不会断开,只有在请求报头中声明 Connection: clo ...

  2. WebMvcConfigurationSupport 避坑指南

    通过返回WebMvcConfigurationSupport 的方式, 默认会覆盖 Spring boot的自动配置, 导致配置失效静态资源无法访问:但是在WebMvcConfigurationadp ...

  3. 浅析JNDI注入Bypass

    之前在Veracode的这篇博客中https://www.veracode.com/blog/research/exploiting-jndi-injections-java看到对于JDK 1.8.0 ...

  4. python实现智能语音天气预报

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 飞奔的帅帅 PS:如有需要Python学习资料的小伙伴可以加点击下 ...

  5. 分布式CAP与BASE理论

    参考: CAP和BASE理论 https://juejin.im/post/5d720e86f265da03cc08de74 https://github.com/changmingxie/tcc-t ...

  6. 剑指offer笔记面试题1----赋值运算符函数

    题目:如下为类型CMyString的声明,请为该类型添加赋值运算符函数. class CMyString{ public: CMyString(char* pData = nullptr); CMyS ...

  7. vue如何debugger源码

    在我们阅读vue源码时,一般引用vue的版本都是打包编译后的版本,无法debugger源码,要debugger源码,就需要给代码添加sourcemap,他存储源码与编译后代码的一种对应关系,详细内容可 ...

  8. Java学习笔记-Java文件操作流

     day03 输入输出流:读入写出  节点流:   有明确的来源和去向   往往对字节操作 节点流又叫低级流.字节流   处理流:  没有明确的来源和去向  往往对低级流或其他高级流进行操作,不能独立 ...

  9. JS 测试 Prototype

    JS 测试 Prototype 测试 JavaScript 框架库 - Prototype 引用 Prototype 如需测试 JavaScript 库,您需要在网页中引用它. 为了引用某个库,请使用 ...

  10. Python读字节某一位的值,设置某一位的值,二进制位操作

    Python读字节某一位的值,设置某一位的值,二进制位操作   在物联网实际应用项目开发中,为了提升性能,与设备端配合,往往最终使用的是二进制字节串方式进行的通信协议封装,更会把0和1.True和Fa ...