Kontrola přečtení obsahu stránky – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Kontrola přečtení obsahu stránky – PHP – Fórum – Programujte.comKontrola přečtení obsahu stránky – PHP – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Tereza
~ Anonymní uživatel
14 příspěvků
6. 11. 2013   #1
-
0
-

Ahoj, potřebovala bych prosím poradit. Mám uživatele, u kterého se po přihlášení ukládá do databáze datum posledního přihlášení. Potom mám objednávky, u kterých je uloženo datum vytvoření. Chtěla bych, aby se uživateli po přihlášení zobrazilo upozornění jestli jsou nějaké nové objednávky. Mám udělanou kontrolu, zda je datum posledního přihlášení menší jako datum zadání objednávky, a na základě toho se uživateli zobrazí upozornění na novou objednávku. Potřebovala bych ale, aby se po přečtení objednávky upozornění už neukazovalo. Nějaký nápad jak toto udělat? Děkuji.

Nahlásit jako SPAM
IP: 90.176.130.–
Reklama
Reklama
Ericsko+3
Stálý člen
6. 11. 2013   #2
-
0
-

K objednavke si ulozis informaciu do db (napr. stlpec `zobrazene`), pripadne ak mas viac uzivatelov, co to mozu vidiet, tak nejaku tabulku (napr. zobrazene_objednavky), kde ulozis pary many to many relacie, napr:

Tabulka zobrazene_objednavky:

  id_objednavky (int)
  id_uzivatela (int)
  timestamp (datetime)

Potom ostava uz iba nieco ako:

SELECT * FROM objednavky WHERE id NOT IN (SELECT id_objednavky FROM zobrazene_objednavky WHERE id_uzivatela = $id_uzivatela)
 

Nahlásit jako SPAM
IP: 87.197.170.–
Tereza
~ Anonymní uživatel
14 příspěvků
6. 11. 2013   #3
-
0
-

#2 Ericsko
to zní dobře. Mám pouze 2 uživatele, kteří si objednávky můžou přečíst. Ale v tabulce zobrazene_objednavky, se bude pokaždé id_uzivatele přepisovat když si objednávku přečte jiný uživatel? 

Nahlásit jako SPAM
IP: 90.176.130.–
Ericsko+3
Stálý člen
6. 11. 2013   #4
-
0
-

#3 Tereza
Nie, predpokladam, ze objednavka bude stale nova nie?

Teda v tabulke precitane vzdy pribudne novy zaznam pre kazdu objednkavku aj kazdeho uzivatela. Aj s datumom a casom, kedy to precital.

Nahlásit jako SPAM
IP: 87.197.170.–
Tereza
~ Anonymní uživatel
14 příspěvků
6. 11. 2013   #5
-
0
-

#4 Ericsko
ajo jasně, už chápu. No momentálně to mám funkční pro jednoho uživatele, ale s tím, že nemám zvlášť tabulku přečtené objednávky, ale mám v tabulce objednávky sloupec "přečteno". Teď to ještě nějak dát dohromady, aby to fungovalo i s tím druhým uživatelem :)

Nahlásit jako SPAM
IP: 90.176.130.–
Tereza
~ Anonymní uživatel
14 příspěvků
7. 11. 2013   #6
-
0
-

ještě mám takový asi hloupý dotaz. Když budu chtít, aby se uživateli po přihlášení zobrazilo, že má nové objednávky, tak stačí něco takového SELECT * FROM objednavky WHERE id NOT IN (SELECT id_objednavky FROM zobrazene_objednavky WHERE id_uzivatela = $id_uzivatela)  ?  a potom zjistím počet řádků a podle toho mu napíšu kolik má nových objednávek. Původně jsem tam totiž měla porovnávání data zadání objednávky a data posledního přihlášení uživatele, ale to už asi nebude potřeba že? 

Nahlásit jako SPAM
IP: 90.176.130.–
Ericsko+3
Stálý člen
7. 11. 2013   #7
-
0
-

#6 Tereza
Na to treba pouzit count(*)

teda: 

SELECT count(*) as pocet FROM objednavky WHERE id NOT IN (SELECT id_objednavky FROM zobrazene_objednavky WHERE id_uzivatela = $id_uzivatela)

Nahlásit jako SPAM
IP: 87.197.170.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 53 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý