Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

PauloRMaia

Rotina Verificação e Permissão

Recommended Posts

Preciso de uma ajuda para montar um algoritimo de verificação PHP.

Vou tentar descrever a sequencia do que preciso, pois sou novato em PHP e eu uso esta rotina e tenho ela escrita em VBA porem preciso em PHP. 

 

1º Preciso verificar a conexão do usuario com a internet,  pensei assim;

<?php  
if (!$sock = @fsockopen('www.google.com.br', 80, $num, $error, 5))  
echo 'OFF LINE';  
else  
echo 'OK';  
?>  

2º inserir dentro dessa verificação a rotina assim ;

<?php  

if (!$sock = @fsockopen('www.google.com.br', 80, $num, $error, 5))  // Se estiver offline

// 1º Verifico a chave para saber quantas execuções off ele tem direito : VBA <=> LerChaveApp = Reg.RegRead("HKEY_CURRENT_USER\Software\" & chvReg & "\exec")
  
  // pego o numero de execuções off e diminuo dessa execução que ele se encontra = sempre nº - 1  ,  e atualizo o registro para a próxima vez que ele entrar se ainda estiver off ir decrescendo até chegar um ponto de execuções em que ele não pode mais executar e não permite mais logar.
  
  // mostro a mensagem na tela dizendo quantas execuções off ainda restam para o usuario e libero para ele logar no sistema

else  // Se estiver online  , * Obs para o primeiro uso do sistema, é necessario que o usuario estaja online para efetuar o registro 

// 1º cria e/ou Atualizo valores na chave de registro 
  // VBA =  Dim Reg As Object
  // Set Reg = CreateObject("wscript.shell")
  // Reg.RegWrite "HKEY_CURRENT_USER\Software\" & chvReg & "\exec", nExec
  
$cliente = new SoapClient('http://www.webservicex.net/MEUWEBSERVICE.asmx?WSDL');
$metodo = 'ConvertTemp';
$argumentos= array('ConvertTemp'=> array(
                        'Temperature'=> 31,
                        'FromUnit'=> 'degreeCelsius',
                        'ToUnit'=> 'degreeFahrenheit'
                ));
$resultado= $cliente->__soapCall($metodo , $argumentos); 

?>  

uma rotina de VBA só para constar...... 

Public Function Permissao_Execucao()

On Error GoTo Permissao_Execucao_Erro

    'Verifica a chave do usuário
    Dim myChave
myChave = Nz(DLookup("[ChaveUsuario]", "Reg_App"), 0)

    'Se não há chave do usuáiro, abre o formulário para registrar o aplicativo
    'If myChave = 0 Then
    'MsgBox "Aplicativo nao registrado. Realize o registro. "
    'DoCmd.OpenForm "Usuario_Aplicativo"
    'DoCmd.CancelEvent
    'Exit Function
    'End If

    'Recebe a rota da base de dados no WebService
    Dim mDatabase As String
mDatabase = RotaDatabaseWS

    'Acessa o webserivce para verificar se o usuário tem permissão
    Dim csReg As New clsws_WebService
Set csReg = New clsws_WebService
Response = csReg.wsm_ConsultarUsuario(myChave, mDatabase)

If Response(0) = "Usuário Registrado" Then    'Usuário registrado

  If Response(5) = "Ativo" Then    'Se usuario ativo.

      Call CriaChaveApp            'Ativa execuções emergências

      DoCmd.OpenForm "Login"    'Abre o formulário de login

  ElseIf Response(5) = "Inativo" Then    'Se usuário inativo

      DoCmd.Close acForm, "start"
      DoCmd.Close acForm, "splash"
      MsgBox "Sua licenca encontra-se inativa." & vbCr & "Entre em contato com o suporte.", vbCritical, NomeAplicativo
      Call DesativaChaveApp    'Desativa execuções emergênciais
      DoCmd.Quit acQuitSaveAll    'Finaliza aplicação

  End If

Else  'Usuário não registrado
  DoCmd.Close acForm, "splash"
  MsgBox Response(0)
  Call DesativaChaveApp       'Desativa execuções emergênciais
  DoCmd.Quit acQuitSaveAll    'Finalizar aplicativo
