![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 24.05.2008
Сообщений: 31
|
![]()
Всем доброго времени суток!
Помогите плиз со следующей задачей: Существует база данных MYSQL, написан скрипт поиска по этой базе. В базе содержатся следующие поля таблицы tarif: Code name price 7495 Москва 0.63 Code - телефонный код города name - Название города price - цена необходимо чтобы пользователь ввел в поиске через php скрипт номер телефона например 74951234567, и получил следующее: Код направление цена 7495 Россия Москва 0.63000 т.е. необходимо отсекать все что стоит после 7495 но с таким условием, чтобы если например в базе существует код 74951 то выводил именно 74951 и так далее. Сейчас реализованно следующее: /* $nmag - берется из формы */ $query = "SELECT * FROM tarif WHERE code='$nmag'"; выводится только то что есть в базе, то чего нет не выводится вводиш 7495 выводит 7495 если ввести 74951234567 ничего не выводит. помогите составить формулу! Последний раз редактировалось kutt; 01.12.2010 в 16:04. |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 01.10.2008
Сообщений: 266
|
![]()
При заполнении поля телефона для поиска сделайте не одно поле, а например два. +7 пишется само перед формой - поле для кода города - поле для номера телефона. А уже информацию обрабатывать можно простыми регулярками, самый простой способ решения вашей проблемы.
Код:
|
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 01.10.2008
Сообщений: 266
|
![]()
Еще как вариант жёсткая форма заполнения телефона видом +7-код города- номер телефона. Перед отправкой проверять регулярными выражениями, если устраивает то посылать, если нет то просить перебить номер. Разрезать так же регулярками.
|
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 24.05.2008
Сообщений: 31
|
![]()
nec117, спасибо огромное, но это несовсем понятно, немогли бы вы написать именно
формулу поиска, т.е. само выражение, я пока не могу сообразить как отсекать не нужные цифры. Дело еще в том что, код города может быть и 93 например афганистан, т.е. в базе кодов куча. вот если человек вводит 93123456789 то как отсеч все что до 93? |
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 01.10.2008
Сообщений: 266
|
![]()
Повторяю. Нужно сделать жёсткую форму заполнения телефона. Не свободную как хочешь, так и вводи, а жёстко структурировать. 8-123-12345. и резать то что нужно регулярными выражениями по дефису. Или же сделать как я предлагал в первый раз несколько форм для ввобда одного номера. Форма кода и форма номера. Таким образом уже при вводе номер разбит.
|
![]() |
![]() |
![]() |
#6 | |
Старожил
Регистрация: 19.04.2010
Сообщений: 2,702
|
![]() Цитата:
Решение: Код:
|
|
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 01.10.2008
Сообщений: 266
|
![]()
Виталий Желтяков, эм... По моему ваш код будет постоянно возвращать NULL ибо чтобы он хоть что то возвратил, то нужно писать так:
Код:
|
![]() |
![]() |
![]() |
#8 |
Старожил
Регистрация: 19.04.2010
Сообщений: 2,702
|
![]() |
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 24.05.2008
Сообщений: 31
|
![]()
Спасибо огромное, Сделал вот так вот:
$query = "SELECT * FROM tarif WHERE '{$nmag}' LIKE CONCAT( `code` , '%' )"; это почти то что нужно, но есть некая проблема: Ввожу номер телефона 73432234567, выводит мне код 73432, как и нужно, но далее выводит 7343, 7. Т.е. необходимо выводить именно 73432 в нашем случае а остальное не выводить, если например пользователь ввел 73431234567, то должно вывести 7343 т.к. в базе нету кода 73431. Помогите плиз. |
![]() |
![]() |
![]() |
#10 |
Форумчанин
Регистрация: 01.10.2008
Сообщений: 266
|
![]()
Добавьте LIMIT 1 в запрос
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
есть адреси в mysql нужно поиска с AJAX for mysql | orter | PHP | 1 | 24.09.2010 10:24 |
как создать раскрывающийся список с условием | _Set_ | Microsoft Office Excel | 2 | 20.01.2010 17:50 |
Необходимо дописать простой скрипт на PHP+Mysql | kutt | Фриланс | 8 | 08.10.2009 13:09 |
Как создать RSS с помощью PHP, MySQl. | Revival001 | PHP | 6 | 12.07.2009 19:49 |
Создать выражение для запроса с условием | smoky | Microsoft Office Access | 3 | 13.05.2008 21:39 |