Ir para conteúdo

Arquivado

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

Ellen Diana Guissoni

Webservice wsdl

Recommended Posts

olá pessoal,

estou instanciando uma funcão para este webservice, mas não está dando certo.
O q eu estou fazendo de errado?

alguem poderia me ajudar ?

$client = new SoapClient('http://rondap.ura.uniube.br:8050/g5-senior-services/ronda_Synccom_senior_g5_rh_hr_relatorios?wsdl' true);

$relIn = array(
'prRelatorio' => 'HRCP103.APU', 
'prExecFmt' => 'tefFile', 
'prDir' => $_SERVER['DOCUMENT_ROOT'].'/servicos/arquivos/',
'prFileName' => 'arquivo_20161122',
'prFileExt' => 'PDF', 
'prSaveFormat' => 'tsfPDF',
'prEntrada' => '<EDatInR=18/08/2016><EDatFiR=17/09/2016><ELisDem=S><EMarAfa=S><EMarFol=S><EHorasAfastadas=S><EAbrGpe=N><EAbrEmp=1><EAbrTcl=1><EAbrCad=19430>',
'prEntranceIsXML' => 'F',
'prLOG' => 'T' 
);

$arguments = array(
'user' => '*******',
'password' => '*******',
'encryption' => 0,
'parameters' => $relIn
);

$result = $client->Relatorios($arguments);

return $result->RelatoriosResponse;

Compartilhar este post


Link para o post
Compartilhar em outros sites
O que o código deveria fazer mas não está fazendo?


A URL que você usou está certa? Pois acessando ela, não funciona...


Outro problema é que o parâmetro após a URL é opcional, mas se você passá-lo, ele deve ser um array de configuração (e não boolean, como você fez).


Essa função "Relatorios", de onde ela vem? Tem certeza que ela existe? Pelo menos na classe SoapClient ela não existe.



Adicione este código bem no início do arquivo para tornar as mensagens de erro visíveis:




<?php
ini_set("display_errors", 1);
error_reporting(E_ALL|E_STRICT);

// restante do seu código


Compartilhar este post


Link para o post
Compartilhar em outros sites

Este é meu cógido Anderson,

dele deveria gerar uma folha de ponto, mas mas está chamando a função correta, já tentei todas da wsdl.


error_reporting(E_ALL);
ini_set('display_errors', '1'); 

include_once $_SERVER['DOCUMENT_ROOT'] . "/uniube/back_end/framework/NuSOAP/NuSOAP_0.9.5/lib/nusoap.php";

if (strstr($_SERVER['SERVER_NAME'],'intrateste')){
$conexao = require_once('intranet_conecta_teste.php');
}else{
$conexao = require_once('intranet_conecta.php');
}


class Ponto{

 private $conexao;

 public function __construct($conexao) { 
$this->conexao = $conexao;
}


public function get($key) {
if ( array_key_exists( $key, get_class_vars(get_class($this)) ) ){
return $this->$key;
}else{
echo "O campo $key não está definido para este objeto";
return false;
}


}

public function set( $key, $value ) { 
if($value === ''){
$value = NULL;
} 
if ( array_key_exists( $key, get_class_vars(get_class($this)) ) ){
$this->$key = $value; 
return true;
}else{
echo "O campo $key não está definido para este objeto";
return false;
} 
} 

public function __destruct(){


}

 //public function FolhaPonto($inicio, $final, $colaborador, $data) { 
public function FolhaPonto() { 


 $client = new SoapClient("http://rondap.ura.uniube.br:8050/g5-senior-services/ronda_Synccom_senior_g5_rh_hr_relatorios?wsdl");


$arguments =/* array(
'user' => '******',
'password' => '******',
'encryption' => 0,


'parameters' =>*/ array(
'prRelatorio' => 'HRCP103.APU', 
'prExecFmt' => 'tefFile', 
'prDir' => $_SERVER['DOCUMENT_ROOT'].'/servicos/arquivos/',
'prFileName' => 'arquivo_20161122',
'prFileExt' => 'PDF', 
'prSaveFormat' => 'tsfPDF', 
'prEntrada' => '<EDatInR=18/08/2016><EDatFiR=17/09/2016><ELisDem=S><EMarAfa=S><EMarFol=S><EHorasAfastadas=S><EAbrGpe=N><EAbrEmp=1><EAbrTcl=1><EAbrCad=19430>',//'prEntrada' => '<EDatInR='.$inicio.'><EDatFiR='.$final.'><ELisDem=S><EMarAfa=S><EMarFol=S><EHorasAfastadas=S><EAbrGpe=N><EAbrEmp=1><EAbrTcl=1><EAbrCad='.$colaborador.'>', #parametros fixos e variáveis para o colaborador ter acesso a sua folha de ponto
'prEntranceIsXML' => 'F', 
//) 
);
  
  
try {
$result = $client->relatoriosRelatoriosIn($arguments);
} catch (Exception $e) {
return '0';
die;
}


return $result->g5seniorservices->Relatorios('******','*****', 0, $arguments);

}

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

O primeiro passo é descobrir o que está errado, e depois achar a solução. Mas como não tenho como testar o código, você é quem precisa achar o que está errado.

Você habilitou as mensagens de erros (display_errors...)? O que aparece na tela quando você acessa a página?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Anderson,

esses são o xml

This XML file does not appear to have any style information associated with it. The document tree is shown below.
<!--
 Published by JAX-WS RI at http://jax-ws.dev.java.net. RI's version is Metro/2.2-b13 (branches/2.2-6964; 2012-01-09T18:04:18+0000) JAXWS-RI/2.2.6-promoted-b20 JAXWS/2.2 svn-revision#unknown. 
-->
<!--
 Generated by JAX-WS RI at http://jax-ws.dev.java.net. RI's version is Metro/2.2-b13 (branches/2.2-6964; 2012-01-09T18:04:18+0000) JAXWS-RI/2.2.6-promoted-b20 JAXWS/2.2 svn-revision#unknown. 
-->
<definitions xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wsp="http://www.w3.org/ns/ws-policy" xmlns:wsp1_2="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://services.senior.com.br" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://services.senior.com.br" name="g5-senior-services">
<types>
<xsd:schema>
<xsd:import namespace="http://services.senior.com.br" schemaLocation="http://rondap.ura.uniube.br:8050/g5-senior-services/ronda_Synccom_senior_g5_rh_hr_relatorios?xsd=1"/>
</xsd:schema>
</types>
<message name="Relatorios">
<part name="user" type="xsd:string"/>
<part name="password" type="xsd:string"/>
<part name="encryption" type="xsd:int"/>
<part name="parameters" type="tns:relatoriosRelatoriosIn"/>
</message>
<message name="RelatoriosResponse">
<part name="result" type="tns:relatoriosRelatoriosOut"/>
</message>
<portType name="ronda_Synccom_senior_g5_rh_hr_relatorios">
<operation name="Relatorios" parameterOrder="user password encryption parameters">
<input wsam:Action="http://services.senior.com.br/ronda_Synccom_senior_g5_rh_hr_relatorios/RelatoriosRequest" message="tns:Relatorios"/>
<output wsam:Action="http://services.senior.com.br/ronda_Synccom_senior_g5_rh_hr_relatorios/RelatoriosResponse" message="tns:RelatoriosResponse"/>
</operation>
</portType>
<binding name="ronda_Synccom_senior_g5_rh_hr_relatoriosPortBinding" type="tns:ronda_Synccom_senior_g5_rh_hr_relatorios">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc"/>
<operation name="Relatorios">
<soap:operation soapAction=""/>
<input>
<soap:body use="literal" namespace="http://services.senior.com.br"/>
</input>
<output>
<soap:body use="literal" namespace="http://services.senior.com.br"/>
</output>
</operation>
</binding>
<service name="g5-senior-services">
<port name="ronda_Synccom_senior_g5_rh_hr_relatoriosPort" binding="tns:ronda_Synccom_senior_g5_rh_hr_relatoriosPortBinding">
<soap:address location="http://rondap.ura.uniube.br:8050/g5-senior-services/ronda_Synccom_senior_g5_rh_hr_relatorios"/>
</port>
</service>
</definitions>

import...

This XML file does not appear to have any style information associated with it. The document tree is shown below.
<!--
 Published by JAX-WS RI at http://jax-ws.dev.java.net. RI's version is Metro/2.2-b13 (branches/2.2-6964; 2012-01-09T18:04:18+0000) JAXWS-RI/2.2.6-promoted-b20 JAXWS/2.2 svn-revision#unknown. 
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" version="1.0" targetNamespace="http://services.senior.com.br">
<xs:complexType name="relatoriosRelatoriosIn">
<xs:sequence>
<xs:element name="flowInstanceID" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="flowName" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prAnexoBool" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prAssunto" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prCC" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prCCo" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prDest" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prDir" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prEntrada" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prEntranceIsXML" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prExecFmt" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prFileExt" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prFileLayout" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prFileName" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prLOG" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prLayoutEXCEL" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prLayoutSAGA" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prMensagem" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prOrder" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prPrintDest" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prRelatorio" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prRemetente" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prRetorno" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prSaveFormat" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prTypeBmp" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prUniqueFile" type="xs:string" nillable="true" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="relatoriosRelatoriosOut">
<xs:sequence>
<xs:element name="erroExecucao" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prLOG" type="xs:string" nillable="true" minOccurs="0"/>
<xs:element name="prRetorno" type="xs:string" nillable="true" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:schema>

De erro está dando isso: Fatal error: Call to undefined method soapclient::relatoriosRelatoriosIn() in /web/default/html/servicos/folhaPonto.class.php on line 86

Quer dizer que eu não estou chamando a função correta. Já tentei todas, mas nao funciona

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma chamada bem simples seria assim:

<?php
$client = new SoapClient("endereço do serviço");
$response = $client->nomeDaFuncao();
var_dump($response);

Você não tem o manual desse web service?

Crie um novo arquivo com este código e veja o que aparece na tela:

<?php
ini_set("display_errors", 1);
error_reporting(E_ALL|E_STRICT);
 
$client = new SoapClient("http://rondap.ura.uniube.br:8050/g5-senior-services/ronda_Synccom_senior_g5_rh_hr_relatorios?wsdl");
var_dump($client);
die("?");

Compartilhar este post


Link para o post
Compartilhar em outros sites

Use este código para ver as funções disponíveis para uso:

<?php
$client = new SoapClient("http://rondap.ura.uniube.br:8050/g5-senior-services/ronda_Synccom_senior_g5_rh_hr_relatorios?wsdl");
echo "<pre>";
print_r($client->__getFunctions());
die("?");

Compartilhar este post


Link para o post
Compartilhar em outros sites
Então agora a comunicação com o web service está funcionando :)


