Autor | Zpráva | ||
---|---|---|---|
Tomasekkk Profil * |
#1 · Zasláno: 17. 12. 2011, 21:08:41
Ahoj, měl bych dotaz.
Dělám jednu aplikaci pro zakázky. Po vyplnění formuláře, kde zadám kód "operace" např. BET01S (start) nebo BET01K (konec), se mi každý tento kód zapíše do databáze s aktuálním datem a časem, do dalšího sloupce se zapíše kód S nebo K, aby se rozlišilo i to, zda-li se jedná o zahájení nebo ukončení úkonu - operace a tři první písmena znamenají zkratku úkonu (např. BET - betonování). Rád bych přes tento formulář ověřil, zda-li zaměstnanec má tuto operaci již zahájenu, pokud ano, tak jí smí jen ukončit přes BET01K, toto mi funguje přes dotaz mysql_query("SELECT idzakazky FROM operace WHERE idzakazky='".addslashes(jobsysidzakazky)."' AND idzamestnance='".addslashes($_SESSION["jobsysidzamestnanec"])."' AND idoperace='$zkratka_operace' AND typoperace='$zahajeni_ukonceni_operace' AND zobrazit='1'"); tedy např. mysql_query("SELECT idzakazky FROM operace WHERE idzakazky='ZA201101' AND idzamestnance='11' AND idoperace='BET' AND typoperace='Z' AND zobrazit='1'"); Pokud tedy toto ověření mám, podaří se ověřit, zda-li nechce znovu operaci zahájit nebo znovu ukončit když je již ukončena. Potřeboval bych, ale to, aby se mi ověřilo, že operace v zakázce byla zahájena a ukončena a díky stejnému kódu by se dala opět zase zahájit a pak zase ukončit. Lze to nějakým složeným SQL dotazem? Nevím, zda-li jste pochopili co mám na mysli, kdyby něco mohu upřesnit. Děkuji Vám ... Tomáš |
||
Tori Profil |
#2 · Zasláno: 18. 12. 2011, 15:23:54
Tomasekkk:
„Potřeboval bych, ale to, aby se mi ověřilo, že operace v zakázce byla zahájena a ukončena a díky stejnému kódu by se dala opět zase zahájit a pak zase ukončit.“ Co se v takovém případě děje v DB - vložit nový záznam (takže kombinace BET-01 bude vícekrát), nebo update starého a vynulování času ukončení? Možná by stačilo ukládat operaci (BET), pořad.číslo (01), čas zahájení, čas dokončení a ID zaměstnance, a nedokončené operace se rozliší podle "WHERE casDokonceni = NULL"? |
||
Tomasekkk Profil * |
#3 · Zasláno: 18. 12. 2011, 16:21:10
Právě, že čas ukončení se nulovat nebude moci :-( Teď mě to navedlo na dobrou věc s tím casdokonceni, když bude pomocí K ukončen, zapíše se do sloupecku 1 a tím pádem toto rozliším. Myslel jsem, že by se to dalo udělat i pomocí složeného SQL, ale toto bude asi nejlepší. Děkuji
|
||
Časová prodleva: 12 let
|
0