-
Notifications
You must be signed in to change notification settings - Fork 0
/
Puerta.php
80 lines (75 loc) · 2.08 KB
/
Puerta.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
<?php
class Puerta
{
private $_a;
function __construct($dsn,$nombre_sesion,$login=true)
{
$opciones_auth=array('dsn'=>$dsn);
$arr_callback=array($this,'chapa');
$arr_login_callback=array($this,'cuentaVisitas');
$this->_a=new Auth('DB',$opciones_auth,$arr_callback,$login);
$this->_a->setSessionName($nombre_sesion);
$this->_a->setLoginCallback($arr_login_callback);
}
public function abrir(&$username=null)
{
$this->_a->start();
if($_GET['accion'] == 'salir' && $this->_a->checkAuth())
{
$this->_a->logout();
$this->_a->start();
}
if($this->_a->checkAuth())
{
$username=$this->_a->getUsername();
return true;
}
return false;
}
public function getUsername()
{
return $this->_a->getUsername();
}
public function chapa($username=null,$status=null,&$auth=null)
{
global $archivo_css,$este;
$error=$status==-3?'Usuario o password incorrectos':'';
$cuerpo=<<<html
<div id="contenedor">
<div id="error_login">$error</div>
<div class="bloque_horizontal">
<form method="post" action="$este">
<input type="text" name="username" value="$username" /><br />
<input type="password" name="password" /><br />
<input type="submit" value="Ingresar" />
</form>
</div>
</div>
html;
$pagina=new Pagina('Login',true);
$pagina->agregarCss($archivo_css);
$pagina->agregarBody($cuerpo);
$html_pagina=$pagina->toHtml();
echo $html_pagina;
}
public function cuentaVisitas($username,&$auth=null)
{
global $usuario_db,$passwd_db,$servidor_db,$nombre_db;
$mysqli=new mysqli($servido_db,$usuario_db,$passwd_db,$nombre_db);
$consulta=<<<sql
UPDATE auth
SET n_visitas=n_visitas+1
WHERE username='$username'
sql;
$mysqli->query($consulta);
$consulta=<<<sql
INSERT INTO visitas
(ctime,username)
VALUES
(NOW(),'$username')
sql;
$habitos=new Habitos($username);
$habitos->creaCumplimientos();
}
}
?>