Jump to content
fellipe.arakaki

Como enviar os valores de uma combo pelo método POST via PHP

Recommended Posts

Boa tarde galera, estou criando um sistema de cadastro de produtos e estou tentando enviar os valores do form via post, acontece que eu tenho 3 campos do tipo texto e uma combobox onde o usuário escolhe a categoria, eu fiz o teste passando somente os 3 campos textos e o sistema insere no banco normalmente, mas quando tento pegar o valor de id que está dentro da combo o sistema não consegue inserir porém não mostra nenhum erro. A pergunta seria como eu faço pra pegar o valor do id que está dentro da combo?

Vou colocar o código pra facilitar

insere_produtos.png

Form-cadastro.png

Share this post


Link to post
Share on other sites

Não seria bem isso.... no caso eu tenho que carregar a combo com o id e a descrição da categoria e na página adiciona_produto.php passar somente o valor do id que está na combo, porém não está adicionando no banco e também não mostra qual o erro...

Share this post


Link to post
Share on other sites

Olá!
Acima da função insereProduto, coloque esse trecho de código:
 

<?php
if(sizeof($_POST)){
  echo '<pre>';
  print_r($_POST);
  echo '</pre>';
  die();
}

Só pra você saber se os dados estão chegando corretamente.
Se estiver, o problema pode ser na execução de sua query de inserção

Mostre-nos como você criou a query de inserção pra gente te orientar, blz?

Share this post


Link to post
Share on other sites

Olá Tetsuo, eu coloquei o trecho que você falou acima da função insereProduto e retornou erro exatamente quando tenta pegar o POST referente ao <select> vou postar abaixo o erro que retornou e colocar a query do banco

 

 

insereProduto.png

