在HTML输入字段中显示自定义值格式

时间:2012-04-18 06:30:41

标签: html

我正在使用表单上的电话号码字段...

<label for="phone_no">Phone:</label>
<input name="phone_no" placeholder="(555)867-5309" type="tel" value="<?php print($_POST['phone_no']); ?>"/>

我希望这个数字是一个整数,所以我使用的是type =“tel”。是否可以“屏蔽”数据(即显示格式化而不实际更改基础数据)?

这样可以避免以编程方式更改它以显示它,然后改变它来解释它并将其存储在我的数据库中。

P.S。我还需要一个SSN字段的类似解决方案,所以请不要让你的答案太具体,以便它只适用于电话号码。

1 个答案:

答案 0 :(得分:1)

坦率地说,解决这个问题最简单的方法就是接受电话号码作为字符串,并在将数据库存储到数据库之前剥离任何非字母字符服务器端。如你所知,尝试在客户端处理它是值得的麻烦。

function remove_non_numeric($string) {
    return preg_replace('/\D/', '', $string)
}

如果它没有10个字符,或者你想要验证数据的精确度,那么你可以拒绝它。

显示它也不是非常困难,但如果将电话​​号码视为字符串,你会发现它更容易。

希望这有帮助。