[ Príspevkov: 16 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
hladanie v databaze - male, velke znaky

Registrovaný: 07.08.06
Prihlásený: 05.04.18
Príspevky: 926
Témy: 261 | 261
Bydlisko: Levice

mam jednoduchy vyhladavac, ktory po zadani slova uzivatelom do INPUT hlada dane slovo v databaze. Napr.
Kód:
$hladat=mysql_query("SELECT * FROM clanky WHERE nazov like '%".$slovo."%'");
Chcel by som, aby pri vyhladavani nerozlisoval male a velke pismena. Totiz teraz ak dam hladat napr. "slovo", a v databaze najde "Slovo", tak to nezobrazi ako vysledok hladania, lebo je tam velke S. Da sa to nejako? diky.


Offline

Skúsený užívateľ
Skúsený užívateľ
hladanie v databaze - male, velke znaky

Registrovaný: 07.03.06
Prihlásený: 23.01.11
Príspevky: 408
Témy: 2 | 2
Bydlisko: Prešov / Pr...
NapísalOffline : 07.11.2007 23:21 | hladanie v databaze - male, velke znaky

Akú znakovú sadu používaš v danom stĺpci v DB? Na to aby ti nerozlišovalo malé písmená musí znaková sada končiť na "_ci", napríklad teda "utf8_general_ci". ak končí na "_cs", tak rozlišuje veľké a malé písmená.

CS = case sensitive
CI = case insensitive


Offline

Užívateľ
Užívateľ
hladanie v databaze - male, velke znaky

Registrovaný: 07.08.06
Prihlásený: 05.04.18
Príspevky: 926
Témy: 261 | 261
Bydlisko: Levice
Napísal autor témyOffline : 08.11.2007 7:29 | hladanie v databaze - male, velke znaky

Aha, to som nevedel. Nastavil som, funguje ! dakujem.


Offline

Skúsený užívateľ
Skúsený užívateľ
hladanie v databaze - male, velke znaky

Registrovaný: 29.10.07
Prihlásený: 12.06.17
Príspevky: 1389
Témy: 28 | 28
Bydlisko: Bratislava

pripadne ine riesenie:
$hladat=mysql_query("SELECT * FROM clanky WHERE UPPER(nazov) like '%".strtoupper($slovo)."%'");


_________________
PC: OS: Windows 10 (64bit) CPU: INTEL Core i5-4440 GPU: ASUS ATI R9280X RAM: Kingston 8GB DDR3 1600MHz MB: MSI B85-G43 Gaming HDD: Seagate 1TB HDD Barracuda SSD: SAMSUNG 120GB HDD 840 EVO CASE: COOLERMASTER N400
Mobil: OS: Android 4.4.2 Model: LG G2 D802 16GB
Offline

Užívateľ
Užívateľ
hladanie v databaze - male, velke znaky

Registrovaný: 07.08.06
Prihlásený: 05.04.18
Príspevky: 926
Témy: 261 | 261
Bydlisko: Levice
Napísal autor témyOffline : 22.01.2008 15:15 | hladanie v databaze - male, velke znaky

diky, no a potreboval by som este, aby pri hladani ignorovalo diakritiku... teda ak uzivatel zada hladat napr. slovo článok, aby našlo aj to kde je clanok. Da sa to nejako?


Offline

Užívateľ
Užívateľ
hladanie v databaze - male, velke znaky

Registrovaný: 26.07.06
Prihlásený: 20.03.16
Príspevky: 1378
Témy: 90 | 90
Bydlisko: Slovakia-Ko...
NapísalOffline : 22.01.2008 18:25 | hladanie v databaze - male, velke znaky

skor by si potreboval nieco obojstranne napr da clanok tak hlada aj članok ale aj naopak


_________________
CPU: Intel E7200 momentalne default + freezer 7 pro | MB: Gigabyte GA-P35-DS3 rev. 2.0 F14 | RAM: A-DATA 4x1GB EE Vitesta | VGA: ATI Radeon HD4850 Sapphire Dual Slot | Monitor: BenQ E2200HD+17CTX | HDD: WD 3200AAKS + Maxtor 6Y080M0 80GB SATAII + 120GB ATA Barracuda | PSU: Corsair VX450W | Windows 7 Ultimate Sk | REPRO: Logitech X-210
+
IPhone 3GS JB 3.1.3 (new BR)
múdry sa postara o seba ale ešte múdrejši sa postara aj o druhých
Offline

Užívateľ
Užívateľ
hladanie v databaze - male, velke znaky

Registrovaný: 26.11.06
Prihlásený: 23.09.17
Príspevky: 4114
Témy: 317 | 317
Bydlisko: HE/BA
NapísalOffline : 22.01.2008 19:07 | hladanie v databaze - male, velke znaky

na ingnorovanie diakritiky by si mohol urobit tak ze das funkciu napr:
Kód:
$dk1='ľščťžýáíé'//teda vsetky znaky s diakritikou
$dk2='lsctzyaie'//teda rovnake znaky v rovnakom poradi
$slovo_bez_dk=strtr($slovo, $dk1, $dk2);
a do db hladania by si dal uz len to $slovo_bez_dk


_________________
Desktop: CASE: Cooler Master Centurion 532 MB: ASUS P5Q PRO Turbo CPU: Intel Core 2 Quad Q6600@2,4GHz FSB 1066MHz RAM: A-Data Vitesta 2×2GB 800MHz Cl 4-4-4-12 2T GPU: PowerColor PCS+ HD6950 HDD: Seagate Barracuda 500GB 7200rpm ODD1: LG DVD+/-RW + LS(PATA) ODD2:LG DVD+/-RW(SATA) PSU: LCD: DELL U2414M 24" 1920x1200
Offline

Užívateľ
Užívateľ
hladanie v databaze - male, velke znaky

Registrovaný: 07.08.06
Prihlásený: 05.04.18
Príspevky: 926
Témy: 261 | 261
Bydlisko: Levice
Napísal autor témyOffline : 22.01.2008 19:57 | hladanie v databaze - male, velke znaky

ano, to vyzera slubne...diky! Ale neviem si predstavit opacny postup, ako pisal kmsa. Ked teda zada clanok a v databaze je článok. Tu mu neviem vopred urcit, ktore pismeno ma nahradit diakritikou...hm...


Offline

Správca fóra
Správca fóra
hladanie v databaze - male, velke znaky

Registrovaný: 27.07.07
Príspevky: 3935
Témy: 51 | 51
Bydlisko: Bratislava

uz som to tu raz pisal v teme http://www.pcforum.sk/query-na-odstranenie-diakritiky-vt25571.html, nie je to sice najidealnejsie riesenie, ale funguje...


_________________
Desktop: CPU: AMD Athlon64 3000+ | MB: Biostar K8T890-A9 | VGA: NVIDIA GeForce 6200 LE 256MB | RAM: 2x 1GB A-DATA DDR 400 MHz Dual Kit | HDD: WD Caviar Blue 320GB | DVD: LG GSA-H10N | Keyboard: Chicony KU-0420 Silver/Black | Mouse: Logitech RX1000 | Zdroj: Corsair CX400 400W | CASE: DELUX DLC-MD370 Black | LCD: 20" Samsung 206BW | Repro: Teac XL-20
Notebook: ACER Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB / Intel HD Graphics | RAM: 4GB DDR3 1066 MHz | HDD: 640GB
Offline

Užívateľ
Užívateľ
hladanie v databaze - male, velke znaky

Registrovaný: 07.08.06
Prihlásený: 05.04.18
Príspevky: 926
Témy: 261 | 261
Bydlisko: Levice
Napísal autor témyOffline : 22.01.2008 21:00 | hladanie v databaze - male, velke znaky

No pisal si tam o reg.vyrazoch. Konkretny priklad
Kód:
$searchstring = "myška";

Regularny vyraz z hladaneho retazca:

$regexp = "[mM][yýYÝ][sšSŠ][kK][aáAÁ]";


Select:

SELECT * FROM tabulka WHERE text REGEXP '$regexp'


Lenze to je jedno slovo. Ale ja neviem ake slovo bude uzivatel hladat, ako mu definujem kazde pismeno, ked neviem, co bude hladat? Z uvedeneho vyplyva, ze v databaze bude hladat aj myska,Myska,Mýska, atd ... ale ako to zovseobecnit pre lubovolne hladane slova?


Offline

Správca fóra
Správca fóra
hladanie v databaze - male, velke znaky

Registrovaný: 27.07.07
Príspevky: 3935
Témy: 51 | 51
Bydlisko: Bratislava

$searchstring obsahuje retazec, ktory bol zadany do inputu vo vyhladavani, odstranis z tohto retazca diakritiku a prekonvertujes to do tvaru ako je v $regexp, tot vsio...


_________________
Desktop: CPU: AMD Athlon64 3000+ | MB: Biostar K8T890-A9 | VGA: NVIDIA GeForce 6200 LE 256MB | RAM: 2x 1GB A-DATA DDR 400 MHz Dual Kit | HDD: WD Caviar Blue 320GB | DVD: LG GSA-H10N | Keyboard: Chicony KU-0420 Silver/Black | Mouse: Logitech RX1000 | Zdroj: Corsair CX400 400W | CASE: DELUX DLC-MD370 Black | LCD: 20" Samsung 206BW | Repro: Teac XL-20
Notebook: ACER Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB / Intel HD Graphics | RAM: 4GB DDR3 1066 MHz | HDD: 640GB
Offline

Užívateľ
Užívateľ
hladanie v databaze - male, velke znaky

Registrovaný: 26.11.06
Prihlásený: 23.09.17
Príspevky: 4114
Témy: 317 | 317
Bydlisko: HE/BA
NapísalOffline : 22.01.2008 21:52 | hladanie v databaze - male, velke znaky

nehnevaj sa ale velky rozdiel medz tvojim a mojim skriptom nevidim, teda v tom co robia a myslim ze moj je (vynimocne) lepsi :)