Agora o que está errado é os parâmetros que você passou para a função/serviço... ou você não passou os parâmetros necessários, ou fez de forma errada...




$parameters = Array(
"blabla1" => "valor",
"blabla2" => "valor",
"blabla3" => "valor",
"etc"
);

$client->Relatorios($parameters);

Compartilhar este post


Link para o post
Compartilhar em outros sites
Tente detalhar mais, porque "não dá certo" é muito genérico e não dá para saber o que aconteceu aí...

O que exatamente aconteceu?

Qual a parte que não funcionou?

O que aparece na tela quando você acessa a página?

Tem alguma mensagem de erro?

O que o print_r($client->__getFunctions()) mostrou na tela?

Como está seu código agora?



Eu testei usando os arquivos xml que você passou com o código abaixo e funcionou:



<?php
ini_set("display_errors", 1);
error_reporting(E_ALL|E_STRICT);

// eu salvei os arquivos para poder testar, mas você deve trocar pela sua url
$client = new SoapClient("http://127.0.0.1/wsdl/service.xml");
echo "<pre>";
var_dump($client->__getFunctions());
die("?");


Foi exibido isto na tela:


print-screen-wsdl-__getFunctions.png

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não está chamando as funções que deveria. E geralmente me mostra um erro.

No momento coloquei assim o código como o retorno das função q você fez, pq chamei as funções com o "__getFunctions()" e não me retornou nd.

 public function FolhaPonto($inicio, $final, $colaborador, $data) { 
//public function FolhaPonto() {


$client = new soapclient("http://rondap.ura.uniube.br:8050/g5-senior-services/ronda_Synccom_senior_g5_rh_hr_relatorios?wsdl"); 

$arguments = /*array(
'user' => '********',
'password' => '*******',
'encryption' => 0,


'parameters' =>*/ array(
'prDir' => $_SERVER['DOCUMENT_ROOT'].'/servicos/arquivos/',//'C:\Users\ellen.bols.ded\Desktop',  //ondap\Senior\Rel\Cartao_Ponto_WebService', #caminho do diretorio *verificar um diretório que todos os colaboradores tenham acesso


'prEntrada' => '<EDatInR='.$inicio.'><EDatFiR='.$final.'><ELisDem=S><EMarAfa=S><EMarFol=S><EHorasAfastadas=S><EAbrGpe=N><EAbrEmp=1><EAbrTcl=1><EAbrCad='.$colaborador.'>', #parametros fixos e variáveis para o colaborador ter acesso a sua folha de ponto
/*'prEntrada' => '<EDatInR=18/08/2016><EDatFiR=17/09/2016><ELisDem=S><EMarAfa=S><EMarFol=S><EHorasAfastadas=S><EAbrGpe=N><EAbrEmp=1><EAbrTcl=1><EAbrCad=19430>',*/
'prEntranceIsXML' => 'F', 
'prExecFmt' => 'tefFile', #tipo de arquivo
'prFileExt' => 'PDF', #tipo do arquivo
'prFileName' => 'cartao_ponto_'.$colaborador.'_'.$data, #nome do arquivo ex.: arquivo_20161104
/*'prFileName' => 'arquivo_20161122',*/
'prRelatorio' => 'HRCP103.APU', #tipo de relatório
'prSaveFormat' => 'tsfPDF', #salvar arquivo

//) 
);

try {


$result = $client->relatoriosRelatoriosOut->Relatorios('******', '*******', 0, relatoriosRelatoriosIn($arguments));
} catch (Exception $e) {
return '0';
die;
}


/*echo '<pre>'; 
var_dump ($result);
die;*/ 


return $result;






}