erro_Post.png

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By asacap1000
      Galera estou com uma dúvida, tenho a parte de envio de dados para em Post, com encode json e curl. Já pesquisei em todos os lugares e não encontrei nada pra clarear as idéias.
       
      a parte final é essa do envio (cliente)
      header("Content-Type: ".$mediaType); $headers = array(); $headers[] = "Accept: ".$mediaType; $headers[] = "Accept-Charset: ".$charSet; $headers[] = "Accept-Encoding: ".$mediaType; $headers[] = "Content-Type: ".$mediaType.";charset=".$charSet; $headers[] = "Authorization: Basic ".$AuthorizationHeaderBase64; $ch = curl_init(); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS,"contatos=$contatos"); #campos que serão enviados curl_setopt($ch, CURLOPT_USERPWD, $AuthorizationHeaderBase64); curl_setopt($ch, CURLOPT_HEADER, $headers); curl_setopt($ch, CURLINFO_HTTP_CODE, true); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);#ativa se for ter retorno do chamada $result = curl_exec($ch); $result2 = json_decode($result,true); curl_close($ch); if($result2 === false) { $err = 'Curl error: ' . curl_error($ch); $result2 = $err; echo "This is text".$err; } var_dump ($result2);  
      Preciso de ajuda para entender como deve ser feito a página que será chamada, no caso lado servidor.
       
      Como pode ver tenho um header configurado e será enviado com chave de autorização agora como isso é feito do lado servidor??
       
      Se alguém puder me ajudar, preciso entregar este webservice sexta feira 18/10. Todos os dados recebidos serão salvos no BD Oracle.
       
       
    • By Dj Del Palmis
      Olá pessoal criei um seguinte script para minha pagina para upload de múltiplas fotos, contudo coloquei um if para caso o campo $_FILES retornar vazio ele retorne uma msg de erro. Porém toda vez mesmo o campo file estando vazio, ele retorna que há algo. Alguém pode me dar uma ajuda no que estou fazendo de errado?
      if(!empty($_FILES["imagens"]) and !empty($_FILES["imagens"]["name"])){ $img_contar = count($_FILES["imagens"]["name"]); $array_img = ""; for ($i = 0; $i < $img_contar; $i++){ $imagens = $_FILES["imagens"]; $new_img = uniqid("img_", $imagens["name"][$i]); $extensao = pathinfo($_FILES["imagens"]["name"][$i], PATHINFO_EXTENSION); move_uploaded_file($imagens["tmp_name"][$i], "upload/".$new_img.".".$extensao); $array_img .= $new_img.".".$extensao.";"; } $insert = mysqli_query($conn, "INSERT INTO itens(codigo, model, nome, imagens, categoria, qnt, marca, preco) VALUES('".$cod."', '".$model."', '".$nome."', '".$array_img."', '".$cat."', '".$qnt."', '".$marca."', '".$preco."');"); if(!$insert){ echo "<center style='color:red' class='men'>O SQL retornou algum erro, tente novamente!</center>"; } else{ echo "<center style='color:green' class='men'>Produto cadastrado com exito!</center>"; } } else{ $insert = mysqli_query($conn, "INSERT INTO itens(codigo, model, nome, categoria, qnt, marca, preco) VALUES('".$cod."', '".$model."', '".$nome."', '".$cat."', '".$qnt."', '".$marca."', '".$preco."');"); if(!$insert){ echo "<center style='color:red' class='men'>O SQL retornou algum erro, tente novamente!</center>"; } else{ echo "<center style='color:green' class='men'>Produto cadastrado com exito!</center>"; } }  
    • By asacap1000
      Galera estou com um problema, não sei como montar a estrura para receber os dados vindo deste script e salvar no banco de dados.
      Se alguem puder me dar uma força, pelo menos como montar essa estrutura já vai ajudar muito.
       
      Segue script de envio.
      <?php $charSet = "UTF-8"; $mediaType = "application/json"; //header("Content-Type: ".$mediaType); //Configuracoes do sistema $url_integra_aurora = 'http://webservice.test/verify.php';////INFORMAR O LINK QUE SERÁ SOLICITADO NO ENVIO DOS DADOS //receber neste campo todos os dados via POST////// /////ABAIXO INSERIR OS DADOS DO POST EM UMA ARRAY///// $contatos = array( 'nome'=>urlencode("Ricardo"), 'idade'=>urlencode("4321"), 'email'=>urlencode("ricardo@mane.com"), 'telefone'=>urlencode("666-999") ); /////APÓS RECEBER LANÇAR OS DADOS EM UMA ARRAY ABAIXO SERÁ CODFICADO PARA JSON $data_post = json_encode($contatos); $url = $url_integra_aurora.""; $Datasecurity = date('Ymd'); ///ASSIM SEERÁ GERADA UMA CHAVE POR DIA $SecurityId = $Datasecurity.':'.'CNPJ'; ////ADICIONA A DATA UMA IDENTIFICAÇÃO DA EMRPESA NESTE CASO CNPJ $SecurityKey = "d1ZLpLQRGyb-h6ZEqnbhlS23WjBWl_hUGpB615sKGfw"; ////CHAVE DE SEGURANÇA SECUNDÁRIA FIXA $headers = array(); $headers[] = "Accept: ".$mediaType; $headers[] = "Accept-Charset: ".$charSet; $headers[] = "Accept-Encoding: ".$mediaType; $headers[] = "Content-Type: ".$mediaType.";charset=".$charSet; $AuthorizationHeader = $SecurityId.":".$SecurityKey; //// CHAVE DE SEGURANÇA GERADA DIARIAMENTE JUNTO COM CHAVE DE SEGURANÇA FIXA $AuthorizationHeaderBase64 = base64_encode($AuthorizationHeader); // APÓS JUNTAR AS CHAVES ELAS SÃO CODIFICADAS EM HASH BASE64 E ENVIADAS PARA O SERVIDOR VALIDAR $headers[] = "Authorization: Basic ".$AuthorizationHeaderBase64; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data_post); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $result = curl_exec($ch); $result2 = json_decode($result,true); var_dump($result2); curl_close($ch); ?>  
    • By Everson Gonçalves
      Olá, tenho um formulário de cadastro de produto no Mysql, no campo Telefone, o pessoal as vezes coloca  "(DDD) 9999-9999" eu quero cadastrar no mysql somente os numeros sem () e o sinal de -
       
      Como faço para remover esses caracteres especiais antes de cadastrar no banco?
      $tipo = strip_tags($_POST['tipo']); $nome = strip_tags($_POST['nome']); $telefone = strip_tags($_POST['telefone']); $titulo = strip_tags($_POST['titulo']); $valor = strip_tags($_POST['valor']); $raca = strip_tags($_POST['raca']); $descricao = strip_tags($_POST['descricao']); $cidade = strip_tags($_POST['cidade']); $estado = strip_tags($_POST['estado']);  
      Obrigado.
    • By Alesson Mendes
      Fala galera,
      Sou novato em Desenvolvimento Web, e estou precisando fazer uma inserção de dados sem atualizar a pagina.
      Preciso alterar varios valores de uma tabela, portanto fiz um table e dentro dele coloquei um form nos campos que desejo editar.
      O problema que quero utilizar a funçao onblur para fazer o submit a cada alteração. Consegui fazer isto definindo a rota no formulário e criando uma função javascript onblur.
      Porém ele manda para meu php, onde insere os dados mas redireciona a rota.
      vi em varios outros foruns, mas nao consegui implementar o AJAX no meu projeto.
      Conseguem me dar uma mão na no codigo, como utilizo o AJAX com o laravel.
      Muito obrigado
       
       
      <script type="text/javascript">
          $(document).ready(function(){
              $("#prest").on('blur', function() { //evento de sair de foco do edit
                  
                  var valor = $('#prest').val();
               $('#form').submit();//efetua submit no formulario
              });
                 
          });
      </script>
       
       
       
      <table>
                  <thead>
                      <tr>
                          <th>Cotação</th>
                          <th>Codigo</th>
                          <th>Descrição</th>
                          <th>Cod Barras</th>
                          <th>Qtde Cotação</th>
                      </tr>
                  </thead>
                  <tbody>
                      @foreach($registros as $registro)
                      <tr>
                          <td>{{ $registro->prod_codigo }}</td>
                          <td>{{ $registro->prod_descricao }}</td>
                          <td>{{ $registro->prod_barras}}</td>
                          <td>{{ $registro->prod_qtde}}</td>
                          <td>
                              <form action="{{ route('preco.incluir' , $registro->id) }}" method="post" class="" id="form" name="form" enctype="multipart/form-data">
                                  {{csrf_field()}}
                                  <input type="hidden" name="_method" value="put">
                                  <input type="text" name="prest" id="prest" value="" >
                              </form>
                          </td>
                      </tr>
                      @endforeach
                              </tbody>
                          </table>
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.