Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
 
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Возможен ли поиск по строке таблицы, по первым 10 символам строки
Strannik  
 ۩     Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 806
Пользователь №: 17108
На форуме: 16 лет, 8 дней
Карма: 1




Здравствуйте. Возник вопрос. Возможно ли произвести поиск строке таблицы базы данных по первым 10 символам.
Допустим
строка содержит запись 1234567890 Привет мир.
в поиск юзер вводит 1234567890 и нажимает найти. при этом выполняется поиск на наличие вначале строки 1234567890.

к примеру извлекаем данные
 conn();
$sql = "SELECT * FROM `table` WHERE `name` = '$name'";
$result = mysql_query($sql) or die(mysql_error() ."<br/>". $sql);
if (mysql_num_rows($result) > 0)
{
$row = mysql_fetch_assoc($result))
echo $row['result'];
}


а как дальше произвести поиск по полученной строке?


PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sergeiss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Сидел он, дум великих полон - и вдаль глядел
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 15860
Пользователь №: 4190
На форуме: 17 лет, 1 месяц, 15 дней
Карма: 490




Если в начале строки, то так и скажи:
$sql="SELECT * FROM `table` WHERE `name` LIKE '$name%'"

И в ПХП получишь уже готовый результат.


--------------------
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Strannik  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 806
Пользователь №: 17108
На форуме: 16 лет, 8 дней
Карма: 1




так это же поиск по все строке ( если использовать like). или я ошибаюсь?
а мне надо по началу строки.

сейчас посмотрел google - нашел
<?
$string = substr("Hello, world!", 6, 2);
echo (string );
?>

т.е. относительно меня получается что то вроде

<?
$string = substr($row['result'], 0, 10);
echo (string );
?>

ну и дальше проверка на name=$string, однако муторно как то. Есть возможность сократить?

P.S.: если Like или другое условие делает поиск еще в самом запросе sql вобще отлично, только так ли это?
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Nikitian  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 3066
Пользователь №: 18352
На форуме: 15 лет, 8 месяцев, 8 дней
Карма: 125




Strannik, то, что описано в первом сообщении вам решили во втором чётко по описанию из первого сообщения. Сейчас вы задачу меняете или прост не понимаете чего хотите?
PMСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Strannik  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 806
Пользователь №: 17108
На форуме: 16 лет, 8 дней
Карма: 1




не менял и понимаю.
я не понимаю лишь одного - like ищет name по всей строке или по началу (в гугле было, что по началу)

т.е. мне нужен поиск по наличию в начале строки, а не по наличию в строке данных name.

более подробно если непонятен мое оъяснение -
пример: строка таблицы бд содержит
1234567890 Привет мир.бла-бла-бла1234567890

юзер вводит 1234567890 и поиск идет по наличию в начале (а не вообще) в строке 1234567890, т.е. если в начале строки содержится 1234567890 возвращается true если нет (или не вначале) возвращается false
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Strannik  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 806
Пользователь №: 17108
На форуме: 16 лет, 8 дней
Карма: 1




ндаа косяк вышел). сейчас другой сайт открыл по sql - пишет что like ище по началу строки. Теперь все отлично. Спасибо за помощь.
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Nikitian  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 3066
Пользователь №: 18352
На форуме: 15 лет, 8 месяцев, 8 дней
Карма: 125




like ищет так, как его заставить искать. В выражении
... where name like "123%"
можно заметить знак процента "%", который понимается оператором like, как любой набор символов и условие превращается в "найти записи где в поле name есть строка 123 и после неё любые символы, а перед ней ничего"
PMСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Strannik  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 806
Пользователь №: 17108
На форуме: 16 лет, 8 дней
Карма: 1




сейчас посмотрю спасибо
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sergeiss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Сидел он, дум великих полон - и вдаль глядел
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 15860
Пользователь №: 4190
На форуме: 17 лет, 1 месяц, 15 дней
Карма: 490




Strannik - а вообще, когда что-то советуют, то имеет смысл попробовать. Для начала smile.gif


--------------------
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Strannik  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 806
Пользователь №: 17108
На форуме: 16 лет, 8 дней
Карма: 1




я ж говорю - на одном сайте прочитал, что поиск по всей строке идет, вот и усомнился)

p.s.: и послужит это мне уроком)))
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
maxims  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Абориген
*****

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 207
Пользователь №: 20589
На форуме: 15 лет, 1 месяц, 29 дней
Карма: 5

Не курю:
38 лет, 11 месяцев, 21 день


smile.gif

Это сообщение отредактировал maxims - 9.03.2010 - 12:03
PMПисьмо на e-mail пользователюСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
2 Пользователей читают эту тему (2 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы Ответ в темуСоздание новой темыСоздание опроса