Zadejte hledaný výraz...

MySQL – posta – upozornenie novej spravy

monty
verified
rating uzivatele
17. 2. 2008 12:05:26
Momentalne robim postu pre uzivatelov, len chcem teraz spravit ze ked pride nova sprava tak sa v menu zvyrazni polozka Posta pripadne napise ze prisla nova.
Len teraz ako to najvyhodnejsie spravit?
Pri kazdej nacitanej stranke kontiorlovat ci je nova sa mi zda dost namahave pre server nie?
Ja som rozmyslal, ze si vytvorim $_SESSION kde dam hodnotu time(); a budem to trebars kontrolovat kazdych 5 minut, co vy nato?
Na webtrhu su dobri z databaz, tak verim, ze mi rozumne niekto poradi.
Dakujem.
17. 2. 2008 12:05:26
https://webtrh.cz/diskuse/mysql-posta-upozornenie-novej-spravy/#reply45007
miniJOHN
verified
rating uzivatele
(57 hodnocení)
17. 2. 2008 12:13:48
Akorát přidáš do tabulky user sloupeček s názvem new_mail
id|user|...|new_mail
1 |miniJOHN|..|1
Vlastně sloupec new_mail bude moc mít jenom 1 nebo 0(true or false) a to bude značit, jestli má novou poštu.
To je jeden mysql příkaz a pokud máš dobře indexy tabulky atd, tak to bude v pohodě.
17. 2. 2008 12:13:48
https://webtrh.cz/diskuse/mysql-posta-upozornenie-novej-spravy/#reply45006
monty
verified
rating uzivatele
17. 2. 2008 12:18:53
Napsal miniJOHN;35178
Akorát přidáš do tabulky user sloupeček s názvem new_mail
id|user|...|new_mail
1 |miniJOHN|..|1
Vlastně sloupec new_mail bude moc mít jenom 1 nebo 0(true or false) a to bude značit, jestli má novou poštu.
To je jeden mysql příkaz a pokud máš dobře indexy tabulky atd, tak to bude v pohodě.
Toto mi je jasne, ze 1 a 0 ale mne islo o nieco ine. Ci kontrolovat novu psotu po kazdej nacitanej stranke alebo za nejaky casovy limit.
A ake indexy? O tom ja moc neviem, povies mi?
17. 2. 2008 12:18:53
https://webtrh.cz/diskuse/mysql-posta-upozornenie-novej-spravy/#reply45005
miniJOHN
verified
rating uzivatele
(57 hodnocení)
17. 2. 2008 12:28:25
Ok, jasně, jsem myslel, že myslíš(heh), že budeš mít tabulku mail(v ní všechny zprávy, kdo kdy jaké poslal) a zní budeš vybírat jestli má určitý uživatel novou zprávu nebo ne.
Indexy
Dejme tomu, že máme tabulku o uživatelech.
id|nick|e-mail|vek|adresa|telefoni_cislo|url|popis|sex
Máš to seřazené podle ID, ale pošleš mysql příkaz, na vybrání uživatele s nickem monty, tj musí to procházet všechny záznamy, než to "mounty" nenajde.
Index to je vlastně další tabulka, kde jsou záznamy podle něčeho seřazeny, třeba když si nastavíš index na nick, tak se vytvoří tabulka(kterou ty ale nevidíš), kde budou všechny záznamy seřazeny podle abecedy, takže když to bude chtít najít monty, tak to nebude muset všechno procházet, ale rovnou to skočí na písmenko monty a najde si to tě.
Snad jsi to pochopil...
17. 2. 2008 12:28:25
https://webtrh.cz/diskuse/mysql-posta-upozornenie-novej-spravy/#reply45004
monty
verified
rating uzivatele
17. 2. 2008 12:34:46
Napsal miniJOHN;35183
Ok, jasně, jsem myslel, že myslíš(heh), že budeš mít tabulku mail(v ní všechny zprávy, kdo kdy jaké poslal) a zní budeš vybírat jestli má určitý uživatel novou zprávu nebo ne.
Indexy
Dejme tomu, že máme tabulku o uživatelech.
id|nick|e-mail|vek|adresa|telefoni_cislo|url|popis|sex
Máš to seřazené podle ID, ale pošleš mysql příkaz, na vybrání uživatele s nickem monty, tj musí to procházet všechny záznamy, než to "mounty" nenajde.
Index to je vlastně další tabulka, kde jsou záznamy podle něčeho seřazeny, třeba když si nastavíš index na nick, tak se vytvoří tabulka(kterou ty ale nevidíš), kde budou všechny záznamy seřazeny podle abecedy, takže když to bude chtít najít monty, tak to nebude muset všechno procházet, ale rovnou to skočí na písmenko monty a najde si to tě.
Snad jsi to pochopil...
Fajn troska chapem, dakujem.
Teraz k tej poste, mam 2 tabulky
spravy(id, predmet, sprava)
spravy_proces(id, idsprava, od, komu, datum, precitana, videna, ...a ine nepodstatne)
A kde by sa hodilo tu vytvorit index?
A mam kontrolovat nove stale alebo iba po nejakom case?
17. 2. 2008 12:34:46
https://webtrh.cz/diskuse/mysql-posta-upozornenie-novej-spravy/#reply45003
miniJOHN
verified
rating uzivatele
(57 hodnocení)
17. 2. 2008 12:39:15
Já bych to kontroloval stále...
Ale dovolil bych si ty tvoje tabulky trochu změnit
spravy_proces(id, idsprava, od, komu, datum, precitana, videna, ...a ine nepodstatne) <--toto by zustalo stejne
spravy_videny(id(id spravy),id_uzivate(id uzivatele)) <-- to nevim, jak jsi to myslel, ale kdyz uz, tak takhle ...
Budes pokazdy kontrolovat jestli aktualni id ma nejakej zaznam v spravy_viden pokud ano, tak to vypise Mate novou zpravu(a smaze se ten radek stim), pokud ne, tak nic
Upozornuji, ze tak bych to delal ja, nejsem profesional!
17. 2. 2008 12:39:15
https://webtrh.cz/diskuse/mysql-posta-upozornenie-novej-spravy/#reply45002
monty
verified
rating uzivatele
17. 2. 2008 12:46:53
Napsal miniJOHN;35187
Já bych to kontroloval stále...
Ale dovolil bych si ty tvoje tabulky trochu změnit
spravy_proces(id, idsprava, od, komu, datum, precitana, videna, ...a ine nepodstatne) <--toto by zustalo stejne
spravy_videny(id(id spravy),id_uzivate(id uzivatele)) <-- to nevim, jak jsi to myslel, ale kdyz uz, tak takhle ...
Budes pokazdy kontrolovat jestli aktualni id ma nejakej zaznam v spravy_viden pokud ano, tak to vypise Mate novou zpravu(a smaze se ten radek stim), pokud ne, tak nic
Upozornuji, ze tak bych to delal ja, nejsem profesional!
Podla mna staci datat select * from proces kde videna=0 and komu=monty
nie?
17. 2. 2008 12:46:53
https://webtrh.cz/diskuse/mysql-posta-upozornenie-novej-spravy/#reply45001
miniJOHN
verified
rating uzivatele
(57 hodnocení)
17. 2. 2008 13:05:59
Ano, promin...tim budes jenom vybirat, jestli ma novou zpravu?
tak to staci select COUNT(id) from proces kde videna=0 and komu=monty
17. 2. 2008 13:05:59
https://webtrh.cz/diskuse/mysql-posta-upozornenie-novej-spravy/#reply45000
jirin
verified
rating uzivatele
(5 hodnocení)
17. 2. 2008 17:54:57
Count je ale pomala funkce celkem, myslim, ze by bylo lepsi zvolit vyber id, a pak to spocitat jako pole.
Count jsem ale nezkousel merit, jen jsem to slysel, takze no flame ;)
17. 2. 2008 17:54:57
https://webtrh.cz/diskuse/mysql-posta-upozornenie-novej-spravy/#reply44999
miniJOHN
verified
rating uzivatele
(57 hodnocení)
17. 2. 2008 18:01:13
Záleží, jaká je tabulka atd....
Někdy je rychlejší to, jindy ono.
Kdy je co, to nevím, ale nejlepší je to zkust.
17. 2. 2008 18:01:13
https://webtrh.cz/diskuse/mysql-posta-upozornenie-novej-spravy/#reply44998
Pro odpověď se přihlašte.
Přihlásit