• DONATE to NULLED!
    Форуму и его команде можно помочь, мотивировать модераторов разделов.
    Помогите модератору этого раздела killoff лично.

Помощь Как подправить код?

Статус
В этой теме нельзя размещать новые ответы.

acelotuse

Профессор
Регистрация
31 Мар 2009
Сообщения
312
Реакции
37
DLE 8.0 MID
УСтановлен модуль доски объявлений. К сожалению выложить не могу. Хозяин против его публикации, так как писался по заказу. Боится распространения.
Проблема такая. Есть код на странице добавления объявления
Код:
 <tr>
<td width="140" height="25">Телефон:</td>
 <td width="360"><input type="text" name="tel" class="f_input" /></td>
</tr>
в это окошко вписывается контактный номер телефона подающего объявление. Но так как на сайт заходят не только опытные пользователи, но и начинающие, то зачастую пишут номер телефона с пробелами, вроде 8 999 888 77 66. Оказывается, в базе данных записанный с пробелами номер не сохраняется, а сохраняются только варианты 89998887766 или 8-999-888-77-66. ТАкже НЕ сохраняются номера записанные через +7 вместо первой восьмерки. Как итог - сотни объявлений без контактных данных. Как понимаете, это большой и большой минус. Конечно, есть выход, - оставлять телефон вместе с самим текстом объявления. Но все равно это не то. Подскажите пожалуйста, что нужно сделать, чтобы пробелы автоматически удалялись? Может ява скрипт какой прописать?
Спасибо заранее большое за помощь.
 
Вы предоставли визуальное оформление поля ввода номера.
А нужно его программную часть, а именно скрипт обработчик переменной, которая получает данные с ПОСТ tel.
 
Необходимо сделать парочку проверок в обрабодчике.
Например:
Код:
$tel = str_replace (" ", "", $tel);

Где $tel это переменная в которую приходят данные. Еще можно использовать validate библиотеку для jQuery, что бы проверять данные еще до передачи их обрабодчику.
 
просите автора модуля исправить ошибки, если вы платили за модуль деньги, то это не ваша работа его ошибки править.
 
скорее всего входящие данные проходят через intval() ... обратитесь к разработчику с просьбой заменить фильтрацию для данного поля
 
можно конечно ти простой вариант сделать на время
рядом с полем ввода написать что-то типа такого
поле ввода номера телефона
Пример ввода: 89222222222 (без пробелов)
 
или в инпут добавить значение по умолчанию: value="8-123-4567890"
 
а можно увидеть блок (ROW) с таблицы
т.е. telefon varchar или char, что он приставляет?
 
можно ещё юзать php функцию trim() какая убирает пробелы...
 
Поменяйте тип поля с intger (или какое-то там у вас числовое) на varchar(30) - должно хватить.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху