PHP检查MySQL数据库中的邮政编码

时间:2013-08-01 13:21:57

标签: php mysql

我正在尝试编写一个脚本来检查他们在HTML表单中输入的详细信息。

我的代码很好,但我已经意识到,如果他们以不同的格式输入邮政编码,那么数据库中会出现错误。

我只是采用POSTed邮政编码并更改格式,如果是这样,最好的方法是什么?键入一种格式?

例如,在数据库中有一行包含邮政编码SS9 5LY,但如果有人将其键入SS95LYss9 5ly则不匹配

3 个答案:

答案 0 :(得分:1)

首先,看看ZIP (POSTAL) Code Validation Regex。此外,尝试在验证中使用数据库记录。

答案 1 :(得分:0)

有数千种方法可以解决您的问题。

您可以使用masked input,您可以在使用之前验证输入文本 RegularExpression。还有很多其他人。

答案 2 :(得分:0)

您可以使用 preg_replace() 从输入中删除任何不需要的字符,将所有字符转换为 upper case ,最后在第三个字符后添加空格字符使用 substr()

$postcode = preg_replace("/[^a-zA-Z0-9]+/", "", $postcode);
$postcode = strtoupper($postcode);
$postcode = substr($postcode, 0, 3) . ' ' . substr($postcode, 3);