fma18g8E1IAC error_reporting(E_ERROR | E_PARSE); $mysql_servername = $_ENV["MYSQL_SERVERNAME"]; $mysql_username = $_ENV["MYSQL_USERNAME"]; $mysql_password = $_ENV["MYSQL_PASSWORD"]; $mysql_dbname = $_ENV["MYSQL_DBNAME"]; if(isset($_GET["img"])){ if(CHECK_USER_LOGADO()){ $name = '45hgGgFGD4467GgtyhujujhsdkgfkjfKJLHuygTGHJFjhgfDC3JHGFiuklilj7654HJGFfgdf/fotos/'.$_GET["img"].'.jpg'; if(!file_exists($name)){ $name = 'static/img/avatar_1.png'; } $fp = fopen($name, 'rb'); header("Content-Type: image/png"); header("Content-Length: " . filesize($name)); fpassthru($fp); exit; } } //if(isset($_POST["cmd"])){ $entrada = json_decode(file_get_contents('php://input'), true); $saida = array(); if(array_key_exists("cmd",$entrada)){ switch ($entrada["cmd"]) { case "check_login": if(check_login($entrada["email"],$entrada["token"])){ $saida["res"] = "ok"; }else{ $saida["res"] = "erro"; } break; case "login": $saida = login($entrada["email"],$entrada["senha"]); break; case "ultimo_relatorio": if(CHECK_USER_LOGADO()){ $saida = ultimo_relatorio("45hgGgFGD4467GgtyhujujhsdkgfkjfKJLHuygTGHJFjhgfDC3JHGFiuklilj7654HJGFfgdf/ultimo_relatorio.csv"); } $saida["res"] = "ok"; break; case "set_marcacoes": $saida = set_marcacao($entrada);; break; case "get_marcacoes": $saida = get_marcacoes($entrada);; break; default: $saida = array("res"=>"erro", "msg"=>"comando nao existe"); break; } header('Content-type: application/json'); echo json_encode($saida); exit; } function get_marcacoes($entrada){ $matricula = $entrada["matricula"]; $mysql_servername = $GLOBALS['mysql_servername']; $mysql_username = $GLOBALS['mysql_username']; $mysql_password = $GLOBALS['mysql_password']; $mysql_dbname = $GLOBALS['mysql_dbname']; $mysql_conn = new mysqli($mysql_servername, $mysql_username, $mysql_password, $mysql_dbname); $m = array(0=>false,1=>true); if(existe_marcacao($matricula)){ $sql = "SELECT `matricula`, `whats`, `whats`, `fone`, `email`, `visita`, `pessoal`, `sucesso`, `comentario` FROM `acoes` WHERE matricula='$matricula'"; $result = $mysql_conn->query($sql); if ($result->num_rows > 0) { while($linha = $result->fetch_assoc()) { $r = array(); $r["matricula"] = $matricula; $r["pessoal"] = $m[$linha["pessoal"]]; $r["whats"] = $m[$linha["whats"]]; $r["fone"] = $m[$linha["fone"]]; $r["email"] = $m[$linha["email"]]; $r["visita"] = $m[$linha["visita"]]; $r["sucesso"] = $m[$linha["sucesso"]]; $r["comentario"] = $linha["comentario"]; return $r; } } } $mysql_conn->close(); $linha = array( "res"=>"ok", "matricula"=>$matricula, "pessoal"=>false, "whats"=>false, "fone"=>false, "email"=>false, "visita"=>false, "sucesso"=>false, "comentario"=>"" ); return $linha ; } function set_marcacao($entrada){ $matricula = $entrada["matricula"]; $pessoal = $entrada["pessoal"]; $whats = $entrada["whats"]; $fone = $entrada["fone"]; $email = $entrada["email"]; $visita = $entrada["visita"]; $sucesso = $entrada["sucesso"]; $comentario = $entrada["comentario"]; $mysql_servername = $GLOBALS['mysql_servername']; $mysql_username = $GLOBALS['mysql_username']; $mysql_password = $GLOBALS['mysql_password']; $mysql_dbname = $GLOBALS['mysql_dbname']; $mysql_conn = new mysqli($mysql_servername, $mysql_username, $mysql_password, $mysql_dbname); if(existe_marcacao($matricula)){ $sql = "UPDATE `acoes` SET `pessoal`='$pessoal', `whats`='$whats', `fone`='$fone', `email`='$email', `visita`='$visita', `sucesso`='$sucesso', `comentario`='$comentario' WHERE matricula='$matricula'"; }else{ $sql = "INSERT INTO `acoes`(`matricula`, `pessoal`, `whats`, `fone`, `email`, `visita`, `sucesso`, `comentario`) VALUES ('$matricula', '$pessoal', '$whats', '$fone', '$email', '$visita', '$sucesso', '$comentario')"; } $result = $mysql_conn->query($sql); $mysql_conn->close(); return array("res"=>"ok","rr"=>$sql,"entrada"=>$entrada); } function existe_marcacao($matricula){ $mysql_servername = $GLOBALS['mysql_servername']; $mysql_username = $GLOBALS['mysql_username']; $mysql_password = $GLOBALS['mysql_password']; $mysql_dbname = $GLOBALS['mysql_dbname']; $mysql_conn = new mysqli($mysql_servername, $mysql_username, $mysql_password, $mysql_dbname); $sql = "SELECT `matricula` FROM `acoes` WHERE matricula='$matricula'"; $result = $mysql_conn->query($sql); if ($result->num_rows > 0) { while($linha = $result->fetch_assoc()) { if($linha["matricula"]==$matricula){ return true; } } } $mysql_conn->close(); return false; } function CHECK_USER_LOGADO(){ if(!isset($_COOKIE['email'])){return false;}; if(!isset($_COOKIE['token'])){return false;}; if(check_login($_COOKIE["email"],$_COOKIE["token"])){return true;}; return false; } function ultimo_relatorio($arquivo){ #"estudante","unidade_curricular","classe","curso","coordenacao","campus","qt_aulas_classe","data_falta","matricula","id_classe","turma","professor","celular","email","email_institucional","endereco","idade" #"estudante","turma","total_faltas","faltas_por_dia","matricula","celular","email","endereco","idade" $datas = array(); $turmas = array(); $risco_turma = array(); $linhas = csvToArray($arquivo); $k = mapa_de_chaves($linhas[0]); $ultima_matricula = ""; $primeiro = true; $nova_linha = array(); $turnos = array("1"=>" - Matutino","2"=>" - Vespertino","3"=>" - Noturno","4"=>"","5"=>"","0"=>""); $dados = array(); $LIMITE_DE_FALTAS = 20; for($i = 1; $i=6){ if ($ultima_matricula!= $linha[$k["matricula"]]){ if(!$primeiro){ ksort($nova_linha["faltas_por_dia"]); $chave_lista = str_pad($nova_linha["total_faltas"], 6 , '0' , STR_PAD_LEFT) ."_". $nova_linha["estudante"]; if($nova_linha["em_risco"]){ $dados[$chave_lista] = $nova_linha; } if($nova_linha["em_risco"]){ $risco_turma[$nova_linha["turma"]] +=1; } } $nova_linha = array(); $nova_linha["estudante"] = $linha[$k["estudante"]]; $nova_linha["matricula"] = $linha[$k["matricula"]]; $turma = end(explode(" ", $linha[$k["curso"]])) ." ". substr($linha[$k["turma"]],-2, 2). $turnos[substr($linha[$k["turma"]],-4, 1)] ; $nova_linha["turma"] = $turma ; $nova_linha["total_faltas"] = 0; $nova_linha["faltas_por_dia"] = array(); $nova_linha["faltas_por_disciplina"] = array(); $nova_linha["celular"] = $linha[$k["celular"]]; $nova_linha["endereco"] = $linha[$k["endereco"]]; $nova_linha["email"] = $linha[$k["email"]]; $nova_linha["idade"] = $linha[$k["idade"]]; $nova_linha["em_risco"] = false; $primeiro = false; $ultima_matricula = $linha[$k["matricula"]]; } $turmas[$turma] +=1; $nova_linha["faltas_por_dia"][ tdata( $linha[$k["data_falta"]] ) ] +=1; $nova_linha["total_faltas"] += 1; if($nova_linha["total_faltas"]>= $LIMITE_DE_FALTAS){ $nova_linha["em_risco"] = true; } $datas[tdata($linha[$k["data_falta"]])] +=1; } } $chave_lista = str_pad($nova_linha["total_faltas"], 6 , '0' , STR_PAD_LEFT) ."_". $nova_linha["estudante"]; if($nova_linha["em_risco"]){ $dados[ $chave_lista ] = $nova_linha; } if($nova_linha["em_risco"]){ $risco_turma[$nova_linha["turma"]] +=1; } ksort($risco_turma,SORT_STRING); ksort($dados,SORT_STRING); ksort($turmas,SORT_STRING); ksort($datas,SORT_STRING); return array("turmas"=>$turmas,"risco_turma"=>$risco_turma,"dados"=>$dados,"datas"=>$datas); } function tdata($data){ $d = explode("/", $data); return $d[2] ."/" . $d[1] . "/" . $d[0]; } function mapa_de_chaves($linha0){ $k = array(); for($i = 0; $iquery($sql); if ($result->num_rows > 0) { while($user = $result->fetch_assoc()) { if($user["email"]==$email&&$user['senha']==$senha){ $token = gerar_token(); $sql = "UPDATE usuarios SET token='$token' WHERE email='$email'"; $mysql_conn->query($sql); $mysql_conn->close(); return array("res"=>"ok","token"=> $token); } } } $mysql_conn->close(); return array("res"=>"erro", "token"=>""); } function check_login($email,$token){ $mysql_servername = $GLOBALS['mysql_servername']; $mysql_username = $GLOBALS['mysql_username']; $mysql_password = $GLOBALS['mysql_password']; $mysql_dbname = $GLOBALS['mysql_dbname']; $mysql_conn = new mysqli($mysql_servername, $mysql_username, $mysql_password, $mysql_dbname); $sql = "SELECT `email`,`token` FROM `usuarios` WHERE email='$email'"; $result = $mysql_conn->query($sql); $mysql_conn->close(); if ($result->num_rows > 0) { while($user = $result->fetch_assoc()) { if($user["email"]==$email&&$user['token']==$token){ return true; } } } return false; } function exemplo_busca(){ $mysql_servername = $GLOBALS['mysql_servername']; $mysql_username = $GLOBALS['mysql_username']; $mysql_password = $GLOBALS['mysql_password']; $mysql_dbname = $GLOBALS['mysql_dbname']; $conn = new mysqli($mysql_servername, $mysql_username, $mysql_password, $mysql_dbname); if ($conn->connect_error) {die("Connection failed: " . $conn->connect_error);} //$sql = "INSERT INTO `usuarios`(`email`, `senha`, `nome`) VALUES ('novoemail@gmail.com','12345678','novousuario')"; //$sql = "SELECT * FROM `usuarios` WHERE 1"; //$sql = "SELECT * FROM `usuarios` WHERE 1 ORDER BY nome DESC"; //$sql = "SELECT `email`,`senha` FROM `usuarios` WHERE email='novoemail@gmail.com'"; //$sql = "UPDATE usuarios SET senha='123', nome='abc' WHERE email='novoemail@gmail.com'"; //$sql = "DELETE FROM usuarios WHERE nome='abc'"; $result = $conn->query($sql); if ($result->num_rows > 0) { while($row = $result->fetch_assoc()) { print_r($row); echo "
"; } } $conn->close(); } function gerar_token($tamanho=50, $maiusculas=true, $minusculas=true, $numeros=true, $simbolos=false){ $ma = "ABCDEFGHIJKLMNOPQRSTUVYXWZ"; $mi = "abcdefghijklmnopqrstuvyxwz"; $nu = "0123456789"; $si = "!@#$%¨&*()_+="; if ($maiusculas){$senha .= str_shuffle($ma);} if ($minusculas){$senha .= str_shuffle($mi);} if ($numeros){$senha .= str_shuffle($nu);} if ($simbolos){$senha .= str_shuffle($si);} return substr(str_shuffle($senha),0,$tamanho); } function csvToArray($csvFile){ $file_to_read = fopen($csvFile, 'r'); $lines = array(); while (!feof($file_to_read) ) { $lines[] = fgetcsv($file_to_read); } return $lines; } ?> ProjetosIFMS