End If

On Error GoTo 0
Exit Function

Permissao_Execucao_Erro:

DoCmd.Hourglass False

If err.Number = 438 Then

  Call ExecucaoEmergencial

 

 

Public Function wsm_ConsultarUsuario(ByVal str_ChaveUsuario As String, ByVal str_RotaDatabase As String) As Variant
'*****************************************************************
'
'"wsm_ConsultarUsuario" is an array with elements defined as String
'See Complex Types: Arrays in Microsoft Office 2003 Web Services Toolkit Help
'for details on implementing arrays.
'*****************************************************************

'Error Trap
    On Error GoTo wsm_ConsultarUsuarioTrap

    wsm_ConsultarUsuario = sc_WebService.ConsultarUsuario(str_ChaveUsuario, str_RotaDatabase)

    Exit Function
wsm_ConsultarUsuarioTrap:
    WebServiceErrorHandler "wsm_ConsultarUsuario"
End Function

No meu web service.  

 

result(2) = RS.Fields("ChaveUsuario").Value

result(5) = RS.Fields("Status").Value

result(20) = RS.Fields("nlicencas").Value 
result(21) = RS.Fields("nativacoes").Value 
result(22) = RS.Fields("ExOff").Value 

 

Meu form logim PHP => https://mega.nz/#!NBRGiDoY!PbCvfhjkiK3OugyYd81rO6WdBSl0xbo30uA38Zu8lGQ

 

 

Se precisarem de mais informações perguntem ,  por favor me ajudem a montar esse algoritimo  de verificação e permissão de acesso.

 

