Этот сайт не наркоманов. Это сайт программистов.

Добро пожаловать на Пыху!

Логин:
Пароль:
 

Нет прописки? Зарегистрируйся!

Новости

Пыха информатор 3.1
Еще более удобное оповещение о флуде!

Краснодарское время: 25 Май, 2012, 05:19:44

Страниц: [1] 2
Печать
Автор Тема: Поиск по базе: 1 текстовое поле, информация из двух строк таблицы.  (Прочитано 207 раз)
0 Пользователей и 1 Гость смотрят эту тему.
iphine5g    ↓ 
25 Октябрь, 2011, 09:31:39
НЕ ХУЕТА! ХУЕТА!


Карма: -2
Сообщений: 224
Сила слова: -0.89

Никогда такое не делал)
Такое наверное есть много где описано, но хочется вас послушать.
 
есть input   |    сюда вводят имя и фамилию "Саша Белый"    |
в базе имя и фамилия хранятся естественно в 2 разных полях fname и sname.
Вопрос, как мне имея СашаБелый из одного инпата, найти его в базе?
Записан
Ivan    ↓ 
25 Октябрь, 2011, 09:36:16 , спустя 4 минуты 37 секунд
НЕ ХУЕТА! ХУЕТА!

Группа: Адекваты

Карма: 27
Сообщений: 1366
Сила слова: 1.98

list($name, $surname) = explode(' ', $input);
Записан

phpdude    ↓ 
25 Октябрь, 2011, 09:39:01 , спустя 2 минуты 45 секунд
НЕ ХУЕТА! ХУЕТА!

я - ЭМО
Группа: в ухо

Карма: 345
Сообщений: 20790
Сила слова: 1.66

а с двумя пробелами тот код даст гавно :-)
Спустя 11 секунд добавил
бить так уж регуляркой да и посильнее
Записан

забанен. могу забанить других, пишите в личку
BEER. Helping ugly people have sex since 1862.
iphine5g    ↓ 
25 Октябрь, 2011, 09:43:39 , спустя 4 минуты 38 секунд
НЕ ХУЕТА! ХУЕТА!


Карма: -2
Сообщений: 224
Сила слова: -0.89

так нужно разрезать на имя-фамилию, да? Так возможно что пользователь возьмет да и введет фамилию , потом имя. То есть мне прям придется в запросе юзать несколько комбинаций если там будет еще и имя
Спустя 16 секунд добавил
имя != отчество то есть
Записан
iphine5g    ↓ 
25 Октябрь, 2011, 09:55:33 , спустя 11 минут 54 секунды
НЕ ХУЕТА! ХУЕТА!


Карма: -2
Сообщений: 224
Сила слова: -0.89

приходит в голову только это
SQL
SELECT * FROM a WHERE name_user LIKE '$word' OR lastname LIKE '$word';
где $word склеенный результат из поля ввода
Записан
Status    ↓ 
25 Октябрь, 2011, 10:20:37 , спустя 25 минут 4 секунды
НЕ ХУЕТА! ХУЕТА!

Редкостная сволочь
Группа: Джедаи

Карма: 57
Сообщений: 1447
Сила слова: 3.94

iphine5g, балбес:D
(имя = петя AND фамилия = петров) OR (имя = петров AND фамилия = петя)
Записан

Заткнись говно, я воевал!
iphine5g    ↓ 
25 Октябрь, 2011, 10:27:20 , спустя 6 минут 43 секунды
НЕ ХУЕТА! ХУЕТА!


Карма: -2
Сообщений: 224
Сила слова: -0.89


iphine5g, балбес:D
(имя = петя AND фамилия = петров) OR (имя = петров AND фамилия = петя)
у меня kohana
 

            
PHP
$post = Validation::factory($_POST);
            $searchstring = $post['search'];
       
            $searchresult = ORM::factory("user")
       
            -> where(   DB::expr('concat(fname," ",sname)'),"like","%$searchstring%")
            -> order_by("id","desc")
            //-> limit($data['per_page'])
            //-> offset($data['offset'])
            -> find_all();

Спустя 2 минуты 40 секунд добавил
PHP
echo $searchresult->get('fname').' '. $searchresult->get('sname');

вот и все. Правда не в курсах как такое на практике обработает пару К записей
Записан
Kikky    ↓ 
25 Октябрь, 2011, 10:45:26 , спустя 18 минут 6 секунд
НЕ ХУЕТА! ХУЕТА!


Карма: 2
Сообщений: 175
Сила слова: 1.14


