Autor | Zpráva | ||
---|---|---|---|
luihui Profil |
#1 · Zasláno: 6. 10. 2013, 23:05:07 · Upravil/a: luihui
Dobrý den
Mám tabulky: databaze (id,pozvanka,email) shlednuto(id_prispevku,id_uzivatele,vyplata,rok_mesic,datum) clanky(id,nadpis) vyplaceno(id,vyplatit,datum,rok_mesic,id_uzivatele,vypla) Potřebuji vytvořit podmínku aby mi vytvořila toto: Mám id aktuálně přihlášeného uživatele a dané $datum. Potřebuji aby se mi vypsali všechny záznamy z "shlednuto" kde je 'id' aktuálně přihlášeného uživatele a 'rok_mesic'=$datum, vzít z každého nalezeného záznamu 'id_prispevku' a vyjmout z "clanky" 'nadpis' a ze "shlednuto" vypsat 'vyplata' a 'datum'. Tzn. na konci potřebuji mít 'datum','vyplata' ze "shlednuto" a 'nadpis' z "clanky" a to vše splňuje to , že id aktuálně přihlášeného uživatele odpovídá 'id_uzivatele' a 'rok_mesic'=$datum. Zároveň potřebuji, aby se program podíval do "databaze" jestli se tam někde rovná 'id' aktuálně přihlášeného uživatele 'pozvanka'. Pokud ano,podívat se zpátky do "shlednuto" a hledat 'id' nalezeného uživatele, který má v 'pozvanka' = 'id' aktuálně přihlášeného uživatele. Tzn. Na konci potřebuji mít 'datum', ze "shlednuto" a ve výstupu dalším kódem zjistit, že se jedná o pozvaného uživatele, tudíž do proměnné zapsat například "pozvánka". Ve zkratce to znamená, že musím mít 'datum', ze "shlednuto" a vědět, že se jedná o pozvaného. To vše musí splňovat, že v databázi hledám ve sloupci 'pozvanka' 'id' aktuálně přihlášeného uživatele , pokud najdu, hledat ve "shlednuto" a vypsat 'datum' a do proměnné , že se jedná o "pozvánku".S podmínkou , že 'rok_mesic'=$datum. A poslední. Hledat ve "vyplaceno" jestli tam není id aktuálně přihlášeného uživatele = 'id_uzivatele'. Pokud ano , vypsat 'datum', 'vyplatit' a pokud bude v 'vypla' 1 nebo 0 tak do proměnné napsat co tam je a do další proměnné napsat, že se jedná o vyplaceno. Toto všechno se musí řadit podle datumu z dvou databází (vyplaceno a shlednuto). Zkusím to pro lepší pochopení napsat ještě takhle : 1. $id=20; $datum=2013.02; $dotaz = mysql_query("SELECT * FROM shlednuto WHERE id_uzivatele = '$id' AND (rok_mesic = $datum ) ORDER BY datum DESC"); while ($vystup = mysql_fetch_object($dotaz)) { $datum = $vystup->datum; $prispevek= $vystup->id_prispevku; $uzivatel= $vystup->id_uzivatele; $vyplata = $vystup->vyplata; $dotaztz = mysql_query("SELECT nadpis FROM clanky where id='$prispevek';"); while ($vystupr = mysql_fetch_object($dotaztz)) { $nadpis = $vystupr->nadpis; } 2. $dotaz = mysql_query("SELECT * FROM databaze WHERE pozvanka = '$id' "); while ($vystup = mysql_fetch_object($dotaz)) { $idd = $vystup->id; $dotaz = mysql_query("SELECT * FROM shlednuto WHERE id_uzivatele = '$idd' AND (rok_mesic = $datum ) ORDER BY datum DESC"); while ($vystup = mysql_fetch_object($dotaz)) { $datum = $vystup->datum; $nadpis="Pozvánka"; }} 3. $dotaz = mysql_query("SELECT * FROM vyplaceno WHERE id_uzivatele = '$id' AND (rok_mesic = $datum ) ORDER BY datum DESC"); while ($vystup = mysql_fetch_object($dotaz)) { $vyplata = $vystup->vyplatit; $datum = $vystup->datum; $vypla = $vystup->vypla; if(vypla== 1) {$vypla="ano";} $nadpis="Vyplacno"; } a toto vše zkombinovat do jedné podmínky. Měl by někdo nápad jak na to? |
||
peta Profil |
#2 · Zasláno: 7. 10. 2013, 10:09:24
A v cem je problem?
id_user UU datum DD SELECT A.vyplata, A.datum, B.nadpis FROM shlednuto A LEFT JOIN clanky B ON B.id_prisp = A.id_prisp WHERE A.id_uzivatel=UU A.rok_mesic=DD |
||
luihui Profil |
#3 · Zasláno: 7. 10. 2013, 11:20:49
Potřebuji ale vše zkombinovat do jedné podmínky.
|
||
Taps Profil |
luihui:
samozřejmě není problém si upravit podmínku WHERE ve skriptu od[#2] peta |
||
luihui Profil |
#5 · Zasláno: 8. 10. 2013, 20:32:27
ok. díky.
|
||
Časová prodleva: 10 let
|
0