Na matéria anterior falamos um pouco sobre o Sistema de O.S. e demonstramos seu funcionamento em telas printadas:
Como Criar Sistema De O.S. / Orçamentos Parte1 [4]
Na matéria de hoje estaremos postando parte do script para que você possa posteriormente dar manutenção e até mesmo melhorar a qualidade do que foi desenvolvido.
Conhecendo Os Ficheiros
Como disse anteriormente, os ficheiros que postamos não são dificeis de serem customizados.
Abaixo falaremos um pouco sobre alguns deles. ok?
Diretório: action
config.php:
Ele tem a finalidade de efetuar o acesso à base de dados e trazer em tela as principais variáveis que descrevem a empresa (ex.: Nome da empresa, URL, Telefones, Emails).
Veja o código a seguir:
<?php
// servidor
$database = "SERVIDOR"; // Nome do Servidor
$dbname = "BASEDEDADOS"; // Nome da Base de Dados
$usuario = "USUARIO"; // Usuário do MySQL
$dbsenha = "SENHA"; // Senha do Usuário MySQL
$conexao=mysql_connect ($database, $usuario, $dbsenha);
if($conexao){
if (mysql_select_db($dbname, $conexao)){
print "";
}else{
print "Não foi possível selecionar o Banco de Dados";
}
}else{
print "Erro ao conectar o MySQL";
}
$query_email_admin = "SELECT * FROM dados_empresa WHERE id_empresa = '1'";
$rs_query_email_admin = mysql_query ($query_email_admin);
$rs_row_email_admin = mysql_fetch_array($rs_query_email_admin);
$email_comercial_cliente = $rs_row_email_admin["email_comercial"];
$email_suporte_cliente = $rs_row_email_admin["email_suporte"];
$nome_empresa = $rs_row_email_admin['nome_empresa'];
$descricao_empresa = $rs_row_email_admin['nome_fantasia'];
$endereco_site_cliente = $rs_row_email_admin['url'];
$ddd_fone_empresa = $rs_row_email_admin['ddd_fone'];
$fone_empresa = $rs_row_email_admin['fone'];
$ddd_fone_filial_empresa = $rs_row_email_admin['ddd_fone_filial'];
$fone_filial_empresa = $rs_row_email_admin['fone_filial'];
$cidade_empresa = $rs_row_email_admin['cidade'];
$data=date("d/m/Y"); // DATA HJ
$hora=date("H:i"); // HORA AGORA
//================================
//DEFININDO OS CABEÇALHOS DE EMAIL
//================================
$admail = $email_comercial_cliente; // EMAIL DE ADMINISTRADOR
$ass_mail= "ORDEM DE SERVIÇO"; // ASSUNTO DO EMAIL ( AO EFETUAREM CADASTRO )
// HEADER PARA ENVIO DO EMAIL
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-Type:text/html; charset=iso-8859-1\r\n";
$headers .= "From:[$nome_empresa]<$email_comercial_cliente>\r\n";
# ===============================================================
# Função para formatar o valor do preço.
# ===============================================================
function formata($valor){
$negativo = false;
$preco = "";
$valor = intval(trim($valor));
if ($valor < 0) {
$negativo = true;
$valor = abs($valor);
}
$valor = strrev($valor);
while (strlen($valor) < 3) {
$valor .= "0";
}
for ($i = 0; $i < strlen($valor); $i++)
{
if ($i == 2)
{
$preco .= ",";
}
if (($i <> 2) AND (($i+1)%3 == 0))
{
$preco .= ".";
}
$preco .= substr($valor, $i , 1);
}
$preco = strrev($preco);
return ($negativo ? "-" : "") . $preco;
}
?>
validar.php
A página em questão como o nome já diz, tem a finalidade de efetuar validação.
A validação dela e simples e durante o SELECT ele busca o login (email) e senha na base de dados, finalizando com a criação de sessão (conforme o código a seguir).
<?php
include("config.php");
$login = $_POST['login'];
$senha = $_POST['senha'];
$query_validar = "select * from tbl_usuarios where usuarios_email ='$login' and usuarios_password = '$senha'";
$rs_validar = mysql_query($query_validar);
if ($rs_validar){
$campo_validar = mysql_fetch_array($rs_validar);
$usuarios_id = $campo_validar['usuarios_id'];
$nome_usuario = $campo_validar['nome'];
session_start();
$_SESSION[id] = $usuarios_id;
$_SESSION[nome] = $nome_usuario;
$_SESSION[login] = $login;
$_SESSION[cod] = $senha;
header("location:../principal.php");
}else{
echo"<script>alert('Dados de acesso inválidos!')</script>";
echo"<script>location.href='javascript:history.back(1)'</script>";
}
?>
Diretório: session
logout.php
Como o nome já diz, este ficheiro tem a finalidade de efetuar o logout (saída) do sistema após destruir a sessão do Usuário conectado (conforme código a seguir).
<?php session_start();
unset($_SESSION[login]);
unset($_SESSION[cod]);
session_unregister("login");
session_unregister("cod");
session_destroy();
header("location:../index.php");
?>
prot.php
O código disponível nesta página deve ser inserido em cada página interna do sistema, de forma que nenhum usuário sem acesso possa acessá-la (conforme código a seguir).
<?php session_start();
if (!(isset($_SESSION[login]) AND (isset($_SESSION[cod])))){
header("location:index.php");
}
?>
Diretório: tpls
os.php
O diretório “tpls” tem a finalidade de gravar os templates, ou seja: arquivos em html que serão usados como padrão em nossas atividades.
O ficheiro os.php tem a finalidade de ser usado durante o envio da ordem de serviço através de email (sendo disparado através da página “os_listar.php”).
ass.html
Este ficheiro tem por finalidade confirmar o recebimento do orçamento e início das atividades.
OBS.: Como estes arquivos são padrão, porém, podem ser alterados conforme sua necessidade.
Agradecimentos
Quero agradecer ao Sr André Sam que há anos atrás disponibilizou gratuitamente na internet um sistema de Ordem de Serviços que me ajudou bastante.
Através dele aprendi a criar tal aplicação e hoje tenho condições de criar soluções infinitamente maiores.
Bem… ficamos por aqui com esta matéria. Espero que esta solução lhe seja útil.
Em caso de dúvidas ou sugestões para novas matérias, entre em contato conosco e teremos prazer em lhes ajudar.
O código da base de dados está no ficheiro script-sql.txt. O login é comandosusa@gmail.com. A password é admin. Para alterar a password, abra o ficheiro script-sql.txt e procure:
INSERT INTO `tbl_usuarios` VALUES (3,'ADMINISTRADOR','admin','admin','comandosusa@gmail.com'
Altere esse email e os restantes para o seu email.
Download dos arquivos usados neste tutorial: Como Criar Sistema De O.S. / Orçamentos [5]