Eredmény: 1 - 4 (4) összesen

Téma: kereses

  1. #1
    Új tag
    Csatlakozott
    08-09-26
    Hozzászólás
    9
    Begyűjtött 0 köszönetet
    0 hozzászólásával

    Alapbeállítás kereses

    lenne egy kerdesem ami a php-t is meg az adatbazist is erinti, koktelokra akarok recepteket csinalni amik mysql-ben lesznek tarolva, a kresesben meglessz az osszesz ital amik szerepelnek a receptekben, es ha valaki keresni akar akkor csak bejeloli mi van neki othon es csak azokat a recepteked mutassa meg neki amiket tud keverni abbol ami van neki othon. most jon a kerdes gondolkodok ahogy gondolkodok nem tudom hogy tervezni az adatbazist es milyen algoritmussal keresni aztan hogy csak azt keresse amit tud keverni abbol amit bejelolt.



  2. #2
    Törzsvendég MKarcsi logója
    Csatlakozott
    08-04-04
    Hely
    Budakeszi || Szolnok
    Hozzászólás
    103
    Begyűjtött 0 köszönetet
    0 hozzászólásával

    Mosoly re: kereses

    Szia!

    Neten láttam egy megoldást, pedig csak koktélösszetevőkre akartam keresni, hogy ne tűnjek túl analfabétának

    h^^p://koktel.idea.hu/gazdasagos-koktelozas/

    Ők gondolom úgy oldják meg, hogy az adminban a koktélok felvételénél is egy ugyanilyen form van és amikor megadod a nevet, képet meg amit akarsz és bejelölöd, hogy mi van benne és mi nem, legenerálja az összetevőket egy 0,1-est tartalmazó varchar-ra és az összetevőknél ezt tárolja az adatbázisban. Pl. itt a Bronx Dry, amihez kell gin, száraz vermut és narancslé:
    0100001000000010000000

    Keresésnél meg ugyanazt az összetevős formot teszed ki, hogy a 0,1-k sorrendje azonos legyen és szintén legenerálod a számsort. Tag bejelölgeti milye van és az is ad egy ilyet (mindene van, csak narancsleve nem)
    0100001000000000000000

    A user által generált számsoron és az adatbázisban tárolt számsorokon végig mész 1 for ciklussal és megnézed, hogy a koktél számsor 1-i megegyeznek-e, a user számsorának 1-ivel. Ha mindegyik koktél számsor 1-ese benne van a user számsorában ugyanazon a helyen, akkor összetudja állítani az italt.
    Ezzel a megoldással még azt is meg tudod mondani, hogy mennyi összetevő kéne egy másik koktél elkészítéséhez és mik ezek.

    Aztán valahol lesz egy tömböd, hogy pontosan tudd hanyadik szám mit jelent
    $osszetevok = array("Gin", "Narancslé", "Vodka", ...) és ahol ciklikusan összehasonlítod a meglévő és szükséges összetevőket és stimmelnek, akkor kiíratod, hogy $osszetevo[$i] megvan neki. Túl sokat vagy szájbarágósan írtam akkor bocsi, remélem tudtam segíteni.



  3. #3
    Bölcs huncyrus logója
    Csatlakozott
    07-04-26
    Hely
    EU :)
    Hozzászólás
    519
    Begyűjtött 4 köszönetet
    4 hozzászólásával

    Alapbeállítás re: kereses

    teljesen korrekt amit irtál.

    talán még lehetne úgy is, hogy a táblában egy text mezőben tárolodik le a koktél tartalma, mondjuk vessszővel vagy bármivel elválasztva, csak be vannak irva oda elválasztva az alkotoelemek, h pezsgő, uborka, narancs, vodka...

    és amikor keresel akkor php átnyálazza a text mezőt összehasonlítva a bevitt adatokkal, hogy melyikben van meg mind. és azt listázza.

    tehát ugyanazt irtam mint fentebb csak pepitában...


    Cyrusmagus.hu - Informatika, Fantasy, Blog, Irások

  4. #4
    kow
    kow nem elérhető
    KowDerMei$ter kow logója
    Csatlakozott
    07-05-09
    Hely
    Budapest
    Hozzászólás
    1.447
    Begyűjtött 0 köszönetet
    0 hozzászólásával

    Alapbeállítás re: kereses

    3 tábla kell hozzá:

    Koktelok (tárolja a koktél fő jellemzőit, elkészítés módját, stb. )
    Osszetevok (id és az összetevő megnevezése )
    Switch ( id, koktelID, osszeteviID )

    Keresés összetevőre: kiválasztod az összetevőket a 2. táblából és azok ID-jaival keresel a switch táblában, majd azok ID-jait kéred le a koktélok táblából. Ez 1 sql lekérdezésben is meg lehet írni (subquerykkel vagy joinokkal).

    Koktélhoz kilistázni az összetevőket: az előző logika fordítva.

    UPD.: most nézem az idea-s linket, az összetevők kaphatnak még kategoriaID-t is.


    Utoljára módosítva: kow által : 2008-09-27 10:27

A téma címkéi:

Könyvjelzők

Hozzászólás szabályai

  • Új témákat nem hozhatsz létre
  • Válaszokat nem küldhetsz
  • Fájlokat nem csatolhatsz
  • A hozzászólásaidat nem módosíthatod
  •