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
7 require_once("Globals.php");
13 // realiza a conexão com o banco de dados
16 //se o usuario nao esqueceu logado
17 if(!isset($_POST['esqueci']))
19 //verifica se é para logar ou deslogar
20 switch($_POST['action'])
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>";
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");
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");
52 $sql = "UPDATE historico SET fim = (SELECT (mes_inicio - INTERVAL 1 SECOND) FROM config) WHERE id_user = '". $_POST['log'] ."' and fim is NULL";
54 $sql = "INSERT INTO historico (id_user, inicio, fim) VALUES ('". $_POST['log'] ."', (SELECT mes_inicio FROM config), NOW())";
61 $body .= "Você já estava deslogado.<br>";
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>";
72 //deve imprimir a pagina para 'esqueci logado'
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
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";
102 $body .= "<table border=1>
113 <td><select name='dia'>";
114 for($x=1;$x<=31;$x++
)
116 $body .= "<option value='". $x ."'";
117 if($x == date('j')) $body .= " selected";
119 if($x<10) $body .= "0";
124 $body .= " </select></td>
125 <td><select name='mes'>";
126 for ($i = 1; $i <= sizeof($meses); $i++
)
132 $body .= "<option value='$str' ";
133 if ($str == date('m'))
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";
146 $body .= " </select></td>
147 <td><select name='hora'>";
149 for ($x=0;$x<=23;$x++
)
155 $body .= "<option value='". $str ."'";
156 if($str == date('H')) $body .= " selected";
162 $body .= " </select></td>
163 <td><select name='minuto'>";
165 for ($x=0;$x<=59;$x++
)
171 $body .= "<option value='". $str ."'";
172 if($str == date('i')) $body .= " selected";
179 $body .= " </select></td>
180 <td><input type=\"button\" value='calendá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>
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>
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\">";
194 $html .= "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\" />";
195 $html .= "<title>". $title ."</title>";