Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevkov: 11 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.08.07
Prihlásený: 18.02.11
Príspevky: 108
Témy: 28
Príspevok NapísalOffline : 17.10.2007 11:04

Mam v databaze clanky, ktore vkladaju uzivatelia. Databaza v podstate obsahuje NAZOV CLANKU, HESLO, TEXT, ID. Vedel by mi niekto poradit ako spravim jednoduchy vyhladavac na moju stranku, ktory by hladal v tej MySQL databaze ale iba v NAZVE a TEXTE a nasledne by potom vypisal vysledky vyhladavania? Je to myslim dost zlozite /aspon pre mna/, preto neviem ci si niekto z vas trufa na nieco take ... bol by som vam velmi vdacny...dakujem.


Offline

Správca fóra
Správca fóra
vyhladavanie v MYSQL

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51
Bydlisko: Bratislava
Príspevok NapísalOffline : 17.10.2007 11:57

Kód:
mysql_query("SELECT nazov_clanku FROM tbl_name WHERE nazov_clanku like '%".$search."%' OR text like '%".$search."%'")

Toto ti vrati nazvy vsetkych clankov, kde sa nachadza hladany vyraz $search.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.08.07
Prihlásený: 18.02.11
Príspevky: 108
Témy: 28
Príspevok Napísal autor témyOffline : 17.10.2007 14:00

Aha, tak by som mal zadat take nieco ako Hladat:
Kód:
<input type="text" name="search" value="">
co vlastne premennej $search priradi hladany retazec. Potom ak by som definoval napr.
Kód:
$hladat=mysql_query("SELECT nazov_clanku FROM tbl_name WHERE nazov_clanku like '%".$search."%' OR text like '%".$search."%'")
a nasledne by som vypisal
Kód:
echo $hladat;
by mi vypisalo vsetky nazvy clankov kde sa ten vyraz nachadza. Teda ak som spravne pochopil. Nemusim to davat do cyklu? Staci tak ako som napisal?


Offline

Správca fóra
Správca fóra
vyhladavanie v MYSQL

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51
Bydlisko: Bratislava
Príspevok NapísalOffline : 17.10.2007 14:34

musis to dat do cyklu... ale este tam je drobna chybicka:
Kód:
$hladat=mysql_query("SELECT nazov_clanku FROM tbl_name WHERE nazov_clanku like '%".$search."%' OR text like '%".$search."%'")

while(list($nazov) = mysql_fetch_row($hladat)) {
   echo $nazov."<br>";
}

vypise ti nazvy clankov pod seba...


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.08.07
Prihlásený: 18.02.11
Príspevky: 108
Témy: 28
Príspevok Napísal autor témyOffline : 18.10.2007 23:01

neviem ci by tam nemalo byt este endwhile na konci. Iba tak mi to totiz funguje. Takze vyhladav v pohode, vypise mi aj nazov clanku, ktory obsahuje hladany vyraz, to je v pohode. Ale neviem asi dosiahnut, to, aby ten vypisany nazov bol zaroven aj linkom na ten clanok... viem spravit len odkaz na tu stranku s clankami, ale nie na konkretny clanok...
Kód:
 echo "<a href=clanky.php>".$nazov."</a><br>";
Alebo nechat hned vypisat cely clanok, lenze tam mam vela udajov v databaze - datum, nazov, text, mail, telefon, id ... a to vsetko pri kazdom cykle tahat z databazy ... aj tak to hlada pomerne dlho a pomaly ... hm... co ty na to stenley? Inak ti moc dakujem, lebo si mi moc pomohol.


Offline

Správca fóra
Správca fóra
vyhladavanie v MYSQL

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51
Bydlisko: Bratislava
Príspevok NapísalOffline : 19.10.2007 9:41

endwhile? ved tam mas zatvorky, tak to tam nemusi byt...

Ked tam chces mat hned aj linky, musis vediet, ako sa ti tie clanky zobrazuju, cize aku maju adresu (zobrazit cele clanky je zbytocnost, ked ich tam budes mat vela, zaberieto dost casu)... Napr:
Kód:
clanok.php?nazov=Ako-kubko-s-matkom-kopali-jamu

popripade
Kód:
clanok.php?id=5668

To si uz spravis podla seba, ale skor ti bude vyhovovat asi ten druhy pripad, kedze mas v tabulke stlpec id, ktory je predpokladam jedinecny...

Kód:
$hladat=mysql_query("SELECT id, nazov_clanku FROM tbl_name WHERE nazov_clanku like '%".$search."%' OR text like '%".$search."%'")

while(list($id,$nazov) = mysql_fetch_row($hladat)) {
   echo '<a href="clanok.php?id='.$id.'">'.$nazov.'</a><br>'
}


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.08.07
Prihlásený: 18.02.11
Príspevky: 108
Témy: 28
Príspevok Napísal autor témyOffline : 19.10.2007 14:26

Ano, id! sakra to ma nenapadlo....