Никогда такое не делал)
Такое наверное есть много где описано, но хочется вас послушать.
 
есть input   |    сюда вводят имя и фамилию "Саша Белый"    |
в базе имя и фамилия хранятся естественно в 2 разных полях fname и sname.
Вопрос, как мне имея СашаБелый из одного инпата, найти его в базе?

а что мешает сделать 2 инпута?...или уж делай валидацию js'ом перед отправкой на сервер и если юзер ввёл данные не в формате 'fname lname', то кричи ему..
Записан

Уроки по PHP и не только!
NRG    ↓ 
25 Октябрь, 2011, 10:51:44 , спустя 6 минут 18 секунд
НЕ ХУЕТА! ХУЕТА!

Headshot!MultiKill!
Группа: нинзя

Карма: 777
Сообщений: 4700
Сила слова: 16.81

а не проще ли сделать для имени и фамилии два отдельных инпута ?
Спустя 30 секунд добавил
о, меня кику опередил
Записан

Буратино дрочил, дрочил и сгорел
Java и JavaScript это абсолютно разные вещи !!!
Господа, вы хуйня.
девушки краснели, отворачивались но порнуху продолжали смотреть
iphine5g    ↓ 
25 Октябрь, 2011, 11:00:16 , спустя 8 минут 32 секунды
НЕ ХУЕТА! ХУЕТА!


Карма: -2
Сообщений: 224
Сила слова: -0.89

2 инпута не удобно для пользователя
Записан
NRG    ↓ 
25 Октябрь, 2011, 11:08:06 , спустя 7 минут 50 секунд
НЕ ХУЕТА! ХУЕТА!

Headshot!MultiKill!
Группа: нинзя

Карма: 777
Сообщений: 4700
Сила слова: 16.81


2 инпута не удобно для пользователя
пиздежь и провокация
Записан

Буратино дрочил, дрочил и сгорел
Java и JavaScript это абсолютно разные вещи !!!
Господа, вы хуйня.
девушки краснели, отворачивались но порнуху продолжали смотреть
Kikky    ↓ 
25 Октябрь, 2011, 11:12:37 , спустя 4 минуты 31 секунду
НЕ ХУЕТА! ХУЕТА!


Карма: 2
Сообщений: 175
Сила слова: 1.14

iphine5g, 1 инпут приведет юзера в ступор, т.к. непривычно = )
Записан

Уроки по PHP и не только!
iphine5g    ↓ 
25 Октябрь, 2011, 11:20:37 , спустя 8 минут
НЕ ХУЕТА! ХУЕТА!


Карма: -2
Сообщений: 224
Сила слова: -0.89


iphine5g, 1 инпут приведет юзера в ступор, т.к. непривычно = )
вконтакте - ровняйтесь.
Записан
NRG    ↓ 
25 Октябрь, 2011, 11:22:49 , спустя 2 минуты 12 секунд
НЕ ХУЕТА! ХУЕТА!

Headshot!MultiKill!
Группа: нинзя

Карма: 777
Сообщений: 4700
Сила слова: 16.81



iphine5g, 1 инпут приведет юзера в ступор, т.к. непривычно = )
вконтакте - ровняйтесь.
facebook - не выёбуйтесь.
Записан

Буратино дрочил, дрочил и сгорел
Java и JavaScript это абсолютно разные вещи !!!
Господа, вы хуйня.
девушки краснели, отворачивались но порнуху продолжали смотреть
iphine5g    ↓ 
25 Октябрь, 2011, 11:33:43 , спустя 10 минут 54 секунды
НЕ ХУЕТА! ХУЕТА!


Карма: -2
Сообщений: 224
Сила слова: -0.89

похуй - похуй
Спустя 2 минуты 14 секунд добавил
так ребята кто подскажет как человеку который не так давно пишет на php
 
PHP
$searchresult = ORM::factory("user")
       
            -> where(   DB::expr('concat(fname," ",sname)'),"like","%$searchstring%")
            -> order_by("id","desc")
            //-> limit($data['per_page'])
            //-> offset($data['offset'])
            -> find_all();

обработать массив
PHP
$searchresult -> as_array()
дабы его вывести при помощи шаблонизатора smarty. Кто в кохане и смарти шарит?  
Спустя 1 минуту 15 секунд добавил
от моих циклов локальный сервер с хуя срывается)))
Записан
Страниц: [1] 2
Печать
 

Перейти в:  

Этот топик скрыли: adw0rd