Jump to content

Проблема с номером телефона клиента


Recommended Posts

Привет всем.
Есть проблема с номером телефона клиента.

Что нужно:
1) Увеличить длину поля с 16 до 48 символов (например, для трех телеф. номеров)
Я поменял размер с 16 до 48 в \classes\Address.php 'phone' => 48, 'phone_mobile' => 48, но № тел. по-прежнему обрезается до 16 знаков.
2) Разрешить вводить буквы и знаки / \ для телефона вида 044/ 222-22-22 (внутр. 101)

Link to comment
Share on other sites

1) В базе данных в таблице *_address надо изменить длину поля phone и phone_mobile (изначально тип поля - varchar(16)).
2) В файле Classes/Validate.php начиная со строки 488 описывается регулярное выражение для проверки номера телефона. Я не очень силён в regexp, поэтому погуглите или спросите знающего человека.

Link to comment
Share on other sites

Кажись, удалось подобрать нужное выражение:

return preg_match('/^[+0-9. ()-].*$/ui', $phoneNumber);



Просто добавил точку после квадратных скобок (точка обозначает любой символ).
Таким образом, номер телефона должен начинаться с цифры или символов +()-, после чего может идти всё, что угодно. Номер, начинающийся с буквы не пройдёт валидацию.
Наверняка можно подобрать более правильное условие, но на первое время хотя бы это поможет.

Link to comment
Share on other sites

×
×
  • Create New...