1. Podczas logowania w bazie danych zapisywany jest czas rozpoczecia
pracy.
2. Zrobile sobie stronek na ktorej mam tabelke z osobami,ktore logują
się na strone, dostaje nastepujace informacje:
- login
- data
- godzina rozpoczecia pracy
- godzina zakonczenia pracy
- przepracowany czas
3. Podczas wylogowania zostaje zapsany czas zakonczenia pracy-jest
to logiczne i wiarygodne,
4. PROBLEM powstaje podczas przeliczania przepracowanego czasu,
gdyż podczas sprawdzania raportu automatycznie zostaje doday
aktualny czas zalogowania i obliczenia nie sa wiarygodne
5. MOZLIWE ROZWIAZANIETo zapisanie obliczen w innym polu
w bazie danych podczas wylogowania, lecz ja sprawdzic caly raport
pracy wszyskich pracujacych osob? Probowalem przy pomocy
Kod
switch
i
Kod
case
jednak wyswietla mi tylko
zera.
6.Oto fragmet kodu:
--Login--
[php:1:31dcb4fbe1]<?php
$update=mysql_query("update raport set data=curdate(),czas_od=curtime() where
uname='".$UNAME."'");
?>[/php:1:31dcb4fbe1]
--raport--
[php:1:31dcb4fbe1]<?php
include("connection.inc");
$sql = ("select * from raport where (id = ".$IDS.")");
$sql_result = mysql_query($sql,$connection);
while ($row = mysql_fetch_array($sql_result)) {
$id = $row["id"];
$data = $row["data"];
$uname = $row["uname"];
$czas_od = $row["czas_od"];
$czas_do = $row["czas_do"];
}
$test=strtotime ("$czas_do");
$test1=strtotime ("$czas_od");
$test2=($test-$test1);
$cz=gmdate("H:i:s", $test2);
?>
<tr>
<td>Nazwa użytkownika:</td>
<td>Zalogowany:</td>
<td>O godzinie:</td>
<td>Wylogowany o:</td>
<td>Ostatno pracowałeś:</td>
</tr>
<tr align="center">
<td>barth</td>
<td><? switch ($id){ case 1; echo "$data"; break; case 4; echo "$data"; break;}
?></td>
<td><? switch ($id){ case 1; echo "$czas_od"; break; case 4; echo "$data";
break;} ?></td>
<td><? switch ($id){ case 1; echo "$czas_do"; break; case 4; echo "$data";
break;} ?></td>
<td><? switch ($id){ case 1; echo "$cz"; break; case 4; echo "$data"; break;}
?></td>
</tr>
<tr align="center">
<td>daniel</td>
<td><? switch ($id) { case 2; echo "$data"; break; case 4; echo "$data";
break;} ?></td>
<td><? switch ($id) { case 2; echo "$czas_od"; break; case 4; echo "$data";
break;} ?></td>
<td><? switch ($id) { case 2; echo "$czas_do"; break; case 4; echo "$data";
break;} ?></td>
<td><? switch ($id) { case 2; echo "$cz"; break; case 4; echo "$data"; break;}
?></td>
</tr>
<tr align="center">
<td>Kylo</td>
<td><? switch ($id) { case 3; echo "$data"; break; case 4; echo "$data";
break;} ?></td>
<td><? switch ($id) { case 3; echo "$czas_od"; break; case 4; echo "$data";
break;} ?></td>
<td><? switch ($id) { case 3; echo "$czas_do"; break; case 4; echo "$data";
break;} ?></td>
<td><? switch ($id) { case 3; echo "$cz"; break; case 4; echo "$data"; break;}
?></td>
</tr>
</table>
?>[/php:1:31dcb4fbe1]
--Logout--
[php:1:31dcb4fbe1]<?php
$zapisz1=mysql_query("update raport set czas_do=curtime() where (id=".$IDS.")") ;
?>[/php:1:31dcb4fbe1]
bardzo prosze o fachowa ocene skryptu, wskazanie bledo i pomoc (pkt. 4,5)
Dziekuje.