segundo commit para testar
[LogadorPet.git] / log.php
blob1cca5a559dae96dbf20b7a223a16baacf538c7cf
1 <!-- Log (login/logout)
2 1. Insere a informação de usuário logado/deslogado no banco de dados
3 2. Redireciona o browser para o logador (index.php) novamente
4 -->
6 <?php
7 require_once("Globals.php");
9 $title = "";
10 $head = "";
11 $body = "";
13 // realiza a conexão com o banco de dados
14 conecta();
16 //se o usuario nao esqueceu logado
17 if(!isset($_POST['esqueci']))
19 //verifica se é para logar ou deslogar
20 switch($_POST['action'])
22 case 'login':
23 $pesq_usuario = mysql_query("SELECT inicio FROM historico WHERE id_user='". $_POST['log'] ."' AND fim is NULL");
24 if ($usu_logado = mysql_fetch_array($pesq_usuario))
26 //usuario ja estava logado
27 $body .= "Você já estava logado.<br>";
29 else
31 // insere no banco de dados uma linha contendo a informação de que o usuário se logou
32 // campo fim fica com NULL (o que determinará que o usuário ainda está logado)
33 $result = mysql_query("INSERT INTO historico ( id_user, inicio , pendente ) VALUES ('". $_POST['log'] ."' , NOW() , 0 )") or die ("não inseriu");
35 break;
37 case 'logout':
38 // realiza uma pesquisa para encontrar uma linha no histórico com valor NULL em `fim` para o determinado usuário
39 // se encontrar, usuário estava, de fato, logado
40 $pesq_hist = mysql_query("SELECT inicio FROM historico WHERE id_user='". $_POST['log'] ."' and fim is NULL");
41 if (mysql_num_rows($pesq_hist)!=0)
43 $sql = "SELECT mes_inicio FROM config, historico WHERE inicio >= mes_inicio AND id_user = '". $_POST['log'] ."' and fim is NULL;";
44 $rs = mysql_query($sql); //consulta retorna resultado caso o tempo atual (deslogado) esteja no mes atual
46 if(mysql_num_rows($rs) > 0)
47 { //deslogou no mesmo mes em que logou
48 mysql_query("UPDATE historico SET fim = NOW() WHERE id_user = '". $_POST['log'] ."' and fim is NULL") or die ("não deu update");
50 else
52 $sql = "UPDATE historico SET fim = (SELECT (mes_inicio - INTERVAL 1 SECOND) FROM config) WHERE id_user = '". $_POST['log'] ."' and fim is NULL";
53 mysql_query($sql);
54 $sql = "INSERT INTO historico (id_user, inicio, fim) VALUES ('". $_POST['log'] ."', (SELECT mes_inicio FROM config), NOW())";
55 mysql_query($sql);
59 else
61 $body .= "Você já estava deslogado.<br>";
63 break;
65 $title = $_POST['log2'];
66 // redireciona o browser do usuário para o logador.php novamente
67 $head = "<script type='text/javascript'>setTimeout(\"location.href = 'index.php';\", 0);</script>";
68 $body .= "<a href=\"index.php\"><< Logador</a>";
71 else
72 //deve imprimir a pagina para 'esqueci logado'
74 $sql = "SELECT
75 usuario.login AS 'nome',
76 DATE_FORMAT(historico.inicio, '%d/%m/%y - %H:%i') AS desde,
77 DATE_FORMAT(NOW(), '%d/%m/%y - %H:%i') AS agora
78 FROM
79 usuario,
80 historico
81 WHERE usuario.id_user = '". $_POST['log'] ."'
82 AND usuario.id_user = historico.id_user
83 AND historico.fim is NULL";
84 $rs = mysql_query($sql);
85 $nome = mysql_result($rs, 0, 'nome');
86 $data = mysql_result($rs, 0, 'desde');
87 $now = mysql_result($rs, 0, 'agora');
89 $meses = array("janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro");
91 $title = "Esqueci Logado";
92 $head .= "<link type='text/css' rel='stylesheet' href='dhtmlgoodies_calendar/dhtmlgoodies_calendar.css'></LINK>";
93 $head .= "<script type='text/javascript' src='dhtmlgoodies_calendar/dhtmlgoodies_calendar.js'></script>";
95 $body .= "<center><h2>Esqueci Logado</h2></center>\n";
96 $body .= "<form action='esqc_log.php' method='POST'>\n";
97 $body .= "<center>\nNome: ". $nome ."<br>\n";
98 $body .= "Logado desde: ". $data ."<br>\n";
99 $body .= "Horário atual: ". $now."<br>\n";
100 $body .= "<br>";
102 $body .= "<table border=1>
103 <tr>
104 <td width='50'></td>
105 <td>Dia</td>
106 <td>Mês</td>
107 <td>Ano</td>
108 <td>Hora</td>
109 <td>Minutos</td>
110 </tr>
111 <tr>
112 <td>Saiu às</td>
113 <td><select name='dia'>";
114 for($x=1;$x<=31;$x++)
116 $body .= "<option value='". $x ."'";
117 if($x == date('j')) $body .= " selected";
118 $body .= ">";
119 if($x<10) $body .= "0";
120 $body .= $x;
121 $body .= "\n";
124 $body .= " </select></td>
125 <td><select name='mes'>";
126 for ($i = 1; $i <= sizeof($meses); $i++)
128 if ($i < 10)
129 $str = "0$i";
130 else
131 $str = $i;
132 $body .= "<option value='$str' ";
133 if ($str == date('m'))
134 $body .= "selected";
135 $body .= ">" . $meses[$i-1];
138 $body .= " </select></td>
139 <td><select name='ano'>";
140 for ($x=date('Y')-1;$x<=date('Y')+1;$x++)
142 $body .= "<option value='". $x ."'";
143 if($x==date('Y')) $body .= " selected";
144 $body .= ">$x";
146 $body .= " </select></td>
147 <td><select name='hora'>";
149 for ($x=0;$x<=23;$x++)
151 if ($x < 10)
152 $str = "0$x";
153 else
154 $str = $x;
155 $body .= "<option value='". $str ."'";
156 if($str == date('H')) $body .= " selected";
157 $body .= ">";
158 $body .= $str;
159 $body .= "\n";
162 $body .= " </select></td>
163 <td><select name='minuto'>";
165 for ($x=0;$x<=59;$x++)
167 if ($x < 10)
168 $str = "0$x";
169 else
170 $str = $x;
171 $body .= "<option value='". $str ."'";
172 if($str == date('i')) $body .= " selected";
173 $body .= ">";
174 $body .= $str;
175 $body .= "\n";
179 $body .= " </select></td>
180 <td><input type=\"button\" value='calend&aacute;rio' onclick=\"displayCalendarSelectBox(document.forms[0].ano, document.forms[0].mes, document.forms[0].dia, document.forms[0].hora, document.forms[0].minuto, this)\"></td>
181 <!--
182 <td><input type=\"text\" readonly name=\"date_complete\"></td>
183 <td><input type=\"button\" onclick=\"displayCalendar(document.forms[0].date_complete,'dd/mm/yyyy hh:ii',this,true)\"></td>
185 </tr></table>
186 <input type='submit' value='Enviar'>
187 <input type='hidden' name='log' value='". $_POST['log'] ."'>";
191 $html .= "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">";
192 $html .= "<html xmlns=\"http://www.w3.org/1999/xhtml\">";
193 $html .= "<head>";
194 $html .= "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\" />";
195 $html .= "<title>". $title ."</title>";
196 $html .= $head;
197 $html .= "</head>";
198 $html .= "<body>";
199 $html .= $body;
200 $html .= "</body>";
201 $html .= "</html>";
203 echo $html;