-
Notifications
You must be signed in to change notification settings - Fork 0
/
deletaUsuario.php
149 lines (104 loc) · 4.21 KB
/
deletaUsuario.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
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
<?php
include_once "conexao.php";
include_once "Usuario.php";
if(!isset($_SESSION)) session_start();
$conexao = conexao::getConexao();
if(!isset($_SESSION["usuario"])){
header("location: index.php");
}
$dadosUsuario = $_SESSION["usuario"];
$nivelAcesso = $dadosUsuario->getNivelAcesso();
if($nivelAcesso != "A"){
header("location: index.php");
}
//Código acima - verificação de login
$msgFinal = null;
if(isset($_POST["codU"]) && isset($_POST["senha"]) && isset($_POST["instituicao"])){
try{
$codigoU = trim(addslashes($_POST["codU"]));
$senha = md5(trim(addslashes($_POST["senha"])));
$instituicao = trim(addslashes($_POST["instituicao"]));
if($senha == $dadosUsuario->getSenha()){
$comando = $conexao->prepare("SELECT * FROM locacao AS l INNER JOIN exemplares AS e ON e.id_exemplares = l.id_exemplares WHERE id_usuario_locacao = :codU OR id_usuarioAdimin_locacao = :codA AND e.id_instituicao = :inst LIMIT 1");
$comando->bindParam(":codU", $codigoU);
$comando->bindParam(":codA", $codigoU);
$comando->bindParam(":inst", $instituicao);
$comando->execute();
if(count($comando->fetchAll()) == 0){
//Buscando instituições do usuário
$comando = $conexao->prepare("DELETE FROM instituicao_usuario WHERE id_instituicao = :inst AND id_usuario = :user");
$comando->bindParam(":inst", $instituicao);
$comando->bindParam(":user", $codigoU);
$comando->execute();
//Buscando cursos do usuário
$comando = $conexao->prepare("SELECT ca.id_curso_usuario FROM curso_usuario AS ca INNER JOIN curso AS c ON ca.curso_id_curso = c.id_curso INNER JOIN instituicao AS i ON i.id_instituicao = c.id_instituicao_curso WHERE i.id_instituicao = :inst AND ca.usuario_id_usuario = :user");
$comando->bindParam(":inst", $instituicao);
$comando->bindParam(":user", $codigoU);
$comando->execute();
$cursosUsuario = $comando->fetchAll();
if(count($cursosUsuario) > 0){
//Deletando cursos
foreach($cursosUsuario as $valor){
$comando = $conexao->prepare("DELETE FROM curso_usuario WHERE id_curso_usuario = :id LIMIT 1");
$comando->bindValue(":id", $valor['id_curso_usuario']);
$comando->execute();
}
}
//Verificando todos os cursos e instituições do usuário
//Cursos
$comando = $conexao->prepare("SELECT ca.id_curso_usuario FROM curso_usuario AS ca INNER JOIN curso AS c ON ca.curso_id_curso = c.id_curso INNER JOIN instituicao AS i ON i.id_instituicao = c.id_instituicao_curso WHERE ca.usuario_id_usuario = :user LIMIT 1");
$comando->bindParam(":user", $codigoU);
$comando->execute();
$cursosUsuario = $comando->fetchAll();
//Instituição
$comando = $conexao->prepare("SELECT id_instituicao_usuario FROM instituicao_usuario WHERE id_usuario = :user LIMIT 1");
$comando->bindParam(":user", $codigoU);
$comando->execute();
$instituicaoUsuario = $comando->fetchAll();
if(count($cursosUsuario) == 0 && count($instituicaoUsuario) == 0){
//Deletando usuario por completo
$comando = $conexao->prepare("DELETE FROM usuario WHERE id_usuario = :cod LIMIT 1");
$comando->bindParam(":cod", $codigoU);
$comando->execute();
}
$msgFinal = "Usuário deletado com sucesso";
}else{
$msgFinal = "Este usuário está devendo alguns livros a biblioteca ou está associado a alguma alocação feita, portanto não é possivel deletá-lo!";
}
}else{
$msgFinal = "Senha inválida, não foi possivel deletar o usuário";
}
}catch(Execption $ex){
$msgFinal = "Usuário não deletado, Ocorreu um erro na operação de exclusão";
}
}else{
header("location: Inicio.php");
}
if($msgFinal == "Usuário deletado com sucesso"){
echo "<main>
<div class='containeAv'>
<div>
<h4>$msgFinal</h4>
</div>
<div>
<i class='fas fa-check-circle'></i>
</div>
</div>
<hr>
<button onclick='deletaMoldal()'>OK</button>
</main>";
}else{
echo "<main>
<div class='containeAv'>
<div>
<h4>$msgFinal</h4>
</div>
<div>
<i class='fas fa-times-circle'></i>
</div>
</div>
<hr>
<button onclick='deletaMoldal()'>OK</button>
</main>";
}
?>