Malakomaha Posted April 9, 2009 Share Posted April 9, 2009 Привет всем.Есть проблема с номером телефона клиента.Что нужно: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 More sharing options...
Warsteiner Posted April 9, 2009 Share Posted April 9, 2009 1) В базе данных в таблице *_address надо изменить длину поля phone и phone_mobile (изначально тип поля - varchar(16)).2) В файле Classes/Validate.php начиная со строки 488 описывается регулярное выражение для проверки номера телефона. Я не очень силён в regexp, поэтому погуглите или спросите знающего человека. Link to comment Share on other sites More sharing options...
Warsteiner Posted April 9, 2009 Share Posted April 9, 2009 Кажись, удалось подобрать нужное выражение: return preg_match('/^[+0-9. ()-].*$/ui', $phoneNumber); Просто добавил точку после квадратных скобок (точка обозначает любой символ).Таким образом, номер телефона должен начинаться с цифры или символов +()-, после чего может идти всё, что угодно. Номер, начинающийся с буквы не пройдёт валидацию.Наверняка можно подобрать более правильное условие, но на первое время хотя бы это поможет. Link to comment Share on other sites More sharing options...
Malakomaha Posted April 9, 2009 Author Share Posted April 9, 2009 Warsteiner, спасибо.Перфекция! ;-) Link to comment Share on other sites More sharing options...
Recommended Posts