Ir para conteúdo
Fórum Script Brasil
  • 0

Php Soap


Izabelle Sakashita

Pergunta

Boa Tarde,

Estou tentando utilizar o php soap e não estou utilizando wsdl e ele me apresenta o seguinte erro:

Fatal error: Uncaught SoapFault exception: [Client] looks like we got no XML document in /var/www/workspace/RadiusTools/php/Login.php:9
Stack trace:
#0 /var/www/workspace/RadiusTools/php/Login.php(9): SoapClient->__soapCall('Login', Array)
#1 {main}
  thrown in /var/www/workspace/RadiusTools/php/Login.php on line 9
Server.php
<?php
ini_set('soap.wsdl_cache_enabled', 0); 
ini_set('soap.wsdl_cache_ttl', 0); 

include_once 'class.phpmailer.php';
include_once 'class.smtp.php';
include_once 'Base.php';
include_once '../resources/configs/config.php';

$server = new SoapServer(null,array("uri"=>$uri));

function Login($data){
    $result = '';
    $access = '';
    $result1 = '';
    $perfil = '';
    $usuario = $data['usuario'];
    $senha = base64_encode($data['senha']);
    $ip = $_SERVER['REMOTE_ADDR']; // Salva o IP do visitante
    $time = date('Y-m-d H:i:s'); // Salva a data e hora atual (formato MySQL)

    $base = new Base();     
    $db = $base->getDb();
    $sql = "select idusuario,nome,usuario,nivel from usuario"
    .$sql = " left outer join perfil on usuario.idperfil = perfil.idperfil "
    .$sql = " where usuario = :usuario and senha = :senha ";
    $stm = $db->prepare($sql);
    $stm->bindValue(':usuario', $usuario);
    $stm->bindValue(':senha', $senha);
    $stm->execute();
    $qtdUser = $stm->rowCount();      
    
    $rows = $stm->fetch(PDO::FETCH_ASSOC);
    $idusuario = $rows['idusuario'];
    $nome = $rows['nome'];
    $nivel = $rows['nivel'];
    $usuario = $rows['usuario'];
   
    if ($qtdUser > 0){
        $access = 1;
        $result["success"] = true;
    }else{
        if(isset($perfil) && $perfil === 0){
                $access = 0;
                $result["success"] = false;
                $result["errors"]["reason"] = "Usuário Sem permissão de acesso ao sistema, aguarde email de liberação de acesso!";   
            }else{
                $access = 0;
                $result["success"] = false;
                $result["errors"]["reason"] = "Usuário ou senha inválido(s)";   
            }
        }
   
   $stm = $db->prepare('insert into log_acesso (dataloga,iploga,statusloga,idusuario) values (:dataloga,:iploga,:statusloga,:idusuario)');
   $stm->bindValue(":dataloga", $time);
   $stm->bindValue(":iploga", $ip);
   $stm->bindValue(":statusloga", $access);
   $stm->bindValue(":idusuario", $idusuario);
   $result1 = $stm->execute();

   return $result; 
}
$server->addFunction('Login');
$server->handle();
Login.php
<?php
   include_once "../resources/configs/config.php";
         
   $client = new SoapClient(null,array("location" => $location,"uri" => $uri,"trace" => true));
   
   $nome = $_POST['usuario'];
   $senha = $_POST['senha'];
      
   $resultado = $client->__soapCall("Login",array('usuario'=>$nome,'senha'=>$senha));
   
   if($resultado){
        setcookie ("nomeusuariologado", $nome,time()+3600);
        setcookie ("senhausuariologado", $senha,time()+3600);

        $client->__setCookie('nomeusuariologado', $nome);
        $client->__setCookie('senhausuariologado', $senha);
   }
      
   echo json_encode($resultado);
?>

Algm pode me ajuda ?

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,6k
×
×
  • Criar Novo...