jo, u toho stavu 2 by se mel zmenit taky cas
1, franta; koukola, 1, 2015-5-20 15:51 2015-5-20 15:59
Příspěvky odeslané z IP adresy 2001:718:2601:1f7:a946:94...–
Prvne, pises lama, tak ti popisu veci, co mozna znas. Databaze je pro predstavu neco jako slozka se soubory na disku (ve skutecnosti je to cele jeden soubor, ale to je vedlejsi). Soubor v teto slozce se jmenuje tabulka. Ta vypada pro predstavu uplne presne jako tabulka v excelu, ale je jednorozmerna, cili ma zahlavi a pak uz nasleduji data.
cili to vypada treba takto
id, jmeno, prijmeni, status
1, franta; koukola, 1
2, tomas; cerny, 1
3, zdenek, ocasek, 2
Kdyz smazes radek, tak to vypada takto
id, jmeno, prijmeni, status
2, tomas; cerny, 1
3, zdenek, ocasek, 2
Kdyz pak pridas, tak takto
id, jmeno, prijmeni, status
2, tomas; cerny, 1
3, zdenek, ocasek, 2
1, franta; koukola, 1
Coz je pripad, ktery chces docilit. Ted franta bude az po tomasovi.
Totez dosahnes, kdyz tam pridas sloupec s casem a nemusis frantu mazat
Stav 0 - tady se pekne registrovali po sobe
id, jmeno, prijmeni, status, cas
1, franta; koukola, 1, 2014-7-21 9:23
2, tomas; cerny, 1, 2014-11-1 13:45
3, zdenek, ocasek, 2, 2015-5-1 11:04
Stav 1 - zmena skupiny u franty na 2, dnes, prave ted; kdyz to seradis podle statusu ASC, casu ASC, tak bude franta za zdenkem, protoze ma franta stejnou skupinu, ale vetsi cas
id, jmeno, prijmeni, status, cas
1, franta; koukola, 2, 2015-5-20 15:51
2, tomas; cerny, 1, 2014-1-11 13:45
3, zdenek, ocasek, 2, 2015-1-5 11:04
Stav 2 - zmena skupiny u franty zpet na 1, totez, bude za tomasem
id, jmeno, prijmeni, status, cas
1, franta; koukola, 1, 2015-5-20 15:51
2, tomas; cerny, 1, 2014-1-11 13:45
3, zdenek, ocasek, 2, 2015-1-5 11:04
A ted jeste muze nastat problem, kdyz menis stav 1 na stav 1, jestli ma byt na konci nebo takovy prikaz budes ignorovat a zustane pak na svem miste.
Tak, ke tve otazce, co je treba udelat.
- Je treba pridat sloupec do databaze a upravit sql prikazy v tom php kodu pro INSERT, UPDATE a SELECET (viz reseni s novym sloupcem cas).
- NEBO - upravit php kod tak, aby pro zmeny nepouzival sql prikazy UPDATE, ale DELETE a INSERT (viz reseni s mazanim).
Vyber si ktere reseni chces, ale obe znamenaji upravit casti programu, ktere jsi sem nenapsal. Obavam se, ze upravit jen SELECT prikaz nebude stacil, protoze se radky v db nepohybuji, cili se neda zmenit poradi. Ale mozna nekdo zkusenejsi bude vedet.
Pro simulaci cd jako disk adresare se pouzival kdysi virtual-daemon. Ted to myslim jde resit uz systemove, ze si udelas treba disk Z a to bude smerovat na nejaky konkretni disk nebo adresar na disku. Linux to myslim mel nativne dlouho pred win. Ty pak pri instalaci nastavis, ze mas ta uloziste na disku Z a uz te nezajima, zda je to adresar nebo disk.
Tak to se necham prekvapit, az najdu potrebny kod. Ale jsou to dobre poznamky.
Tatka ma prave neco podobne v Dephi. Jenze to je placena vec a nemam to tady. Ma na pc tv a tam na nekterych kanalech vyskoci jakasi hlaska. Coz by bylo ok, kdyz bys pak na ovladaci nemusel hledat mrnavou klavesu Exit. Takze si udelal programek, ktery posila exit do te aplikace, Protoze jinak je to neskodne. Ale to je jiny pripad, u tv je vetsinou nastavene, ze prekryva obraz vsechno. A navic focus je na tu tv, takze nevadi, ze to focusne na ni zas.
Mozna pujde kontrolovat, zda je focus na to okno a kdyz jo, tak nic a kdyz ne, tak z nej focusnout na to jine, na kterem je focus. Ale je fakt, ze to je dost neprijemne. par aplikaci mi to dela, zvlast pri startu win, kdyz naklikam otvirat asi 5 veci. Pisu si takhle pak heslo do jedne a najednou se focusne jina a pisu zbytek hesla do ni :)
Ty ses marny :) Uz v prvnim prispevku jsem se pokousel vysvetlit zhruba oco go. Vim, ze je to nejaky bug, vim, ze by si to mel resit s podporou. Pripadne hledat chybu, proc mu to dela na uplne ciste preinstalovanem pc. Ale proste mne pozadal o to, udelat takovy program.
Zatim jsem nasel simulaci pomoci windows.h . Jsem cekal, ze mi to na plose spusti napovedu a dela to totez jako to qt, spusti mi to F1 uvnitr meho programu
// key pomoci QT
QKeyEvent *event = new QKeyEvent(QEvent::KeyPress, Qt::Key_F1, Qt::NoModifier, "Red", 0);
QApplication::postEvent(this, event);
// key pomoci "windows.h"
// key_codes https://msdn.microsoft.com/…s927178.aspx
#include "windows.h" keybd_event;
keybd_event(VK_F1, 0, 0, 0);
keybd_event(VK_F1, 0, KEYEVENTF_KEYUP, 0);
No, vis, ve QT to pisu od vcera. Moc by bodl priklad kodu pro okno firefox a klavesu F1, treba. Principialne to chapu.
Po vcerejsim celodennim googlovani jsem vyplodil program, co po stisku tlacitka spusti casovac a vyvola klavesu F1 :) Ted uz byva to jen nasmerovat na jine okno.
Potreboval bych prenest event z meho okna do okna jineho programu. Pisu program v QT.
// mainwindow.cpp
//void MainWindow::on_pushButton_clicked()
//{
QKeyEvent *event = new QKeyEvent(QEvent::KeyPress, Qt::Key_F1, Qt::NoModifier, "Red", 0);
QApplication::postEvent(this, event);
//}
- toto vyvola event stisku F1 a odesle jej do me aplikace (this)
- ja bych to potreboval prenest mimo aplikaci, do jine
Vubec netusim, jak na to, zatim. Chystam se to googlovat. Kdyby jste s tim nekdo mel zkusenosti, moc by mi to pomohlo.
Jedna se o to, ze kolegovi se jeden program pri necinnosti okna odhlasuje. Coz je ok. Ale nastane tam nejaka chyba, ze kdyz se pokusi pracovat a je odhlaseny, tak nez se overi, ze neni prihlaseny, tak cely ten program asi 5 min je mrtvej. Pak to slavnostne prohlasi, ze uzivatel neni prihlaseny a nabidne moznost se prihlasit. tak to chce obchazet tim zpusobem, ze v tom okne zmacne nejakou nevinnou klavesu.
On s tim pracuje tak, ze chvili neco hleda. Pak treba 5-20 min dela neco jineho. A chce pokracovat v hledani. A nad nim stoji clovek, ktery to nutne potrebuje a ted oba cekaji, nervozita stoupa....
Podobny princip se da samozrejme uplatnit jako pomocnik pri hrani her, ktery macka klavesy :) Ale to neni ted zamysleny cil.
On se zaradi na stejne misto, protoze razeni v db je podle pridani radku, obvykle. Cili, kdyz se uzivatele registruji po sobe v rade:
1 Franta, 2 Tomas, 3 Zdenek
Tak pri zmene nejakeho policka budou porad v tomto poradi, na veky. Leda bys treba Frantu smazal a vytvoril, pak bude poradi:
2 Tomas, 3 Zdenek, 4 Franta
Pokud te zajima serazeni podle casu zmeny, tak ten cas zaznamenavej do db. Kdyz prestoupi, zmenis mu cas zmeny na aktualni, NOW(). Pocitani casu funguje tak, ze cim novejsi, tim vetsi cislo (pocet sekund do ted od roku 1970)
... ORDER BY status ASC, cas_zmeny DESC
Tak treba phpmyadmin dokaze delat export db. Import je pak slozitejsi, je treba najit jakysi importovaci php program, ktery zvladne vetsi soubory.
Linux ma prikazy pro export databaze, tusim neco jako dump, mysqldump. http://www.computerhope.com/…mysqldum.htm
Teoreticky by stacilo zastavit mysql, zkopirovat ty soubory jinam a nekde zmenit cesty v nejakem configu. Ale myslim, ze spousta lidi takto prisla o databazi.
Premyslel jsi o tom, ze bys to treba udelal jinak? Presunul vse ostatni jinam a nechal ten disk pro mysql?
A jeste se delaji takove finty, ze se udela klon toho disku na jiny, vetsi a pak se rozsiri partition.