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

Undefined index ao usar $_POST


LangoNet

Pergunta

Bom dia senhores do bem. Seguinte.

Tenho um formulário simples, com um Dropdown e 3 radiobuttons. O usuário seleciona um valor na lista e escolhe um radiobutton.

Ao enviar, porém, o php me acusa Undefined index quando recebo as duas variáveis no script, ao usá-las dentro de um if.

O mais estranho é que eu uso a função print_r($_POST); e os valores enviados são mostrados.

Formulario

<select name="voluntario"> 
   <option value="NULL">Voluntários cadastrados</option> 
   <option value="1">Alfredo</option>
   <option value="1">Tobias</option> 
</select> 
<input type="radio" name="opcaoUsuario" value="consultar"> Consultar
<input type="radio" name="opcaoUsuario" value="modificar"> Modificar
<input type="radio" name="opcaoUsuario" value="excluir"> Excluir
<input type="submit" name="Buscar" value="Buscar" />
script php
<?php
  
   print_r($_POST); // Aqui ele imprime beleza, os valores recebidos.
   
   $voluntario = $_POST['voluntario'];
   $opcao = $_POST['opcaoUsuario'];
  

  if($opcao == "consultar"){ // Aqui ele me retorna o undefined index.
     echo "Opcao escolhida foi consultar";
  }else{
     echo "todos chora";
  }
?>

Editado por LangoNet
Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

Não tinha pensado nisso. Porém fiz um teste e usei a função reset que faz o ponteiro apontar pro primeiro elemento.

<?php

   print_r($_POST);   
   reset($_POST);
   
   $voluntario = $_POST['voluntario']; 
   $opcao = $_POST['opcaoUsuario'];

Continua retornando Notice: Undefined index: voluntario in E:\wamp\www\formConsultaVoluntario.php

Se bem que é só um notice, mas eu utilizo essas variáveis dentro do if, e ele não está entrando no IF correto.

Link para o comentário
Compartilhar em outros sites

  • 0

Cara, testei seu código exatamente dessa maneira:

<?php
  
   print_r($_POST); // Aqui ele imprime beleza, os valores recebidos.
   
   $voluntario = $_POST['voluntario'];
   $opcao = $_POST['opcaoUsuario'];
  

  if($opcao == "consultar"){ // Aqui ele me retorna o undefined index.
     echo "Opcao escolhida foi consultar";
  }else{
     echo "todos chora";
  }
?>
<form name="form" method="post" action="">
<select name="voluntario"> 
   <option value="NULL">Voluntários cadastrados</option> 
   <option value="1">Alfredo</option>
   <option value="1">Tobias</option> 
</select> 
<input type="radio" name="opcaoUsuario" value="consultar"> Consultar
<input type="radio" name="opcaoUsuario" value="modificar"> Modificar
<input type="radio" name="opcaoUsuario" value="excluir"> Excluir
<input type="submit" name="Buscar" value="Buscar" />
</form>

E funcionou perfeitamente, não tem nada a mais no código que possa estar conflitando?

Link para o comentário
Compartilhar em outros sites

  • 0

É, eu também to achando que deve ser algo na página HTML, porque o php tá super simples, não tem nenhum conflito aparentemente.

Como esse projeto é pra hoje a noite, acabei tendo que usar $_GET pois não tenho muito tempo pra gastar descobrindo isso. Mas esse problema me intrigou, vou voltar nele assim que tiver um tempo, não faz sentido eu receber o array POST mas não conseguir usá-lo.

Enfim, obrigado pela sua ajuda, se eu conseguir achar algo volto pra postar a solução pra caso alguém tenha o mesmo problema.

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
      651,9k
×
×
  • Criar Novo...