dodání ihned! nové
Hledáme programátora do rostoucího týmu ITnetwork.cz, 100% home office, 100% flexibilní pracovní doba. Více informací
Black Friday je tu! Využij jedinečnou příležitost a získej až 80 % znalostí navíc zdarma! Více zde
BF
Avatar
Veronika Kotrcová:16.4.2017 9:19

Ahoj, tvořím docházkový systém formou MVC-PHP pro bakalářskou práci. Mám první modul pro evidenci a správu zaměstnanců, ale zasekla jsem se na druhém modolu pro evidenci docházky. Pod odkazem docházka by se měla uživateli vygenerovat tabulka s aktuálním měsícem, která by měla mít sloupce datum, příchod, odchod, absence, odpracovaná doba a poznámka. Tabulka musí být editovatelná, aby si do ní uživatel mohl zapsat příchod a odchod, a po uložení se uložit do databáze. U zaměstnanců jsem to řešila formulářem a vytvořením editoru, ale to byl vždy jeden zaměstnanec, takže tady by musel být každý řádek dne formulář. Už si nevím rady, jak se z toho vymotat. Poradíte, prosím?
Na začátku strany docházka jsem zatím vytvořila filtr, který bude určovat o kterého zaměstnance a které období se jedná.
view:

<form method="POST">
  <label>Zaměstnanec: </label>
  <select name="zamestnanec">
    <?php foreach ($zamestnanci as $zamestnanec) : ?>
    <option value="<?= $zamestnanec['user_id'] ?>"><?= $zamestnanec['jmeno'] ?> <?= $zamestnanec['prijmeni'] ?></option>
    <?php endforeach ?>
  </select><br><br>

  <label>Měsíc: </label>
  <select name="mesic">
    <?php foreach ($mesic as $index => $hodnota) : ?>
    <option value="<?= $index ?>"><?= $hodnota ?></option>
    <?php endforeach ?>
  </select>

  <label>Rok: </label>
  <input type="number" name="rok" value="2017"><br>

    <input type="submit" value="Zobrazit docházku">
</form><br>

controller:

class DochazkaController extends Controller
{
    public function zpracuj($parametry)
    {
        $this->overUzivatele();
        $this->hlavicka['titulek'] = 'Docházka';

        $zpracovaniDochazky = new ZpracovaniDochazky();
        $mesic = $zpracovaniDochazky->vratMesic();
        $this->data['mesic'] = $mesic;

        $spravceZamestnancu = new SpravceZamestnancu();
        $zamestnanci = $spravceZamestnancu->vratSeznamZamestnancu();

        $spravceUzivatelu = new SpravceUzivatelu();
          $prihlasenyUzivatel = $spravceUzivatelu->vratUzivatele();
                        if ($prihlasenyUzivatel)
                                $zamestnanec = $prihlasenyUzivatel;

                $this->data['user_id'] = $zamestnanec['user_id'];
                $this->data['jmeno'] = $zamestnanec['jmeno'];
                $this->data['prijmeni'] = $zamestnanec['prijmeni'];
                $this->data['zamestnanci'] = $zamestnanci;
                $this->view = 'dochazka';
    }
}

model:

class ZpracovaniDochazky
{
        public function vratMesic()
        {
    $mesic = array(1 => "leden", "únor", "březen", "duben", "květen", "červen",
    "červenec", "srpen", "září", "říjen", "listopad", "prosinec");

                return $mesic;
        }
}
 
Odpovědět
16.4.2017 9:19
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
kaskader202
Člen
Avatar
Odpovídá na Veronika Kotrcová
kaskader202:24.5.2017 11:36

Ahoj, napiš zda prolém trvá, rád ti pomůžu.

 
Nahoru Odpovědět
24.5.2017 11:36
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 2 zpráv z 2.