E está me retornando isso


Notice: Undefined property: soapclient::$relatoriosRelatoriosOut in /web/default/html/servicos/folhaPonto.class.php on line 82

Fatal error: Call to a member function Relatorios() on a non-object in /web/default/html/servicos/folhaPonto.class.php on line 82

Compartilhar este post


Link para o post
Compartilhar em outros sites

Anteriormente, eu estava chamando assim:

$result = $client->call('Relatorios', $arguments, 'http://rondap.ura.uniube.br:8050/g5-senior-services/ronda_Synccom_senior_g5_rh_hr_relatorios');

E estava me retornando :

Não sei se poderia fazer assim, então na tentativa e erro rsrs

bool(false)


Compartilhar este post


Link para o post
Compartilhar em outros sites
Você está chamando a função de forma errada. O "relatoriosRelatoriosOut" não é uma propriedade, é apenas o tipo do retorno da função Relatorios; assim como "relatoriosRelatoriosIn" também não é uma função, mas apenas o tipo que se espera que a variável $arguments seja.


O correto seria assim:



$result = $client->Relatorios('******', '*******', 0, $arguments);




Crie um novo arquivo PHP, cole o código abaixo nele, acesse a página, e então cole aqui um print screen do que aparece quando você acessa a página:




<?php
ini_set("display_errors", 1);
error_reporting(E_ALL|E_STRICT);

$client = new SoapClient("http://rondap.ura.uniube.br:8050/g5-senior-services/ronda_Synccom_senior_g5_rh_hr_relatorios?wsdl");

echo "<pre>";
var_dump($client);
var_dump($client->__getFunctions());

$result = $client->Relatorios('******', '*******', 0, Array());
var_dump($result);



obs: você tem certeza que o endereço "http://rondap.ura.uniube.br:8050/etc" está correto, né? Porque quando eu tento acessar, não funciona...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenho ctz q o endereço está correto, pelo q eu vi, ele é local, por isso não está conseguindo acessar.

O código ficou assim :

ini_set("display_errors", 1);
error_reporting(E_ALL|E_STRICT);


include_once $_SERVER['DOCUMENT_ROOT'] . "/uniube/back_end/framework/NuSOAP/NuSOAP_0.9.5/lib/nusoap.php";
 
