скрыть полный номер и показать последние 4, но снять маску после отправки формы - PullRequest
2 голосов
/ 08 марта 2012

Мне нужно отобразить число (номер извлекается из БД) в поле ввода формы, так что только последние 4 цифры являются видимыми, остальные могут быть замаскированы как * или X или как угодно.

Я знаю, что последние 4 могут быть получены следующим образом:

$number=substr($number,-4,4);

Но когда я нажимаю кнопку отправки, форма проверяет поле ввода и проверяет, является ли число действительным числом определенного формата.Поэтому, когда я нажимаю на кнопку «Отправить», я все равно могу снять маскированные числа или сделать что-то подобное, что поможет мне проверить целое число.

<input type="text" name="no" value="<?php if(!empty($number)){ echo $number;} ?>">

Так что я не уверен, что делатьэтот?

Например.Если у меня есть номер 786661234. Его следует отобразить в форме как XXXXX1234.Когда я нажимаю и отправляю форму, она должна быть расшифрована и обновлена ​​в базе данных как 786661234

Ответы [ 2 ]

4 голосов
/ 03 августа 2013

Еще одна опция для маскировки чисел

<?php 
echo str_repeat("x", (strlen($number) - 4)).substr($number,-4,4);

?>

3 голосов
/ 10 марта 2012

Поместите свой номер в переменную $ number и получите результат:

<?php

$number =  "1122334455667788";
$masked =  str_pad(substr($number, -4), strlen($number), '*', STR_PAD_LEFT);
print $masked;

?>
...