_________________
Desktop: CASE: Cooler Master Centurion 532 MB: ASUS P5Q PRO Turbo CPU: Intel Core 2 Quad Q6600@2,4GHz FSB 1066MHz RAM: A-Data Vitesta 2×2GB 800MHz Cl 4-4-4-12 2T GPU: PowerColor PCS+ HD6950 HDD: Seagate Barracuda 500GB 7200rpm ODD1: LG DVD+/-RW + LS(PATA) ODD2:LG DVD+/-RW(SATA) PSU: LCD: DELL U2414M 24" 1920x1200
Offline

Užívateľ
Užívateľ
hladanie v databaze - male, velke znaky

Registrovaný: 16.05.07
Prihlásený: 01.08.17
Príspevky: 837
Témy: 6 | 6
NapísalOffline : 22.01.2008 22:00 | hladanie v databaze - male, velke znaky

Drako píše:
nehnevaj sa ale velky rozdiel medz tvojim a mojim skriptom nevidim, teda v tom co robia a myslim ze moj je (vynimocne) lepsi :)
akoze "vynimocne" sa asi mylis chlapce ten regexp vyhlada vsetky slova ten tvoj len tie bez diakritiky a s malymi pismenami, atd.


_________________
getch();?{readkey;?} na konci? !A naco! Riesenie je (Alt+F5)
99% pochopí a shaggy je druhá kategória
Offline

Užívateľ
Užívateľ
hladanie v databaze - male, velke znaky

Registrovaný: 26.11.06
Prihlásený: 23.09.17
Príspevky: 4114
Témy: 317 | 317
Bydlisko: HE/BA
NapísalOffline : 22.01.2008 22:02 | hladanie v databaze - male, velke znaky

ten moj si moze upravit ako chce teda aj velke aj male a napr aj medzery za pomlcky a myslel som to tak ze nestava sa casto aby ja som mal lepsi skript ako stenley


_________________
Desktop: CASE: Cooler Master Centurion 532 MB: ASUS P5Q PRO Turbo CPU: Intel Core 2 Quad Q6600@2,4GHz FSB 1066MHz RAM: A-Data Vitesta 2×2GB 800MHz Cl 4-4-4-12 2T GPU: PowerColor PCS+ HD6950 HDD: Seagate Barracuda 500GB 7200rpm ODD1: LG DVD+/-RW + LS(PATA) ODD2:LG DVD+/-RW(SATA) PSU: LCD: DELL U2414M 24" 1920x1200
Offline

Správca fóra
Správca fóra
hladanie v databaze - male, velke znaky

Registrovaný: 27.07.07
Príspevky: 3935
Témy: 51 | 51
Bydlisko: Bratislava

ten tvoj skript je len prvy krok (odstranenie dia) z mojho prikladu :)

ako juho spravne poznamenal, tvoje riesenie vyhlada len istu malu cast zo vsetkych moznych retazcov, ktore by mal v skutocnosti najst => tvoje tvrdenie je nespravne :)

ale v poriadku, daj sem priklad, ako by si vyhladal v db slovo "zošiť" (s tym, ze mozem pri vyhladavani napisat zosit, zošit prip. zošiť) pomocou tvojho riesenia...