$client = new soapclient("http://rondap.ura.uniube.br:8050/g5-senior-services/ronda_Synccom_senior_g5_rh_hr_relatorios?wsdl"); 
 
 $arguments =  array(
			'prDir' => $_SERVER['DOCUMENT_ROOT'].'/servicos/arquivos/',//'C:\Users\ellen.bols.ded\Desktop',  //ondap\Senior\Rel\Cartao_Ponto_WebService', #caminho do diretorio *verificar um diretório que todos os colaboradores tenham acesso
			'prEntrada' => '<EDatInR=18/08/2016><EDatFiR=17/09/2016><ELisDem=S><EMarAfa=S><EMarFol=S><EHorasAfastadas=S><EAbrGpe=N><EAbrEmp=1><EAbrTcl=1><EAbrCad=19430>',
			'prEntranceIsXML' => 'F', 
			'prExecFmt' => 'tefFile', #tipo de arquivo
			'prFileExt' => 'PDF', #tipo do arquivo
			'prFileName' => 'cartao_ponto_19430_20161122',
			'prRelatorio' => 'HRCP103.APU', #tipo de relatório
			'prSaveFormat' => 'tsfPDF', #salvar arquivo
	);
 
 
echo "<pre>";
var_dump($client->__getFunctions());
 
$result = $client->Relatorios('*****', '*****', 0, $arguments);
var_dump($result);



Só tem isso na página, e ela está me retornando:

Fatal error: Call to undefined method soapclient::__getFunctions() in /web/default/html/servicos/teste.class.php on line 30

Compartilhar este post


Link para o post
Compartilhar em outros sites
Certo.


Mas crie um novo arquivo PHP com exatamente o código abaixo, nada de diferente, e mostre o que aparece na tela. Isso vai ajudar a achar onde está o problema.



<?php
ini_set("display_errors", 1);
error_reporting(E_ALL|E_STRICT);

$client = new SoapClient("http://rondap.ura.uniube.br:8050/g5-senior-services/ronda_Synccom_senior_g5_rh_hr_relatorios?wsdl");

echo "<pre>";
var_dump($client);
var_dump($client->__getFunctions());

$result = $client->Relatorios('******', '*******', 0, Array());
var_dump($result);

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coloquei o include:

ini_set("display_errors", 1);
error_reporting(E_ALL|E_STRICT);
include_once $_SERVER['DOCUMENT_ROOT'] . "/uniube/back_end/framework/NuSOAP/NuSOAP_0.9.5/lib/nusoap.php"; 
 
$client = new SoapClient("http://rondap.ura.uniube.br:8050/g5-senior-services/ronda_Synccom_senior_g5_rh_hr_relatorios?wsdl"); 
 
echo "<pre>";
var_dump($client);
var_dump($client->__getFunctions());
 
$result = $client->Relatorios('******', '*******', 0, Array());
var_dump($result);

e apareceu isso:

object(soapclient)#1 (48) {
  ["username"]=>
  string(0) ""
  ["password"]=>
  string(0) ""
  ["authtype"]=>
  string(0) ""
  ["certRequest"]=>
  array(0) {
  }
  ["requestHeaders"]=>
  bool(false)
  ["responseHeaders"]=>
  string(0) ""
  ["responseHeader"]=>
  NULL
  ["document"]=>
  string(0) ""
  ["endpoint"]=>
  string(97) "http://rondap.ura.uniube.br:8050/g5-senior-services/ronda_Synccom_senior_g5_rh_hr_relatorios?wsdl"
  ["forceEndpoint"]=>
  string(0) ""
  ["proxyhost"]=>
  bool(false)
  ["proxyport"]=>
  bool(false)
  ["proxyusername"]=>
  bool(false)
  ["proxypassword"]=>
  bool(false)
  ["portName"]=>
  string(0) ""
  ["xml_encoding"]=>
  string(0) ""
  ["http_encoding"]=>
  bool(false)
  ["timeout"]=>
  int(0)
  ["response_timeout"]=>
  int(30)
  ["endpointType"]=>
  string(4) "soap"
  ["persistentConnection"]=>
  bool(false)
  ["defaultRpcParams"]=>
  bool(false)
  ["request"]=>
  string(0) ""
  ["response"]=>
  string(0) ""
  ["responseData"]=>
  string(0) ""
  ["cookies"]=>
  array(0) {
  }
  ["decode_utf8"]=>
  bool(true)
  ["operations"]=>
  array(0) {
  }
  ["curl_options"]=>
  array(0) {
  }
  ["bindingType"]=>
  string(0) ""
  ["use_curl"]=>
  bool(false)
  ["fault"]=>
  NULL
  ["faultcode"]=>
  NULL
  ["faultstring"]=>
  NULL
  ["faultdetail"]=>
  NULL
  ["title"]=>
  string(6) "NuSOAP"
  ["version"]=>
  string(5) "0.9.5"
  ["revision"]=>
  string(18) "$Revision: 1.123 $"
  ["error_str"]=>
  string(0) ""
  ["debug_str"]=>
  string(371) "2016-11-24 14:10:56.277209 soapclient: ctor wsdl= timeout=0 response_timeout=30
