Search the Community
Showing results for tags 'put com php'.
Found 1 result
-
Como realizar put com a biblioteca curl com um array múltiplo
arlindophp posted a calendar event in Comunidade iMasters
Pessoal estou tentando realizar um put com um json utilizando a biblioteca curl, mas só consigo fazer um por vez. Existe alguma forma de fazer isso usando a biblioteca Curl do php? Segue o código fonte funcionando, mas o curl não está aceitando um array multidimensional. ***************************** <?php function doPut($url, $fields) { $fields = (is_array($fields)) ? http_build_query($fields) : $fields; if ($ch = curl_init($url)) { curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Length: ' . strlen($fields))); curl_setopt($ch, CURLOPT_POSTFIELDS, $fields); curl_exec($ch); //$resp = curl_exec($ch); $status = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); return (int) $status; } else { return false; } } session_start(); $s_chave = $_POST['edtChave']; $_SESSION['s_chave'] = $s_chave; $edtChave = $_POST['edtChave']; $edtCultura = $_POST['edtCultura']; $edtPraga = $_POST['edtPraga']; $edtDose = $_POST['edtDose']; $edtEspecificacao = $_POST['edtEspecificacao']; $edtAplicaTerrestre = $_POST['edtAplicaTerrestre']; $edtAplicarea = $_POST['edtAplicarea']; $edtIntseg = $_POST['edtIntseg']; $edtIntEntrada = $_POST['edtIntEntrada']; $edtDadosGerais = $_POST['edtDadosGerais']; $url = "www.api.site.com"; echo 'Url = ' . $url; echo '<br>'; $data_array2 = array(); for ($i = 0; $i < 5; $i++) { $montagem_array = array( 'cultura' => $_POST['edtCultura'], 'praga' => $_POST['edtPraga'], 'dose' => $_POST['edtDose'], 'especificacao' => $_POST['edtEspecificacao'], 'aplicaterrestre' => $_POST['edtAplicaTerrestre'], 'aplicaerea' => $_POST['edtAplicarea'], 'intseg' => $_POST['edtIntseg'], 'intentrada' => $_POST['edtIntEntrada'], 'dadosgerais' => $_POST['edtDadosGerais'], ); $data_array2[$i] = $montagem_array; } //$json = json_encode($data_array2); echo '<br>'; echo 'Array convertido para formato json: ' . json_encode($data_array2); echo '<br>'; //$data = $array_para_string; //echo $data.'+cultura=asdf&praga=asdf&dose=dasf&especificacao=sadf&aplicaterrestre=sadf&aplicaerea=asdf&intseg=2&intentrada=1&dadosgerais=sdaf'; $header = array( 'Authorization: falkdsjçlaskf' ); //Nova tentativa 07/01/2022 if (doPut($url, $data_array2) == 200) { echo 'Passou!'; echo '<br>'; echo json_encode($data_array2); echo '<br>'; } // do something else { echo 'Não deu certo'; echo '<br>'; echo json_encode($data_array2); echo '<br>'; } //Nova tentativa //header('location:jsonpostprodutobula_teste.php');