[ Príspevkov: 3 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 26.01.12
Prihlásený: 15.07.17
Príspevky: 18
Témy: 7 | 7
NapísalOffline : 19.10.2015 22:40 | php dochadzkovy system

prosim vas ked chcem spravit select dochadzky zamestnanca z databazy, napr v polke mesiaca a chcem aby mi zobrazilo zvysne dni ktore este neboli odpracovane ako prazdne polia v tabulke... ako na to?
mam toto :
Kód:
<?php
      session_start();
      $emp_id = $_SESSION['emp_id'];


      $sql = 'SELECT
                     e.emp_id, hours,
                     UNIX_TIMESTAMP(first_join) AS first_join,
                     UNIX_TIMESTAMP(last_join) AS last_join,
                     UNIX_TIMESTAMP(lunch_start) AS lunch_start,
                     UNIX_TIMESTAMP(lunch_stop) AS lunch_stop,
                     UNIX_TIMESTAMP(doc_go) AS doc_go,
                     UNIX_TIMESTAMP(doc_come) AS doc_come
                  FROM
                     emp e JOIN
                     emp_hours h ON e.emp_id = h.emp_id
                  WHERE
                     e.emp_id ="'. $emp_id. '"';
      $result = mysql_query($sql, $db) or die(mysql_error($db));
      
      while ($row = mysql_fetch_array($result)){
         extract($row);
         
            echo '<tr><td>';
            echo date('d', $first_join). '</td><td>';
            echo date('D', $first_join). '</td><td>';
            echo date('H:i:s', $first_join). '</td><td>';
            echo date('H:i:s', $lunch_start). '</td><td>';
            echo date('H:i:s', $lunch_stop). '</td><td>';
            echo date('H:i:s', $doc_go). '</td><td>';
            echo date('H:i:s', $doc_come). '</td><td>';
            echo date('H:i:s', $last_join). '</td><td>';
            echo $hours. '</td></tr>';
        }
      
         mysql_free_result($result);                     
      ?>


Offline

Správca fóra
Správca fóra
php dochadzkovy system

Registrovaný: 08.08.09
Príspevky: 12516
Témy: 41 | 41
Bydlisko: Martin
NapísalOffline : 19.10.2015 22:53 | php dochadzkovy system

Neviem či som to správne pochopil, ale možností máš v zásade niekoľko.
Poznáš mesiac, pre ktorý vypisuješ dochádzku, vieš si zistiť koľko dní (pracovných?) je v danom mesiaci?
Môžeš teda použiť namiesto while cyklus for s počtom opakovaní nastaveným na počet dní. Takže iterátor bude zároveň index poľa výsledkov z databázy pre každý deň (prázdny "riadok" v databáze = prázdny riadok v tabuľke).
Odporúčanie na záver: Nepoužívať mysql_ funkcie, ošetriť vstup, aspoň prachsprostým explicitným pretypovaním na int.


_________________
always is always wrong
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 26.01.12
Prihlásený: 15.07.17
Príspevky: 18
Témy: 7 | 7
Napísal autor témyOffline : 19.10.2015 23:04 | php dochadzkovy system

zatial som neriesil kolko ma mesiac dni dal som do cyklu for 31. skusil som toto:
Kód:
session_start();
      $emp_id = $_SESSION['emp_id'];
      $sql = 'SELECT
                     e.emp_id, hours,
                     UNIX_TIMESTAMP(first_join) AS first_join,
                     UNIX_TIMESTAMP(last_join) AS last_join,
                     UNIX_TIMESTAMP(lunch_start) AS lunch_start,
                     UNIX_TIMESTAMP(lunch_stop) AS lunch_stop,
                     UNIX_TIMESTAMP(doc_go) AS doc_go,
                     UNIX_TIMESTAMP(doc_come) AS doc_come
                  FROM
                     emp e JOIN
                     emp_hours h ON e.emp_id = h.emp_id
                  WHERE
                     e.emp_id ="'. $emp_id. '"';
      $result = mysql_query($sql, $db) or die(mysql_error($db));
      for ($i = 1; $i <= 31; $i++){
      $row = mysql_fetch_array($result);
         extract($row);
          if (date('d', $first_join) == $i){
            echo '<tr><td>';
            echo date('d', $first_join). '</td><td>';
            echo date('D', $first_join). '</td><td>';
            echo date('H:i:s', $first_join). '</td><td>';
            echo date('H:i:s', $lunch_start). '</td><td>';
            echo date('H:i:s', $lunch_stop). '</td><td>';
            echo date('H:i:s', $doc_go). '</td><td>';
            echo date('H:i:s', $doc_come). '</td><td>';
            echo date('H:i:s', $last_join). '</td><td>';
            echo $hours. '</td></tr>';
        } else {
           echo '<tr><td>';
            echo date('d', $i). '</td><td>';
            echo '-'. '</td><td>';
            echo '-'. '</td><td>';
            echo '-'. '</td><td>';
            echo '-'. '</td><td>';
            echo '-'. '</td><td>';
            echo '-'. '</td><td>';
            echo '-'. '</td><td>';
            echo '-'. '</td></tr>';
        }
        }

ked tam nemam while tak mi to 17x hodi prazdny riadok a potom nacita len jeden. preco neodporucas pouzivat funkcie mysql?

// Spojený príspevok Pon 19.10.15 23:05

porovnaval som tam cislo dna prichodu s premennou $i z cyklu.


Naposledy upravil killer dňa 19.10.2015 23:08, celkovo upravené 1
Kód dávaj do [code]!


 [ Príspevkov: 3 ] 


php dochadzkovy system



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Dochadzkovy system (systemik)

v Ostatné programy

0

488

27.08.2011 10:44

eiger33

V tomto fóre nie sú ďalšie neprečítané témy.

Php systém

v Redakčné systémy

1

474

03.02.2011 19:35

Bajzik

V tomto fóre nie sú ďalšie neprečítané témy.

PHP Login system

v PHP, ASP

5

412

25.04.2011 11:47

TommyHot

V tomto fóre nie sú ďalšie neprečítané témy.

Redakčný systém PHP-Fusion

v Redakčné systémy

12

665

04.11.2007 20:26

xFERKOx

V tomto fóre nie sú ďalšie neprečítané témy.

PHP a Informačný systém

v PHP, ASP

8

258

24.04.2016 23:24

walther

V tomto fóre nie sú ďalšie neprečítané témy.

PHP programátor - PHP, MySQL, jQuery,X)Html/CSS