endpoint=string(97) "http://rondap.ura.uniube.br:8050/g5-senior-services/ronda_Synccom_senior_g5_rh_hr_relatorios?wsdl"
2016-11-24 14:10:56.293101 soapclient: instantiate SOAP with endpoint at http://rondap.ura.uniube.br:8050/g5-senior-services/ronda_Synccom_senior_g5_rh_hr_relatorios?wsdl
"
  ["charencoding"]=>
  bool(true)
  ["debugLevel"]=>
  int(9)
  ["XMLSchemaVersion"]=>
  string(32) "http://www.w3.org/2001/XMLSchema"
  ["soap_defencoding"]=>
  string(10) "ISO-8859-1"
  ["namespaces"]=>
  array(4) {
    ["SOAP-ENV"]=>
    string(41) "http://schemas.xmlsoap.org/soap/envelope/"
    ["xsd"]=>
    string(32) "http://www.w3.org/2001/XMLSchema"
    ["xsi"]=>
    string(41) "http://www.w3.org/2001/XMLSchema-instance"
    ["SOAP-ENC"]=>
    string(41) "http://schemas.xmlsoap.org/soap/encoding/"
  }
  ["usedNamespaces"]=>
  array(0) {
  }
  ["typemap"]=>
  array(6) {
    ["http://www.w3.org/2001/XMLSchema"]=>
    array(43) {
      ["string"]=>
      string(6) "string"
      ["boolean"]=>
      string(7) "boolean"
      ["float"]=>
      string(6) "double"
      ["double"]=>
      string(6) "double"
      ["decimal"]=>
      string(6) "double"
      ["duration"]=>
      string(0) ""
      ["dateTime"]=>
      string(6) "string"
      ["time"]=>
      string(6) "string"
      ["date"]=>
      string(6) "string"
      ["gYearMonth"]=>
      string(0) ""
      ["gYear"]=>
      string(0) ""
      ["gMonthDay"]=>
      string(0) ""
      ["gDay"]=>
      string(0) ""
      ["gMonth"]=>
      string(0) ""
      ["hexBinary"]=>
      string(6) "string"
      ["base64Binary"]=>
      string(6) "string"
      ["anyType"]=>
      string(6) "string"
      ["anySimpleType"]=>
      string(6) "string"
      ["normalizedString"]=>
      string(6) "string"
      ["token"]=>
      string(6) "string"
      ["language"]=>
      string(0) ""
      ["NMTOKEN"]=>
      string(0) ""
      ["NMTOKENS"]=>
      string(0) ""
      ["Name"]=>
      string(0) ""
      ["NCName"]=>
      string(0) ""
      ["ID"]=>
      string(0) ""
      ["IDREF"]=>
      string(0) ""
      ["IDREFS"]=>
      string(0) ""
      ["ENTITY"]=>
      string(0) ""
      ["ENTITIES"]=>
      string(0) ""
      ["integer"]=>
      string(7) "integer"
      ["nonPositiveInteger"]=>
      string(7) "integer"
      ["negativeInteger"]=>
      string(7) "integer"
      ["long"]=>
      string(7) "integer"
      ["int"]=>
      string(7) "integer"
      ["short"]=>
      string(7) "integer"
      ["byte"]=>
      string(7) "integer"
      ["nonNegativeInteger"]=>
      string(7) "integer"
      ["unsignedLong"]=>
      string(0) ""
      ["unsignedInt"]=>
      string(0) ""
      ["unsignedShort"]=>
      string(0) ""
      ["unsignedByte"]=>
      string(0) ""
      ["positiveInteger"]=>
      string(0) ""
    }
    ["http://www.w3.org/2000/10/XMLSchema"]=>
    array(11) {
      ["i4"]=>
      string(0) ""
      ["int"]=>
      string(7) "integer"
      ["boolean"]=>
      string(7) "boolean"
      ["string"]=>
      string(6) "string"
      ["double"]=>
      string(6) "double"
      ["float"]=>
      string(6) "double"
      ["dateTime"]=>
      string(6) "string"
      ["timeInstant"]=>
      string(6) "string"
      ["base64Binary"]=>
      string(6) "string"
      ["base64"]=>
      string(6) "string"
      ["ur-type"]=>
      string(5) "array"
    }
    ["http://www.w3.org/1999/XMLSchema"]=>
    array(11) {
      ["i4"]=>
      string(0) ""
      ["int"]=>
      string(7) "integer"
      ["boolean"]=>
      string(7) "boolean"
      ["string"]=>
      string(6) "string"
      ["double"]=>
      string(6) "double"
      ["float"]=>
      string(6) "double"
      ["dateTime"]=>
      string(6) "string"
      ["timeInstant"]=>
      string(6) "string"
      ["base64Binary"]=>
      string(6) "string"
      ["base64"]=>
      string(6) "string"
      ["ur-type"]=>
      string(5) "array"
    }
    ["http://soapinterop.org/xsd"]=>
    array(1) {
      ["SOAPStruct"]=>
      string(6) "struct"
    }
    ["http://schemas.xmlsoap.org/soap/encoding/"]=>
    array(3) {
      ["base64"]=>
      string(6) "string"
      ["array"]=>
      string(5) "array"
      ["Array"]=>
      string(5) "array"
    }
    ["http://xml.apache.org/xml-soap"]=>
    array(1) {
      [0]=>
      string(3) "Map"
    }
  }
  ["xmlEntities"]=>
  array(5) {
    ["quot"]=>
    string(1) """
    ["amp"]=>
    string(1) "&"
    ["lt"]=>
    string(1) "<"
    ["gt"]=>
    string(1) ">"
    ["apos"]=>
    string(1) "'"
  }
}


Fatal error:  Call to undefined method soapclient::__getFunctions() in /web/default/html/servicos/teste.class.php on line 10

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por landerbadi
      Boa tarde pessoal. Estou tentado fazer uma consulta no banco de dados porém estou tendo dificuldades. Tenho uma tabela chamada "itens" com os seguintes campos: id, item, ativo. Nela tem cadastrado vários itens. No campo ativo eu coloco a letra "S" para informar que este item está ativo no sistema. Por exemplo: 1, casa, S 2, mesa, S 3, cama, S 4, moto S 5, rádio O quinto registro "radio" não está ativo no sistema pois não tem um "S" no campo ativo. E outra tabela chamada "produtos" com os seguintes campos (id, item1, item2, item3) com os seguintes registros: 1, casa, mesa, moto 2, mesa, casa, cama 3, rádio, cama, mesa Eu preciso fazer uma busca na tabela produtos da seguinte maneira: Eu escolho um registro na tabela "itens", por exemplo "mesa". Preciso fazer com que o php me liste todos os registros da tabela "produtos" que contenham a palavra "mesa". Até aqui tudo bem eu consigo listar. Estou fazendo assim: <?php $item = "mesa" $sql = mysqli_query($conn, "SELECT * FROM produtos WHERE item1 LIKE '$item' OR item2 LIKE '$item' OR item3 LIKE '$item' LIMIT 10"); while($aux = mysqli_fetch_assoc($sql)) { $id = $aux["id"]; $item1 = $aux["item1"]; $item2 = $aux["item2"]; $item3 = $aux["item3"]; echo $id . " - " . $item1 . ", " . $item2 . ", " $item3 . "<br>"; } ?> O problema é que está listando todos os registros que contém o item mesa. Eu preciso que o php verifique os demais item e me liste somente os registro em que todos os registros estejam ativos no sistema. No exemplo acima ele não deveria listar o registro 3. pois nesse registro contém o item "radio" e este item não está ativo no sistema. Ou seja, o registro "radio" na tabela itens não possui um "S" na coluna "ativo". Alguém sabe como resolver isso?
    • Por ILR master
      Fala galera.
      Espero que todos estejam bem.
      Seguinte: Tenho um arquivo xml onde alguns campos estão com : (dois pontos), como o exemplo abaixo:
       
      <item>
      <title>
      d sa dsad sad sadasdas
      </title>
      <link>
      dsadas dsa sad asd as dsada
      </link>
      <pubDate>sadasdasdsa as</pubDate>
      <dc:creator>
      d sad sad sa ad as das
      </dc:creator>
      </item>
       
      Meu código:
       
      $link = "noticias.xml"; 
      $xml = simplexml_load_file($link); 
      foreach($xml -> channel as $ite) {     
           $titulo = $ite -> item->title;
           $urltitulo = $ite -> item->link;
           print $urltitulo = $ite -> item->dc:creator;
      } //fim do foreach
      ?>
       
      Esse campo dc:creator eu não consigo ler. Como faço?
       
      Agradeço quem puder me ajudar.
       
      Abs
       
       
    • Por First
      Olá a todos!
       
      Eu estou criando um sistema do zero mas estou encontnrando algumas dificuldades e não estou sabendo resolver, então vim recorrer ajuda de vocês.
      Aqui está todo o meu código: https://github.com/PauloJagata/aprendizado/
       
      Eu fiz um sistema de rotas mas só mostra o conteúdo da '/' não sei porque, quando eu tento acessar o register nada muda.
      E eu também quero que se não estiver liberado na rota mostra o erro de 404, mas quando eu tento acessar um link inválido, nada acontece.
      Alguém pode me ajudar com isso? E se tiver algumas sugestão para melhoria do código também estou aceitando.
       
       
      Desde já, obrigado.
    • Por landerbadi
      Olá pessoal, boa tarde
       
      Tenho uma tabela chamada "produtos" com os seguintes campos (id, produto) e outra tabela chamada "itens" com os seguintes campos (id, prod_01, prod_02, prod_03, prod_04).
       
      Na tabela produtos eu tenho cadastrado os seguintes produtos: laranja, maçã, uva, goiaba, arroz, feijão, macarrão, etc.
       
      Na tabela itens eu tenho cadastrado os itens da seguinte maneira:
       
      1, laranja, uva, arroz, feijão;
      2, maçã, macarrão, goiaba, uva;
      3, arroz, feijão, maçã, azeite
       
      Meu problema é o seguinte: 
      Eu escolho um produto da tabela "produtos", por exemplo "uva".  Preciso fazer uma consulta na tabela "itens" para ser listado todos os registros que contenham o produto "uva" e que todos os demais produtos estejam cadastrados na tabela "produtos".
       
      No exemplo acima seria listado apenas dois registros, pois o terceiro registro não contém o produto "uva". 
       
      Alguém pode me ajudar? Pois estou quebrando a cabeça a vários dias e não consigo achar uma solução.
    • Por landerbadi
      Boa tarde pessoal. Estou tentado fazer uma consulta no banco de dados porém estou tendo dificuldades. Tenho uma tabela chamada "itens" com os seguintes campos: id, item, plural, ativo. Nela tem cadastrado vários itens e seu respectivo plural. No campo ativo eu coloco a letra "S" para informar que esta palavra está ativa no sistema. Por exemplo: 1, casa, casas, S 2, mesa, mesas, S 3, cama, camas, S 4, moto, motos, S 5, rádio, rádios O quinto registro "radio" não está ativo no sistema pois não tem um "S" no campo ativo. E outra tabela chamada "variações" com os seguintes campos (id, item1, item2, item3) com os seguintes registros: 1, casa, camas, moto 2, mesas, casas, radio 3, rádio, cama, mesa Eu preciso fazer uma busca na tabela variações da seguinte maneira: Eu escolho um registro na tabela "itens", por exemplo "casa". Preciso fazer com que o php me liste todos os registros da tabela "variações" que contenham a palavra "casa". Porém se tiver algum registro com a palavra "casas" também tem que ser listado. Neste caso ele irá encontrar dois registros. Agora eu preciso que o php verifique os demais itens e faça a listagem apenas dos item que estão ativos (que contenham um "S" no campo ativo. Neste caso ele irá encontrar apenas um registro, pois o segundo registro contém a palavra "rádio". E "rádio" não está ativo na tabela itens. Como faço isso?
×

Informação importante

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