Autor | Zpráva | ||
---|---|---|---|
pe1 Profil * |
#1 · Zasláno: 14. 5. 2006, 14:46:57
Chcel by som sa poradiť ako na podobné vyhľadávanie. Proste mám 5 <option>, z ktorých každé obsahuje iné kritérium. Ako v php urobiť toto vyhľadávanie, alebo mi aspoň naznačte, ako na to. Nejako tak, že výsledok prvého výberu vložiť do premennej a ten následne bude filtrovaný z druhého option atď? ............... Ďakujem
|
||
WertriK Profil * |
#2 · Zasláno: 14. 5. 2006, 15:07:03
Zalezi v cem mate data, pokud v db, je to proste pokud v souborech tak to zalezi jak to tridite.
Napr; Hledat <input type="text" name="text"> v [<select name="z"><option value="clanky">clancich</option>, <option>atp.</option>...] $z = $_POST["z"]; $text = $_POST["text"]; $query = mysql_query("SELECT * FROM ".$z." WHERE neco LIKE '".$text."' "); |
||
pe1 Profil * |
#3 · Zasláno: 14. 5. 2006, 15:17:22
Údaje sú v MySQL. Tabuľka so stĺpcami kraj, mesto, lokalita. Chcem aby boli napr. tri <option> a doplním že jednotlivé kritéria sú v <select> (kraj, mesto, lokalita). To som zabudol napísať :-o. Ďakujem
|
||
Časová prodleva: 5 dní
|
|||
pe1 Profil * |
#4 · Zasláno: 19. 5. 2006, 17:27:25
Nikto mi s tým nevie helfnúť?
|
||
WertriK Profil * |
#5 · Zasláno: 19. 5. 2006, 18:42:19
Takze ty chces vypsat z mysql data a udelat z toho <option> ?
Ze vypises napr. sloupec kraj; <select name="kraj"> <option value="1">Jihomoravsky</option> <option value="2">n2</option> <option value="3">n3</option> .. </select> Potom vypises sloupec mesto; <select name="mesto"> <option value="1">Mikulov</option> <option value="2">n2</option> <option value="3">n3</option> .. </select> Je to co chces ? |
||
pe1 Profil * |
#6 · Zasláno: 19. 5. 2006, 20:56:03
ako doplním select, aby po zadaní napr. dvoch hodnot nevypísalo obydve ale naozaj len výber v tomto prípade napr. mesto s hodnotou 1 a kraj s hodnotou 2 ???????????????????????
select * from prehlad where (kraj like '" . $_POST["kraj"] . "') čo tu doplniť aby to fungovalo (mesto like '" . $_POST["mesto"] . "') order by datum desc |
||
pe1 Profil * |
#7 · Zasláno: 20. 5. 2006, 08:22:35
Ak bude niekto o niečom vedieť, tak dajte prosím vedieť.
|
||
Retal Profil |
#8 · Zasláno: 20. 5. 2006, 23:04:16
Vůbec mi není jasné, čeho chceš docílit a kde je problém.
|
||
pe1 Profil * |
#9 · Zasláno: 22. 5. 2006, 17:40:02
ide mi o niečo takéto
http://www.reality.sk/DetailSearch.aspx proste 5 <options>, ktorými by som chcel vybrať údaje z db MySQL a zobraziť ich. Dík |
||
pe1 Profil * |
#10 · Zasláno: 22. 5. 2006, 17:41:03
|
||
Retal Profil |
#11 · Zasláno: 22. 5. 2006, 18:01:24
Aha. V tom případě
čo tu doplniť aby to fungovalo = AND :) Ale rozhodně nedoporučuju vkládat proměnné z POSTu neošetřené do db-dotazu. |
||
pe1 Profil * |
#12 · Zasláno: 22. 5. 2006, 18:26:04
$sel=mysql_query("SELECT * FROM $tabulka WHERE (kategoria LIKE '". $_POST["kategoria"] ."') AND (nehnutelnost LIKE '". $_POST["nehnutelnost"] ."') AND (mesto LIKE '". $_POST["mesto"] ."') ORDER BY id DESC");
žiadny výstup :-(. |
||
pe1 Profil * |
#13 · Zasláno: 22. 5. 2006, 18:41:43
Asi som to zle vysvetlil. Kazdy inzerat ma hodnotu "kategoria", "nehnutelnost", "mesto". Potrebujem aby:
pre vyber z kategorie bude vystup napr. "predaj" pre vyber z nehnutelnosti bude napr. "byt", ktory uz ale nemusi byt kategorie "predaj", ale "kúpa". Pri takomto zadaní potrebujem aby sa zobrazil výstup vyfiltrovaný nie oba. |
||
Retal Profil |
#14 · Zasláno: 22. 5. 2006, 18:46:50
V tom případě OR místo AND. :)
|
||
pe1 Profil * |
#15 · Zasláno: 22. 5. 2006, 19:00:33
ne nie je to to čo potrebujem.
jednoducho ešte raz: inzerat 1: kategoria (predam), nehnutelnost(byt), mesto(Žilina) inzerat 2: kategoria (kupim), nehnutelnost(byt), mesto(Banská Bystrica) inzerat 3: kategoria (vymenim), nehnutelnost(dom), mesto(Žilina) ked vyberiem <option>Žilina tak vypíše inzeráty podľa kategórie "mesto" (to funguje OK) ako náhle vyberiem <option>Žilina a <option>byt tak potrebujem, aby to vypisalo len inzerat 1 a pod., nie aj inzerat 2 a 3 kde je hodnota nehnutelnosti (byt) a mesto (Žilina) Asi to bude zložitejšie. Potrebujem len nakopnúť, akým spôsobom to urobiť. |
||
Anonymní Profil * |
#16 · Zasláno: 22. 5. 2006, 19:34:54
$sel=mysql_query("SELECT * FROM $tabulka WHERE (kategoria LIKE '". $_POST["kategoria"] ."') AND (nehnutelnost LIKE '". $_POST["nehnutelnost"] ."') AND (mesto LIKE '". $_POST["mesto"] ."') ORDER BY id DESC");
žiadny výstup :-(. Já myslím že to máš dobře, pokud je tedy vše uloženo v jedné tabulce a správně nastaveny hodnoty. Problém je, že musí platit všechny podmínky zároveň, takže pokud neexisuje kombinace předaná přes vybrané seznamy, nezobrazí se žádný výstup. Pokud máš možnost vybrat v seznamu "nic" tak se taková kombinace asi nenajde nikdy:-D Ale takhle těžko říct kde vězí problém... |
||
krteczek Profil |
#17 · Zasláno: 22. 5. 2006, 20:22:12
doporučuji v tabulce vytvořit duplicitní sloupečky k položkám které získáváš z $_POST, takže máš například sloupec kraj a v něm názvy krajů a k němu vytvoř sloupec md5_kraj a ulož do něj md5 hash názvu kraje. select potom můžeš dělat následovně:
select * from tabulka where hash_kraj='".md5($_POST['kraj'])."' "; Ted k tomu co ty vlastně potřebuješ:-) máš formulář a podle toho jak je vyplněn potřebuješ sestavit dotaz. řešil bych to nějak takhle:
krteczek |
||
Časová prodleva: 4 dny
|
|||
pe1 Profil * |
#18 · Zasláno: 26. 5. 2006, 14:38:14
Díky krteczek za namahu, ale trochu tomu nerozumiem. Ak by sa ti chcelo hodiť nejake vysvetlenie tak budem vďačný.
|
||
pe1 Profil * |
#19 · Zasláno: 26. 5. 2006, 15:47:21
Vedel by som sa odvdacit aj financne, ak ten script bude funkcny.
|
||
krteczek Profil |
#20 · Zasláno: 26. 5. 2006, 15:49:39
pe1: icq 337913080 ale budu tu tak za dve hodky, musim do mesta
krteczek |
||
Časová prodleva: 15 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0