Nechcem ta uz velmi otravovat, ale ak nenajde ziadny vysledok, chcem aby vypisalo ze sa nenasli ziadne zaznamy. Dalo by sa to nejako takto?:
Kód:
if (mysql_num_rows($hladat)==0):
echo  "nenasli sa ziadne zaznamy"
?

A este jedna vec: je to moc komplikovane vyznacit v texte alebo nazve clanku ten hladany vyraz hrubsim pismom? /videl som to pri viacerych vyhladavacoch / - napr. hladam slovo kompon a vysledok je komponenty ... Ale to vobec nie je nutne, ak je to zlozite, netusim ako to funguje... zaobidem sa bez toho.

diky!


Offline

Správca fóra
Správca fóra
vyhladavanie v MYSQL

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51
Bydlisko: Bratislava
Príspevok NapísalOffline : 19.10.2007 15:00

Ano, presne cez to sa to da spravit, konkretnejsie:
Kód:
$hladat=mysql_query("SELECT id, nazov_clanku FROM tbl_name WHERE nazov_clanku like '%".$search."%' OR text like '%".$search."%'")

if(mysql_num_rows($hladat)>0) {
   while(list($id,$nazov) = mysql_fetch_row($hladat)) {
      echo '<a href="clanok.php?id='.$id.'">'.$nazov.'</a><br>'
   }
}
else {
   echo  "nenasli sa ziadne zaznamy";
}

Kde chces zvyraznit tie slova, vo vysledku vyhladavania, alebo ked sa uz zobrazi samotny clanok? V prvom pripade to je jednoduche (proste len nahradis vo vysledku $search za <strong>$search</strong>), v druhom troska komplikovanejsie, ale nie velmi...


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.08.07
Prihlásený: 18.02.11
Príspevky: 108
Témy: 28
Príspevok Napísal autor témyOffline : 19.10.2007 16:07

hm, kde presne myslis nahradit vo vysledku $search za <strong>$search</strong>? Ked vo vysledku budem mat napr. echo $nazov /berme teraz prvy pripad/, tak predsa neviem kde je $search - kedze vypise cely nazov clanku...


Offline

Správca fóra
Správca fóra
vyhladavanie v MYSQL

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51
Bydlisko: Bratislava
Príspevok NapísalOffline : 19.10.2007 16:20

Malo by to fungovat takto nejak, ale neskusal som:
Kód:
if(mysql_num_rows($hladat)>0) {
   while(list($id,$nazov) = mysql_fetch_row($hladat)) {
      $nazov = eregi_replace($search,'<strong>'.$search.'</strong>',$nazov);
      echo '<a href="clanok.php?id='.$id.'">'.$nazov.'</a><br>'
   }
}
else {
   echo  "nenasli sa ziadne zaznamy";
}


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.08.07
Prihlásený: 18.02.11
Príspevky: 108
Témy: 28
Príspevok Napísal autor témyOffline : 23.10.2007 10:06

Ano, tak to funguje!!! Dakujem stenley


Odpovedať na tému [ Príspevkov: 11 ] 


Podobné témy

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

v Databázy

5

628

11.11.2011 15:55

GoodWill Zobrazenie posledných príspevkov

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

v PHP, ASP

6

519

29.08.2008 16:46

chrono Zobrazenie posledných príspevkov

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

v PHP, ASP

5

881

20.03.2010 6:24

rooobertek Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Vyhladavanie v MySQL za pomoci AJAXu

v PHP, ASP

7

627

18.07.2011 18:34

JanoF Zobrazenie posledných príspevkov

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

v Databázy

1

862

29.08.2009 11:30

bmatias Zobrazenie posledných príspevkov

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

v PHP, ASP

5

470

25.04.2013 23:42

misko16 Zobrazenie posledných príspevkov

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

v HTML, XHTML, XML, CSS

15

2291

04.12.2007 13:15

wotan Zobrazenie posledných príspevkov

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

v PHP, ASP

1

630

24.09.2010 20:22

VireL Zobrazenie posledných príspevkov

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

v Ostatné programy

4

702

30.06.2008 2:38

dedko45 Zobrazenie posledných príspevkov

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

v Správy pre vedenie fóra

9

1035

19.04.2012 20:53

Jeffo Zobrazenie posledných príspevkov

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

v Databázy

3

375

08.04.2014 9:45

JanoF Zobrazenie posledných príspevkov

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

v Databázy

7

927

31.05.2009 18:46

Snacker Zobrazenie posledných príspevkov

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

v PHP, ASP

3

611

15.04.2008 20:36

stenley Zobrazenie posledných príspevkov

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

v Delphi, Visual Basic

1

768

20.07.2009 19:25

Fico Zobrazenie posledných príspevkov

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

v PHP, ASP

6

813

15.05.2008 16:29

jaji Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Vyhľadávanie - otázka

[ Choď na stránku:Choď na stránku: 1, 2 ]

v Správy pre vedenie fóra

45

4810

29.12.2007 5:25

Roberbo Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra