Haluaisin scriptin, joka helpottaisi pitkasta listasta () valitsemista. Osaisiko kukaan kommentoida scriptia, joka on sivun LOPUSSA sivulla: http://www.activewidgets.com/javascript.forum.121.3/incremental-search.html
Kopioin kaiken tekstin yhdeksi html-sivuksi ja sain toimimaan. Mutta miten saisin lisattya tuon toiminnallisuuden suht helposti usealle sivulle? Eli haluaisin siirtaa tagien valisen osuuden erilliseen tiedostoon, mutta entas kun haluaisin myos poimia listan sisallon tietokannasta (php&mysql).. Voisinko "koota" scriptin jotenkin yhdeksi funktioksi tms jota voisin kutsua lyhyesti kultakin sivulta ja antaa kutsussa jonkin sortin pointterin tms tietokannasta poimittuun listan sisaltoon?
Onko oheinen scripti ylipaataan paras tai edes kohtalainen tapa toteuttaa incremental search?
incremental search
4
646
Vastaukset
- tarkentaa
Incremental search tarkoitaa hakua joka antaa tulokseksi (tavallisesti) enemmän kuin yksi kenttä (kuten hakisit puhellinluettelosta kaikki joiden sukunimet alkavat "Nie" (Niemi, Anne, Niemi, Ville, Nieminen, Jussi jne).
Ainoa järkevä tapa implementoida suurta tietomäärää on tietokannan avulla, jos se tulee verkkosivuille valinta on todennäköisesti mySQL.
Millainen SQL-haku (query) sinun pitäisi tehdä en voi kertoa koska kysymyksesi ei sisällä tarvittavat tiedot.
Haku tuloksena saat record-setin, jonka purku tapahtuu kenttä kerrallaan. Oikea työkalu tähän on php (tai asp, perl, c...). Javaskriptin käyttö on vähän samaa kun poistaisi viisaudenhampaat peräaukon kautta.
Miksi?: Javaskript on tulkkaava (hidas) ja se suoritetaan sinun koneellasi (tiedon siirto verkon yli tekee siitä vielä hitaampi). Vaikka se teknisesti olisi mahdollista, sovelluksesta tulee hidas (kuten noista linkkisi vastauksista varmasti jo luit)
Eli käytä php ja mySQL niin sinulla ei pitäisi olla mitään ongelmia. Jos haluat yksityikohtaisemman vastauksen, muoteile kysymyksesi uudestaan siten että paremman vastauksen antaminen on teknisesti mahdollista. (En jaksa yrittää arvailla mitä sinä loppujen lopuksi yrität tehdä, jos minä jaksan kirjoittaa vastauksen niin sinä myös jaksat muotoilla kysymyksesi!)- lisää tietoja
Jos haluat tehdä monivalinta selaimellasi, luo phpllä kaavake (form) johon tulostat kaikki kentät. Jokaisen kentän kohdalle luot valinta-painikkeen (button type=checkbox, id=xxx tai name=xxx). id:t tarvitset sen takia että php:ssä tiedät mikä kenttä on kyseessä. Lopuksi painike button type=submit.
Sen jälkeen käsittelet kaavakkeen sisältöä php:ssä.
Verkosta löytyy tuhansia esimerkkejä tuollaisista sovelluksista (verkkokauppa ym).
- lisssu
Ok, yritan selittaa paremmin. Eli haluan webbisivulle "drop down" valikon (tehdaan :lla), jossa on pitka lista valittavia (vaikkapa noin 50 sukunimea aakkosjarjestyksessa). Koska on jokseenkin hankalaa valita noin pitkasta listasta, ajattelin helpottaa valintaa siten, etta valitsija voisi antaa pari ekaa kirjainta ja lista lyhenisi vastaavasti (painamalla "v" tulisi kaikki v:lla alkavat nimet, "vi" antaisi virtaset jne). Lisaksi sukunimien lista haettaisiin aina tietokannasta (kulloinkin mahdollisen setti nimia).
Minulla on kaytossa mysql ja php, osaan hakea tiedot ja tehda valikon :lla. Hakuosuus eli listan asettainen lyheneminen pitaisi kuitenkin varmaan tehda javascriptilla, koska sita tarvitsee sivun kayttaja (enka mina joka vain haen valittaviksi kaikki nimet tietokannasta). Sen(kin) opiskelussa olen kuitenkin aivan alussa, joten etsin ja loysin valmiin koodin patkan johon annoin linkin aiemmin (http://www.activewidgets.com/javascript.forum.121.3/incremental-search.html)
mutta en taida osata ottaa sita oikein kayttoon. Enka arvioida onko se ok (scriptin kirjoittaja sanoo olevansa eka kertaa asialla..). Eli kysymyksia taitavammille:
1) Onko javascripti oikea toteutustapa tuohon? Tuskin kannattaa hakea joka kerta tietokannasta vaan haku kohdistuisi kerran tietokannasta haettuun joukkoon.
2) Onko oheinen scripti nopeasti katsottuna ok (toimii kylla) vai onko joku muu tapa (vaikka valmis funktio javascriptissa tms)?
3) Oheisessa scriptissa valittava lista (sukunimet) on yhden javascriptin funktion sisalla, miten saan tiedot sinne tietokannasta? Sotkenko php:ta javascriptin sekaan vai yritanko muokata funktiota siten, etta jonkun sortin pointteri listaan (sukunimiin) annettaisiin funktiota kutsuttaessa sivulta?
Luulisin etta joku on helpostikin tormannyt samaan ongelmaan, miten muut ovat sen ratkaisseet?- lisssu
Taisin pyytaa liikoja, eli selvittelen sita joskus kun taitoni javascriptista ovat karttuneet ja yritan parjata siihen saakka ilman k.o. toimintoa. Kiitos vastaamista yrittaneille!
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Kansalla on oikeus tietää miksi persut pettävät
Koko kulunut hallituskausi on kysytty persuilta, minkä vuoksi he ovat pettäneet käytännössä jokaisen vaalilupauksen, ain2489291Kunnissa - siis myös kaupungeissa - viihtyvät ovat kommunisteja
Nehän ovat osa yhteiskunnan tuottamia instansseja, joista on vain haittaa veronmaksajille ja yrittäjlle, kuten ollaan ve42785Kansalla on oikeus tietää mikä on SDP:n talousohjelma jolla maan talous
saadaan nousuun? Miksi puolue piilottelee sitä, vai eikö sitä ole? Tähän asti olemme vaan saaneet kuulla hallituksen ha1041899Ammattiliitto 900 euroa/vuosi - Työttömyyskassa 72 euroa/vuosi
Ammattiliitosta eroamalla voi säästää jopa 800 euroa vuodessa. Mitä enemmän tienaat, sitä enemmän maksat liitolle. Esim1991893- 1391391
SDP todellisuudessa pahin pettäjä koskaan - se syyllistyi valtiopetokseen 1918
kun aloittivat kapinan maan laillista valtiojärjestystä vastaan. Punaiset saivat tukea Neuvosto-Venäjän bolsevikeilta,601377Iski taas katumus kun en jutellut sun kanssa
Silloin kun halusit. Mutta en enää voi sille mitään, en saa muutettua sitä hetkeä..1281296Kyriake=Kirkko
Kirkko, Kyriake Kirkko-sana tulee kreikankielen sanasta Kyriake=Herran omat, Kristuksen omaksi kastettujen suuri joukko931006- 64855
- 40818