Grato 

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por Camille Roberta
      Olá,
       
      estou tendo dificuldades para criar o código de validação de um formulário que abrirá em um popup, o código fica se repetindo causando erro (o erro aparece na tela repetidamente de forma que não é possível preencher os campos). Peço gentilmente a ajuda de vocês.
       
      Código HTML:
       
      <HTML>
             <HEAD>
                        <link rel="stylesheet" href = "css/stylesheet1.css">
             </HEAD>
             <BODY>
      <!-- popup -->
             <div id = "popup" class = "popup">
                     <a>x</a>
                     <h3><center>Inscreva-se em nossa newsletter</center></h3>
                     <p><center>Cadastre-se e fique por dentro de nossos eventos e promoções!</center></p>
                           <form class="form" method= "get" name = "modal_form" onSubmit="return ( verifica() )">
                                <input id="name" name = "nome" type="text" placeholder="NOME" onblur="checar();" />
                                <input id="email" name = "email" type="text" placeholder="nome@email.com" onblur="checar();" />
      <br>
                               <span class = "nao_valido">Email Inválido</span>
      <br>
                               <input id="submit" type="submit" value="Enviar">
      </form>
              <br>
              </div>
       
      Código Javascript
       
      setTimeout(ApresentarPopup, 4000);
      function ApresentarPopup(){
              document.querySelector(".popup").style.display = "block";
              document
                  .querySelector(".popup a")
                  .addEventListener("click", function(){ document.querySelector(".popup").style.display = "none";
                  });
          }
      //validação
      function verifica() {
        if (document.forms[0].email.value.length == 0) {
          alert("Por favor, informe o seu e-mail.");
          document.modal_form.email.focus();
          return false;
        }
        return true;
      }

      function checar(){
          if( document.forms[0].email.value=="" 
              || document.forms[0].email.value.indexOf('@')==-1 
              || document.forms[0].email.value.indexOf('.')==-1 )
             {
              alert( "Por favor, informe um e-mail válido." );
              return false;
          }
          
          if (document.forms[0].nome.value == ""){
              alert ("Por favor, informe seu nome");
              return false;
          }
      }
                   <script type="text/javascript" src="js/script.js"></script>
    • Por Camille Roberta
      Olá,
       
      estou tendo dificuldades para criar o código de validação de um formulário que abrirá em um popup, o código fica se repetindo causando erro (o erro aparece na tela repetidamente de forma que não é possível preencher os campos). Peço gentilmente a ajuda de vocês.
       
      Código HTML:
       
      <HTML>
             <HEAD>
                        <link rel="stylesheet" href = "css/stylesheet1.css">
             </HEAD>
             <BODY>
      <!-- popup -->
             <div id = "popup" class = "popup">
                     <a>x</a>
                     <h3><center>Inscreva-se em nossa newsletter</center></h3>
                     <p><center>Cadastre-se e fique por dentro de nossos eventos e promoções!</center></p>
                           <form class="form" method= "get" name = "modal_form" onSubmit="return ( verifica() )">
                                <input id="name" name = "nome" type="text" placeholder="NOME" onblur="checar();" />
                                <input id="email" name = "email" type="text" placeholder="nome@email.com" onblur="checar();" />
      <br>
                               <span class = "nao_valido">Email Inválido</span>
      <br>
                               <input id="submit" type="submit" value="Enviar">
      </form>
              <br>
              </div>
       
      Código Javascript
       
      setTimeout(ApresentarPopup, 4000);
      function ApresentarPopup(){
              document.querySelector(".popup").style.display = "block";
              document
                  .querySelector(".popup a")
                  .addEventListener("click", function(){ document.querySelector(".popup").style.display = "none";
                  });
          }
      //validação
      function verifica() {
        if (document.forms[0].email.value.length == 0) {
          alert("Por favor, informe o seu e-mail.");
          document.modal_form.email.focus();
          return false;
        }
        return true;
      }

      function checar(){
          if( document.forms[0].email.value=="" 
              || document.forms[0].email.value.indexOf('@')==-1 
              || document.forms[0].email.value.indexOf('.')==-1 )
             {
              alert( "Por favor, informe um e-mail válido." );
              return false;
          }
          
          if (document.forms[0].nome.value == ""){
              alert ("Por favor, informe seu nome");
              return false;
          }
      }
                   <script type="text/javascript" src="js/script.js"></script>
    • Por Camille Roberta
      Olá,
       
      estou tendo dificuldades para criar o código de validação de um formulário que abrirá em um popup, o código fica se repetindo causando erro (o erro aparece na tela repetidamente de forma que não é possível preencher os campos). Peço gentilmente a ajuda de vocês.
       
      Código HTML:
       
      <HTML>
             <HEAD>
                        <link rel="stylesheet" href = "css/stylesheet1.css">
             </HEAD>
             <BODY>
      <!-- popup -->
             <div id = "popup" class = "popup">
                     <a>x</a>
                     <h3><center>Inscreva-se em nossa newsletter</center></h3>
                     <p><center>Cadastre-se e fique por dentro de nossos eventos e promoções!</center></p>
                           <form class="form" method= "get" name = "modal_form" onSubmit="return ( verifica() )">
                                <input id="name" name = "nome" type="text" placeholder="NOME" onblur="checar();" />
                                <input id="email" name = "email" type="text" placeholder="nome@email.com" onblur="checar();" />
      <br>
                               <span class = "nao_valido">Email Inválido</span>
      <br>
                               <input id="submit" type="submit" value="Enviar">
      </form>
              <br>
              </div>
       
      Código Javascript
       
      setTimeout(ApresentarPopup, 4000);
      function ApresentarPopup(){
              document.querySelector(".popup").style.display = "block";
              document
                  .querySelector(".popup a")
                  .addEventListener("click", function(){ document.querySelector(".popup").style.display = "none";
                  });
          }
      //validação
      function verifica() {
        if (document.forms[0].email.value.length == 0) {
          alert("Por favor, informe o seu e-mail.");
          document.modal_form.email.focus();
          return false;
        }
        return true;
      }

      function checar(){
          if( document.forms[0].email.value=="" 
              || document.forms[0].email.value.indexOf('@')==-1 
              || document.forms[0].email.value.indexOf('.')==-1 )
             {
              alert( "Por favor, informe um e-mail válido." );
              return false;
          }
          
          if (document.forms[0].nome.value == ""){
              alert ("Por favor, informe seu nome");
              return false;
          }
      }
                   <script type="text/javascript" src="js/script.js"></script>
    • Por netocazuza
      Tenho um sistema de Login, que já funciona em outro site e estou tentando transferir pra outro, e não funciona de jeito nenhum. Gostaria que alguém desse uma olhada. Se digito um usuário errado, retorna um erro de usuário inválido, então está checando o banco. Quando insiro um usuário certo, aparece as seguintes mensagens de erro:
      Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /home/netosale/public_html/e-educacao/validacao.php:2) in /home/netosale/public_html/e-educacao/validacao.php on line 28
      Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/netosale/public_html/e-educacao/validacao.php:2) in /home/netosale/public_html/e-educacao/validacao.php on line 28
      Warning: Cannot modify header information - headers already sent by (output started at /home/netosale/public_html/e-educacao/validacao.php:2) in /home/netosale/public_html/e-educacao/validacao.php on line 36
      Vou lá nessas duas linhas, e não consigo localizar absolutamente nada de anormal. O que pode estar acontecendo. Já baixei diversos outros sistemas de login, e todos dão erro. Será que é algum problema bom o bootstrap ou coisa parecida? Segue código pra que dêem uma olhada:
      <?php      // Verifica se houve POST e se o usuсrio ou a senha щ(sуo) vazio(s)   if (!empty($_POST) AND (empty($_POST['usuario']) OR empty($_POST['senha']))) {       header("Location: index.php"); exit;   }   // Tenta se conectar ao servidor MySQL   mysql_connect('localhost', 'xzthyb45', '164544515151561') or trigger_error(mysql_error());   // Tenta se conectar a um banco de dados MySQL   mysql_select_db('ljklfdfjkldj') or trigger_error(mysql_error());       $usuario = mysql_real_escape_string($_POST['usuario']);   $senha = mysql_real_escape_string($_POST['senha']);    // Validaчуo do usuсrio/senha digitados   $sql = "SELECT `id`, `nome`, `nivel` FROM `userPerms` WHERE (`usuario` = '".$usuario ."') AND (`senha` = '". sha1($senha) ."') AND (`ativo` = 1) LIMIT 1";   $query = mysql_query($sql);   if (mysql_num_rows($query) != 1) {       // Mensagem de erro quando os dados sуo invсlidos e/ou o usuсrio nуo foi encontrado       echo "Login invсlido!"; exit;   } else {      //  Salva os dados encontados na variсvel $resultado      $resultado = mysql_fetch_assoc($query);   }              // Se a sessуo nуo existir, inicia uma       if (!isset($_SESSION)) session_start();            //Salva os dados encontrados na sessуo       $_SESSION['UsuarioID'] = $resultado['id'];       $_SESSION['UsuarioNome'] = $resultado['nome'];       $_SESSION['UsuarioNivel'] = $resultado['nivel'];            // Redireciona o visitante       header("Location: novaTela.php");        exit;    ?>  
    • Por mauricio lanner
      Boa tarde pessoal, estou com uma duvida bem frequente, mas não consigo encontrar um codigo que se adeque so meu.
      Estou programando java pela primeira vez, e como teste, estou desenvolvendo um sistema simples de ordem de serviço. Eu quero fazer a verificação, quando usuários são cadastrado e só efetuar o cadastro quando o usuário não tiver já o cadastro no sql.
      Estou desenvolvendo a seguinte logica
      //verificação de o usuário ja está cadastrado String usuExiste = txtUsuUsu.getText(); String sql1 = "select * from empresa where nome_empresa like usuExiste"; int existe; if (usuExiste==sql1){ existe = 1; }else{ existe = 0; } System.out.printf ("%d",existe); //fim da verificação depois dessa verificação conforme o resultado for 1 ou 0 aí vem outro if com a mensagem de erro ou então o cadastro. O problema é que o retorno está sendo 0 tanto se o usuário existe ou se o usuário não existe. Eu acho que a logica é mais ou menos essa, porem não consigo acerta o codigo sql necessário para efetuar a consulta.
      Alguem consegue me dar uma ajuda? Lembrando que terminei a materia de C, mas java estou no inicio do semestre ainda.
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.