_________________
Desktop: CPU: AMD Athlon64 3000+ | MB: Biostar K8T890-A9 | VGA: NVIDIA GeForce 6200 LE 256MB | RAM: 2x 1GB A-DATA DDR 400 MHz Dual Kit | HDD: WD Caviar Blue 320GB | DVD: LG GSA-H10N | Keyboard: Chicony KU-0420 Silver/Black | Mouse: Logitech RX1000 | Zdroj: Corsair CX400 400W | CASE: DELUX DLC-MD370 Black | LCD: 20" Samsung 206BW | Repro: Teac XL-20
Notebook: ACER Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB / Intel HD Graphics | RAM: 4GB DDR3 1066 MHz | HDD: 640GB
Offline

Užívateľ
Užívateľ
hladanie v databaze - male, velke znaky

Registrovaný: 07.08.06
Prihlásený: 05.04.18
Príspevky: 926
Témy: 261 | 261
Bydlisko: Levice
Napísal autor témyOffline : 03.02.2008 13:20 | hladanie v databaze - male, velke znaky

Stenley, $searchstring obsahuje retazec, ktory bol zadany do inputu vo vyhladavani. To je v poriadku. Potom mam odstranit diakritiku trebars ala Drako:
Kód:
$dk1='ľščťžýáíé'
$dk2='lsctzyaie'
$slovo_bez_dk=strtr($searchstring, $dk1, $dk2);


No ale ako teraz prekonvertujem $slovo_bez_dk na $regexp ?
Musim napisat vsetky abecedne znaky $regexp = "[aAáÁ][bB][cCčČ][DdĎď]...atd...."; ?


 [ Príspevkov: 16 ] 


hladanie v databaze - male, velke znaky



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

hladanie v databaze

v PHP, ASP

2

544

12.03.2010 14:05

1daemon1

V tomto fóre nie sú ďalšie neprečítané témy.

Str_Replace a velke / male pismena

v PHP, ASP

19

985

01.03.2008 7:54

stenley

V tomto fóre nie sú ďalšie neprečítané témy.

hladanie

v Správy pre vedenie fóra

2

1181

04.03.2007 0:16

JanoF

V tomto fóre nie sú ďalšie neprečítané témy.

hladanie

v PHP, ASP

2

421

31.03.2009 18:27

tatysp

V tomto fóre nie sú ďalšie neprečítané témy.

Hladanie

v Internetový marketing, SEO, reklama

8

534

29.03.2011 20:50

walther

V tomto fóre nie sú ďalšie neprečítané témy.

Veľké sekanie

v AMD - Advanced Micro Devices

4

739

26.09.2007 19:37

RoBo

V tomto fóre nie sú ďalšie neprečítané témy.

Databáze OC

[ Choď na stránku:Choď na stránku: 1 ... 5, 6, 7 ]

v Biosy a ladenie výkonu

187

25076

27.11.2014 5:30

blabla630

V tomto fóre nie sú ďalšie neprečítané témy.

Veľké video

v Video programy

5

306

10.07.2010 10:44

shiro

V tomto fóre nie sú ďalšie neprečítané témy.

Veľké odseky

v HTML, XHTML, XML, CSS

6

304

04.05.2012 19:07

zerominerSK

V tomto fóre nie sú ďalšie neprečítané témy.

Hľadanie predmetov

v Počítačové hry

0

1152

30.06.2010 21:14

klatisko25cm

Táto téma je zamknutá, nemôžete posielať nové príspevky alebo odpovedať na staršie.

hladanie cisla

v Krčma

7

4310

16.09.2010 11:53

ac.milan

V tomto fóre nie sú ďalšie neprečítané témy.

(JS) Hladanie

v JavaScript, VBScript, Ajax

8

346

11.03.2010 16:08

mylan

V tomto fóre nie sú ďalšie neprečítané témy.

Povolene znaky

v PHP, ASP

4

378

17.07.2010 12:05

php30

V tomto fóre nie sú ďalšie neprečítané témy.

špeciálne znaky

v Ostatné programy

3

723

01.07.2011 9:56

cumeli

V tomto fóre nie sú ďalšie neprečítané témy.

email znaky

v Sieťové a internetové programy

6

139

01.02.2015 23:34

p4tooo

V tomto fóre nie sú ďalšie neprečítané témy.

čudné znaky

v Redakčné systémy

15

1347

20.06.2007 15:53

pitbull



© 2005 - 2018 PCforum, edited by JanoF