沃梦达 / 编程问答 / php问题 / 正文

如何使用preg_match检查表单帖子中只包含多个字段上的字母?

How can I check a form POST only contains letters on multiple fields using preg_match?(如何使用preg_match检查表单帖子中只包含多个字段上的字母?)

本文介绍了如何使用preg_match检查表单帖子中只包含多个字段上的字母?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个当前的代码,它允许我检查注册表中的用户名字,以确保它只包含字母、空格和破折号。但是,如何启用多个字段(例如,姓氏也是)的检查。

/* Checks if the first name only includes letters, dashes or spaces */
   if(preg_match("/^[a-zA-Z -]+$/", $_POST['firstname']) == 0)
        $errors .="Your name must only include letters, dashes, or spaces.";

我尝试了以下选项,但似乎只选中其中一个,而不是两个都选中。

  if(preg_match("/^[a-zA-Z -]+$/", $_POST['firstname'], $_POST['lastname']) == 0)

还有:

if(preg_match("/^[a-zA-Z -]+$/", $_POST['firstname'] and $_POST['lastname']) == 0)

提前感谢您的建议。

推荐答案

由于这两个字段将使用相同的正则表达式进行验证,并且您不希望返回任何关于哪一个(如果有)失败的具体反馈,因此只需连接这两个字符串。

if(preg_match("/^[a-zA-Z -]+$/", $_POST['firstname'] . $_POST['lastname']) == 0)

这篇关于如何使用preg_match检查表单帖子中只包含多个字段上的字母?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:如何使用preg_match检查表单帖子中只包含多个字段上的字母?

基础教程推荐