【问题标题】:Simple PHP form Validation and the validation symbols简单的 PHP 表单验证和验证符号
【发布时间】:2009-02-05 16:25:46
【问题描述】:

您好,我想在一些表单上使用一些基本的 php 验证(正则表达式),您是怎么做的?我只有一般的文本输入、用户名、密码和日期来验证。我也想知道如何检查空输入框。我已经在互联网上查看了这些东西,但我没有找到任何好的教程。

谢谢

【问题讨论】:

  • 验证符号是什么?
  • 你确定你已经看够了吗?使用正则表达式等的表单验证已经在整个网络上完成了。

标签: php regex validation


【解决方案1】:
  1. 阅读有关文本处理的 PHP.net 文档。
  2. 使用字符串方法和正则表达式为电子邮件类型、日期类型等创建一个函数,如果有效则返回true,否则返回false。
  3. 在提交表单时使用函数进行测试,并向用户显示相应的错误消息。

【讨论】:

  • 您几乎不应该编写自己的电子邮件验证正则表达式;适用的规范定义了广泛的允许格式,您可能会对技术上允许的格式感到惊讶。一个简单的网络搜索应该会产生预先存在的“详尽的”正则表达式,尽管很长。
  • 这取决于 - 对于我的业务逻辑电子邮件地址,例如某人@127.0.0.1 没有意义。
【解决方案2】:

您应该使用的另一个函数是 trim() 来清除所有空格的输入以进行验证 - 有些用户可能只输入一个空格作为数据。

【讨论】:

    【解决方案3】:

    有很多关于它的信息:php form。

    【讨论】:

      【解决方案4】:

      通常没有设置空输入框(我不确定它是否是标准行为),因此您可以执行以下操作。客户端验证在一般情况下很有用,但您无法确定这些值是如何到达服务器的,因此必须进行服务器端验证。

      if (isset($_POST['input_name'])) {
          echo $_POST['input_name'];
      }
      

      最安全的方法是处理尽可能少的用户输入。比如密码,把它转成hash,反正你不需要用纯文本来保护它。

      【讨论】:

        【解决方案5】:

        我在上一个 PHP 项目中一直使用 Zend Framework。在您的情况下,这可能有点矫枉过正,但Zend_Form 绝对值得一试。由于 Zend Framework 基本上是一组松散耦合的 API,您可以使用 Zend_Form 而无需深入了解 ZF 的 MVC 架构的核心。

        【讨论】:

          【解决方案6】:

          PHP 已内置 functions 来处理验证/过滤。 Here's 一个很好的例子,如果它们可供您使用的话。

          【讨论】:

            猜你喜欢
            • 2013-11-16
            • 1970-01-01
            • 2011-05-18
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-01-15
            • 2013-05-19
            • 2011-03-12
            相关资源
            最近更新 更多