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

Upload de Arquivo com Webservice e PHP


Paulo Fonseca

Pergunta

Boa tarde,

Estou desenvolvendo um aplicativo, em PHP, que o usuário precisa enviar um documento, word, excel ou mesmo alguma imagem, utilizando um WebService.

Para isso é necessário enviar o arquivo no formato byte.

não sei como converter este arquivo para byte, já tentei diversas coisas e não sei como.

meu problema esta na linha do arquivo.

a assinatura do metodo está da seguinte maneira:

public Resultado InputIncident(string addon, byte arquivo, string cliente, string descricao, string nomearquivo, string pathlevel, string prioridade, string produto, string resultado, string versao, string versaoaddon, string titulo)

Obrigado

<?php

require_once('lib/nusoap.php');

$client = new nusoap_client('http://localhost/IncidentWService/IncidentWService.asmx?wsdl', true);

$err = $client->getError();

if ($err) {

echo "Erro na Construção do objeto";

echo $err;

}

$filename="./tmp/document.docx";

$ap_param = array("addon" => "add on",

"arquivo" => $filename,

"cliente" => "Company",

"descricao" => "teste",

"nomearquivo" => "",

"pathlevel" => "1",

"prioridade" => "Normal",

"produto" => "product",

"resultado" => "result",

"versao" => "3.0 SP1",

"versaoaddon" => "versao add on");

$result = $client->call('InputIncident', $ap_param);

if ($client->fault) {

print_r($result);

} else {

$err = $client->getError();

if ($err) {

echo $err;

} else {

foreach ($result as $key => $first) {

}

foreach ($first as $key => $second) {

}

foreach ($second as $key => $third) {

}

print($third);

}

}

?>

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Pessoal,

Eu tive um progresso fazendo algo em .NET. alguém saberia como eu poderia escrever o código abaixo, que está em C#, em PHP ? Acho assim que eu conseguiria resolver o assunto.

Byte[] FileByte;

FileByte = System.IO.File.ReadAllBytes("./tmp/teste.jpg");

string Fileb64 = Convert.ToBase64String(FileByte);

Obrigado

Link para o comentário
Compartilhar em outros sites

  • 0

Pessoal,

Consegui eu mesmo resolver a questão abaixo, e para documentação vou anexar a solução do problema.

Alterado a assinatura do metodo para:

public Resultado InputIncident(string addon, string arquivo, string cliente, string descricao, string nomearquivo, string pathlevel, string prioridade, string produto, string resultado, string versao, string versaoaddon, string titulo)

Alterado o codigo do PHP para:

<?php

require_once('lib/nusoap.php');

$client = new nusoap_client('http://localhost/IncidentWService/IncidentWService.asmx?wsdl', true);

$err = $client->getError();

if ($err) {

echo "Erro na Construção do objeto";

echo $err;

}

$filename = file('./tmp/document.docx', FILE_BINARY);

$ap_param = array("addon" => "add on",

"arquivo" => base64_encode(implode('', $filearray)),

"cliente" => "Company",

"descricao" => "teste",

"nomearquivo" => "",

"pathlevel" => "1",

"prioridade" => "Normal",

"produto" => "product",

"resultado" => "result",

"versao" => "3.0 SP1",

"versaoaddon" => "versao add on");

$result = $client->call('InputIncident', $ap_param);

if ($client->fault) {

print_r($result);

} else {

$err = $client->getError();

if ($err) {

echo $err;

} else {

foreach ($result as $key => $first) {

}

foreach ($first as $key => $second) {

}

foreach ($second as $key => $third) {

}

print($third);

}

}

?>

Espero que no futuro isso possa ajudar alguém.

Abraços

Link para o comentário
Compartilhar em outros sites

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,2k
    • Posts
      652k
×
×
  • Criar Novo...