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
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:
\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).
alert('Dados de acesso inválidos!')";
echo"";
}
?>
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).
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).
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
48 Responses
Muito bom, muito bom mesmo, gostaria que fosse postado um tutorial passo a passo de como fazer um sistema de contracheque online…
Olá Paulo,
Agradeço o comentário. Fico feliz que este sistema esteja sendo útil!
Bem… nosso trabalho é atender suas necessidades… Sua sugestão já está em nossa lista de atividades e deverá ser publicada até o fim do mês de Setembro.
Continue acompanhando nossas matérias, tirando suas dúvidas e indicando a seus amigos programadores…
Estamos a disposição para postar o melhor conteúdo com qualidade e gerar um maior conhecimento.
Abraço,
Quemuel Aquino
Ok…Quemuel…agora que vi sua resposta…mas agradeço…tenho chance de um passo a passo com um sistema de contracheque online?
Cara vocês são demais adoro esse site é meu favorito.
Olá Rodrigo,
Agradeço pelo comentário.
Contamos com seu auxílio na indicação de novas matérias que você tenha interesse!
Nosso compromisso é prestar o melhor serviço, ensinando e mostrando com facilidade como se elaborar um bom sistema.
Abraço,
Quemuel Aquino
Tipo eu queria ver um slide em jquery e css. Para vocês isso "facil".
Agradeço se puderem fazer esse topico.
Olá Rodrigo! Escrevi este artigo e publiquei hoje: https://www.webmaster.pt/sliders-jquery-8747.html . Um Abraço! Rui Soares
Obrigado pela atenção Rui Soares.O post é bem informativo vai me ajudar muito, não só eu mas todos leitores.De parabéns a equipe webmaste.pt
Bom fim de semana, Rodrigo!
Estou testando o sistema, mas quando vou cadastrar o serviço, clico em confirmar, parece que os dados foram enviados mas nao cadastram no banco nem aparece a msg de dados enviados com sucesso, o que pode ser ??
Olá,
Já coloquei o sistema pra funcionar, porém está dando alguns erros, quando vou cadasrtrar uma OS na hora de cadastrar vai para uma página toda em branco. Não consigo cadastrar também novos administradores dá a seguinte mesagem: "Erro ao alterar os dados do Administrador". Nos dados pessoais também dá erro. O sistema parece ser muito bom, me seria muito útil, se vocês ou alguém poder me ajudar ficaria muito grato.
Abs,
Olá Raphael, está acontecendo a mesma coisa comigo na hora de cadastrar uma OS. Você conseguiu resolver esse problema? pode me ajudar?
Comigo tambem acontece a mesma coisa…
Tem algo errado o sistema não grava nada no banco
Estava eu na net a procurar um sistema de OS, e vi o seu.
Bom comecei a testa-lo, mas estou com problema:
1: mesmo colocando o codigo do prot.php nas paginas continuo com acesso no sistema sem colocar usuário e senha.
2. Ao enviar a OS, pagina em branco e sem erros ou mensagens, e o cadastro não vai, ou seja perde o que foi digitado e nao grava na base de dados.
dei umas olhadas e infelizmente não achei nada, como a cabeça já não é tão boa. preciso de sua ajuda ok
abraços e obrigado
Olá Gustavo! Gostaria de saber se conseguiu resolver esse problema, pois o meu também apresenta o mesmo problema do item 2, ou seja: Ao enviar a OS, pagina em branco e sem erros ou mensagens, e o cadastro não vai, ou seja perde o que foi digitado e nao grava na base de dados
Desde Já obrigado.
Amigos, consegui resolver o problema!!! É bem simples…
Basta iniciar a variável "set" com valor "1":
case cadastrar:
———————–Trecho da pag "script_os.php"—————-
$cliente=$_POST['cliente'];
$email=$_POST['email'];
$servico=$_POST['servico'];
$detalhes=$_POST['detalhes'];
$custo=str_replace(".","",$_POST['custo']);
$forma=$_POST['forma'];
$metodo=$_POST['metodo'];
$venc=$_POST['venc'];
$garantia=$_POST['garantia'];
$prazo=$_POST['prazo'];
$set=$_POST['set'];
$id=$_POST['id'];
$idg=$_GET['id'];
$ac=$_GET['SET'];
$set=1; <———————-Inicie a variável com valo "1"
————————————
Ai arruma o código! Abraços
Fora os dugs acima falta a Library/menu3.lbi Favor responda nossas duvidas e se possivel up o sistema com correção fora isso muito obrigado o O.S está excelente parabens.
Olá Sera que pode me ajudar, o script está dando erro
"Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/Sao_Paulo' for '-3.0/no DST' instead in C:Arquivos de programasVertrigoServwwwOSactionconfig.php on line 42"
o que será que é ?
estou usando o phpmyadmin versão 3.3.9.2
Obrigado
Olá, excelente este sistema, gostaria de um tutorial sobre o sistema de painel de controle para sites, adicionar máteiras, noticias e muito mais.
Obrigado
parabéns Web MAsters.pt perfect este site!
Bom dia Excelente material muito bom mesmo … Gostaria de sua ajuda para aprender a desenvolver um portal de contabilidade todo administrado pelo contador , cadastrado de clientes completo e quando o cliente estive fazendo aniversário destacar na pagina home , download e upload , o próprio postar os seus links com as informações que ele acha interessante …
Se poder me ajudar fico muito agradecido
maicrotec@hotmail.com
Quemuel Aquino boa noite gostei muito desse programa de voces mas tou com um pequeno problema o data base nao ta reconhecendo as tabelas tipo listar o dreamweaver mas ainda assim concigo conectar o sistema….
o que devo fazer
O que pode ser esse erro? Notice: Use of undefined constant login – assumed 'login' in C:wampwwwOSsessionprot.php on line 2.
Gostei mas está dando erro para cadastrar OS com página em branco, já conseguiram resolver esse problema?
Não foi possível selecionar o Banco de Dados
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:Program FilesEasyPHP-5.3.8.0wwwactionconfig.php on line 26
Olá, o meu sistema esta dando a seguinte mensagem:
Notice: Use of undefined constant login – assumed 'login' in sessionprot.php on line 2
Notice: Use of undefined constant cod – assumed 'cod' in sessionprot.php on line 2
O que poderia ser ???
Obrigado e parabéns.
Muito obrigado meu amigo, faz um tempo que estava procurando isto, abração.
Ola, não estou conseguindo fazer com que o sistema grave novas OS
Olá a todos nao consegui lançar nada na os ela não grava nada se possivel me ajude
ola, tem como vc postar o fonte deste sistema de orçamento…
O PROBLEMA É GERAL… O SISTEMA NÃO GRAVA AS O.S. TELA EM BRANCOO
MUITO BACANA A IDEIA POREM VI UNS BUGS NELE QUE VOU TRABALHAR EM CIMA PARA ARRUMAR
POREM COMO NOSSO AMIGO FALOU ELE PEGOU ENTAO NAO E AUTORIA DELE MAIS MESMO ASSIM
PARABENS POIS MUITO BACANA DESSA IDEIA DA PRA FAZER MUITAS COISAS.
OBS: O BUG E SEGUINTE SE VC NAO POR NEM UM LOGIN E SENHA E MANDAR LOGAR ELE LOGA NORMALMENTE MAIS ISSO E SIMPLES PARA ARRUMAR A SESSIONS.
perfeito, bonito, mas não funciona, tela em branco quando tenta gravar OS
Ele nao esta funcionando o cadastro de OS ¬¬
Nao mesmo nao cadastra O.S!
Boa tarde pessoal. Para resolver o problema de cadastrar OS é so ir no codigo "script_os.php", e editar logo no início do código, deixando dessa forma: include("action/config.php");
include("session/prot.php");
Falta o menu
PÁGINA PRINCIPAL | DADOS DA EMPRESA | CADASTRO ADMINISTRADOR | CADASTRO DE O.S. |
O código já está assim
include("action/config.php");
include("session/prot.php");
mesmo assim não grava nada no banco.
e também pode ser acessado com qualquer login.
É bonito, mas não funciona nada.
Alguem já fez as alterações necessárias para o sistema funcionar?
Boa tarde, sou novo nisso tudo, mais baixei o seu programa, mais nao consigo passar da tela de login, fica dados de acesso invalidos, e nao entra, aguardo resposta
Gustavo entra no phpmyadmin e veja o usuário e senha cadastrados lá acho que sã: admin e admin na senha qualquer coisa: osmanobr@hotmail.com não fui eu que postei o tutorial acima mas achei ele legal, bem feito.
como instalo esse zip?
Notice: Use of undefined constant login – assumed 'login' in C:xampphtdocsossessionprot.php on line 2
Notice: Use of undefined constant cod – assumed 'cod' in C:xampphtdocsossessionprot.php on line 2
como corrijo este problema? nao consigo gravar nada e ainda o que abre aparece com valores errados.
Notice: Undefined variable: cliente in C:xampphtdocsosos_alterar.php on line 524
sistema pode ser bom mas a seguranca falha nao gostei desta parte pois o sistema nao e seguro
Onde vejo a opção de alterar a senha para acessar o sistema???
Olá otimo artigo, mas está realmente com alguns bugs, meus problemas são os mesmos relatados logo acima, alguém conseguiu achar uma solução? Não esta gravando nada no banco
Notice: Undefined variable: row in C:wampwwwOrcamentoos_listar.php on line 304
Segue a solução para a pagina em branco quando for cadastrar.
Script_os.php
case cadastrar:
$cliente=$_POST[‘cliente’];
$email=$_POST[’email’];
$servico=$_POST[‘servico’];
$detalhes=$_POST[‘detalhes’];
$custo=str_replace(“.”,””,$_POST[‘custo’]);
$forma=$_POST[‘forma’];
$metodo=$_POST[‘metodo’];
$venc=$_POST[‘venc’];
$garantia=$_POST[‘garantia’];
$prazo=$_POST[‘prazo’];
$set=$_POST[‘set’];
$id=$_POST[‘id’];
$idg=$_GET[‘id’];
$ac=$_GET[‘SET’];
$set=1; <<< Este é o valor que foi adicionado
Copo posso corrigir este erro
Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/Sao_Paulo' for '-2.0/DST' instead in C:xampphtdocsOSactionconfig.php on line 42
Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/Sao_Paulo' for '-2.0/DST' instead in C:xampphtdocsOSactionconfig.php on line 43
Warning: session_start() [function.session-start]: Cannot send session cookie – headers already sent by (output started at C:xampphtdocsOSactionconfig.php:42) in C:xampphtdocsOSactionvalidar.php on line 15
Warning: session_start() [function.session-start]: Cannot send session cache limiter – headers already sent (output started at C:xampphtdocsOSactionconfig.php:42) in C:xampphtdocsOSactionvalidar.php on line 15
Warning: Cannot modify header information – headers already sent by (output started at C:xampphtdocsOSactionconfig.php:42) in C:xampphtdocsOSactionvalidar.php on line 22
Cadastrar a OS resolvi assim:
$query = "insert into tbl_os(
cliente,email,servico,detalhes,custo,forma,metodo,venc,prazo,garantia,data) values (
'$cliente','$email','$servico','$detalhes','$custo','$forma','$metodo','$venc','$prazo','$garantia',curdate())";
$resultado = mysql_query($query);
if ($resultado){
?>
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript"> alert ("Orçamento enviado com sucesso")</SCRIPT>
<SCRIPT language="JavaScript">window.location.href="os_listar.php";</SCRIPT>
<?
}
else
{
?>
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript"> alert ("Erro ao enviar o Orçamento")</SCRIPT>
<SCRIPT language="JavaScript">window.location.href="os_listar.php";</SCRIPT>
<?
}