v Ponuka práce

0

812

02.05.2011 12:08

magicmedia

V tomto fóre nie sú ďalšie neprečítané témy.

Vytvorenie suboru php a vlozenie php scriptu

v PHP, ASP

4

924

07.05.2010 14:02

DeiForm

V tomto fóre nie sú ďalšie neprečítané témy.

PHP nevie precitat .PHP

v PHP, ASP

8

463

18.03.2011 19:21

camo

V tomto fóre nie sú ďalšie neprečítané témy.

php ->mysql ->php Help.zoradit

v PHP, ASP

4

322

20.06.2009 12:44

KViki

V tomto fóre nie sú ďalšie neprečítané témy.

System

v PHP, ASP

0

531

18.11.2007 12:48

DADDY

V tomto fóre nie sú ďalšie neprečítané témy.

system

v Operačné systémy Microsoft

4

480

19.01.2009 15:32

crawn

V tomto fóre nie sú ďalšie neprečítané témy.

pipeline system

v Assembler, C, C++, Pascal, Java

0

205

19.12.2010 20:33

bimbo34

V tomto fóre nie sú ďalšie neprečítané témy.

Redakčný systém

v Redakčné systémy

5

573

13.06.2007 23:02

majdo

V tomto fóre nie sú ďalšie neprečítané témy.

Redakcny system

v Redakčné systémy

2

443

06.08.2007 22:14

Deiky

V tomto fóre nie sú ďalšie neprečítané témy.

Redakčný systém

v Redakčné systémy

2

389

07.07.2007 23:53

JanoF

V tomto fóre nie sú ďalšie neprečítané témy.

Systém šablón

v PHP, ASP

11

199

02.10.2014 8:54

majky358



© 2005 - 2017 PCforum, edited by JanoF