Премини към съдържанието

Препоръчан отговор


Здравейте,

В БД ми се пазят кодове на продукти по следния начин:

Screen_Shot_2017_03_20_at_17_38_37.png

Искам при въвеждане на даден код да излиза точно и конкретно той. 

Когато напиша по този начин заявката, ако искам 4000А ми излиза и 4000АЕ, което не ме устройва.

"SELECT * FROM `catalog` WHERE code LIKE '%" . $keywords . "%' ");

Пробвах и по друг начин 

"SELECT * FROM `catalog` WHERE FIND_IN_SET('$keywords',code)"

По този начин някои кодове при повикване излизат, други не. Например 4700Е2 не излиза изобщо. 

Къде може да бъркам?

Благодаря предварително за помощта!

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

преди 48 минути, Marko4123 написа:

Здравейте,

В БД ми се пазят кодове на продукти по следния начин:

 


"SELECT * FROM `catalog` WHERE code LIKE '%" . $keywords . "%' ");

"SELECT * FROM `catalog` WHERE FIND_IN_SET('$keywords',code)"

Благодаря предварително за помощта!

Според мен грешката е била при дизайна на базата. Защо имате повече от един код в една клетка? Ако бяха структурирани нещата като хората щяхте да ползвате:

select * from table where code="something";

  • Харесва ми 1

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Така се случва, че един продукт по каталог има 3 кода или повече и друг вариант не се сещам, как бих ги добавил. 

Сподели този отговор


Линк към този отговор
Сподели в други сайтове
преди 5 минути, Marko4123 написа:

Така се случва, че един продукт по каталог има 3 кода или повече и друг вариант не се сещам, как бих ги добавил. 

В отделна таблица по един код на ред с релация едно към много

  • Харесва ми 3

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Регистрирайте се или влезете в профила си за да коментирате

Трябва да имате регистрация за да може да коментирате това

Регистрирайте се

Създайте нова регистрация в нашия форум. Лесно е!

Нова регистрация

Вход

Имате регистрация? Влезте от тук.

Вход

×

Информация

Поставихме бисквитки на устройството ви за най-добро потребителско изживяване. Можете да промените настройките си за бисквитки, или в противен случай приемаме, че сте съгласни с нашите условия за ползване.