Álláshirdetések adatlistázása három kapcsolódó táblával
Sziasztok! Egy álláshirdető oldalt csinálok, és listázni szeretném az adatbázisba(MYSQL) található hirdetéseket, a következőképpen.
Az adatbázisom:
1. tábala: a hirdetők adatai
2. tábla: a hirdetések
3. tábla: a állás tipusa
Ha valaki felvisz egy hirdetést, meg kell adni, az állás tipusát, amit beírok az "állás tipusa" táblába, és a "hirdetések" táblába is.
A kérdésem: ha több állás tipust is kiválasztanak, azt hogy tudom lekérni?
■ Az adatbázisom:
1. tábala: a hirdetők adatai
2. tábla: a hirdetések
3. tábla: a állás tipusa
Ha valaki felvisz egy hirdetést, meg kell adni, az állás tipusát, amit beírok az "állás tipusa" táblába, és a "hirdetések" táblába is.
A kérdésem: ha több állás tipust is kiválasztanak, azt hogy tudom lekérni?
kapcsoló tábla
Pl: hirdetesed azonosítója: 23
lakas hirdetes azonosítója: 12
irodahelyseg azonosítója: 45
akkor a kapcsoló táblába felveszel egy 23-12 es egy 23-45 párt is.
Lekérdezni meg úgy tudod, hogy megvan gondolom a tipus azonosítója es akkor:
select hirdetes.cim, hirdetes.szoveg FROM hirdetes, hirdetes_tipus WHERE (hirdetes.id = hirdetes_tipus.hirdetes_id) AND (hirdetes_tipus.tipus_id = ITT_A_TIPUS_KODJA)
Erre gondoltál?
SELECT * FROM tábla WHERE allastipus = '1' OR allastipus = '2'
Ilyesmire gondoltál?
Üdvözlettel: Liebig Zsolt
SWEN Internet
Ezt már próbáltam
Erről az oldalról van szó
Az oldal még nem működik, de a részletes keresést meg tudod nézni. Ott van, hogy hely szerinti, és hirdető cég szerinti keresés. A várost is úgy csináltam, hogy ha felvisznek egy hirdetést, meg kell adni azt hogy, melyik városba van a munka. Ezt beírom a hirdetések táblába, ill a város táblába. A város táblába csak 1 oszlop van, a város nevével!
Minek kell a város tábla?
Ezen túl pedig értelmetlen redundancia lesz az adatbázisban ami soha nem jó.
A város tábla adatait egy egyszerű kóddal a hírdetések táblából is lekérdezheted.
select distinct varos from hirdetesek
azt hiszem ez mysql-ben is elnyomja az ismétlődést
ha nem akkor meg egy pár soros php kóddal ugyanezt megteheted.
Hogy listázom?
select * from hirdetesek WHERE varos='első város' or varos='masodik város' ... stb ezt használom abban az esetben, ha fix adatokkal dolgozom. De ebben az esetben nem tudom hogy hány város van az adatbázisban megadva!
Megoldás
implode
Kössz mindenkinek a segítséget!
Így iratom ki a városokat, és a fenti kóddal olvasnám ki, a hozzá tartozó többi adatot! Azt nem tudom, hogy csináljak a lenti kódból tömböt, hogy átküldhessem a fenti kódnak:)
Tehát
akkor
nem tudom, ez mennyire szép megoldás
Poetro