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

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

Статус
В этой теме нельзя размещать новые ответы.
Спасибо за ваши отзывы! Отвечаю на вопросы.
Вы предоставли визуальное оформление поля ввода номера.
А нужно его программную часть, а именно скрипт обработчик переменной, которая получает данные с ПОСТ tel.
Вы абсолютно правы. Просто я надеялся на то, что проблему можно решить добавлением неких кодов именно в эту часть. Ниже сброшу код.
просите автора модуля исправить ошибки, если вы платили за модуль деньги, то это не ваша работа его ошибки править.
К автому претензий нет, он хорошо постарался, более того, удовлетворил наши капризы уже после всех наших церемоний покупки-тестирования. К сожалению, сейчас пропал, и на связь не выходит.
Поменяйте тип поля с intger (или какое-то там у вас числовое) на varchar(30) - должно хватить.
Там изначально стоит varchar 40
или в инпут добавить значение по умолчанию: value="8-123-4567890"
Пример ввода: 89222222222 (без пробелов)
Согласитесь, это не решение. Если человек внимательно всмотриться, он конечно, поймет, что так и надо писать. Но если он зашел и быстро строчит объявление, то ему будет не до этого. Тем более, что value у меня стоит прочерк, да и надпись Телефон(писать без пробелов) стоит.
Где $tel это переменная в которую приходят данные. Еще можно использовать validate библиотеку для jQuery, что бы проверять данные еще до передачи их обрабодчику.
А вот это кажется может подойти. Если я не ошибаюсь, вот кусок кода из файла, который отвечает за проверку написанного объявления:
Код:
	//telefon
	//$tel = intval($_POST['tel']);
	preg_match('/^[0-9\x28\x29\x2D]*$/',$_POST['tel'],$m);
	$tel=$m[0];
Как и куда вставлять поправку?:bc:
 
Никто не отзовется? :(
Временно решил проблему через команду с регулярным выражением (кажется так называется?) pattern="^\d{11}" , которая не позволяет в окне ввести что-то другое, помимо 11 цифр (из которых и состоит телефонный номер). В принципе, решение мне самому нравится, но все равно, нужно бы исправить так, чтобы введенный с пробелами номер становился без пробелов.
 
Тебе же уже подсказали, используй фукцию замены.
Например:
$tel = str_replace (" ", "", $tel);
надеюсь расписывать ненадо что она делает?
 
Никто не отзовется? :(
Временно решил проблему через команду с регулярным выражением (кажется так называется?) pattern="^\d{11}" , которая не позволяет в окне ввести что-то другое, помимо 11 цифр (из которых и состоит телефонный номер). В принципе, решение мне самому нравится, но все равно, нужно бы исправить так, чтобы введенный с пробелами номер становился без пробелов.
используй функцию trim() и не парся..)
 
Никто не отзовется? :(
Временно решил проблему через команду с регулярным выражением (кажется так называется?) pattern="^\d{11}" , которая не позволяет в окне ввести что-то другое, помимо 11 цифр (из которых и состоит телефонный номер). В принципе, решение мне самому нравится, но все равно, нужно бы исправить так, чтобы введенный с пробелами номер становился без пробелов.

Попробуй заменить регулярное выражение на:

PHP:
$tel = preg_replace("/[^0-9]/i", '', $_POST['tel']);

выбирает только одни цифры... Помоему так проще (Я себе так icq сделал...)
 
тут вполне можно и без регулярки обойтись.
$tel = str_replace(array('+', ' ', '-'), array('','',''), $tel);
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху