Ir para conteúdo

POWERED BY:

Arquivado

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

marciarf

capturando valores de dropdownlist com $_POST

Recommended Posts

Hi

EStou com problemas para capturar valores de uma dropdownlist através de $_POST. Na página de captura dos dados através da dropdown tenho:

 

<form method="POST"  action="inserir_material.php">
<SELECT size="1" name="material">
<?php
while($valor = mysql_fetch_array($res2)) {
?>
<OPTION  value='numero<?php echo $numero=$valor['numrecurso'];?>'><?php echo $numero=$valor['numrecurso'];?></OPTION>
<OPTION  value='nome<?php $valor['nomerecurso'];?>'><?php $nome=$valor['nomerecurso']; ?></OPTION>
<OPTION  value='unidade<?php $valor['unidrecurso'];?>'><?php $unidade=$valor['unidrecurso']; ?></OPTION>
<?php
}
?>
</SELECT></font></td>
<?php
mysql_close($db);
?>
<center><INPUT TYPE="submit" value="Enviar">   <INPUT TYPE="reset" value="Redefinir"></center>
</form>

no arquivo inserir_material.php, tento capturar:

 

<?php
 $numero=$_POST['numero']; echo $numero."<br>";
 $nome=$_POST['nome']; //echo $nome."<br>";
 $unidade=$_POST['unidade']; //echo $unidade."<br>";
echo('<a href=grafico_rec_line.php?num_rec='.$numero.'&nome_rec='.$nome.'&un_rec='.$unidade.'>'.$numero.','.$nome.','.$unidade.'</a>');
?>

Mas não consigo obter as informações: dá índice indefinido.

Alguém pode me ajudar?Please... http://forum.imasters.com.br/public/style_emoticons/default/upset.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, mas são três valores diferentes que eu preciso recuperar.

o número, nome e unidade.

Eu só consigo recuperar pelo name da dropdown?

 

É com $_POST['material'] que você irá recuperar este valor.

 

[]'s http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Porque estas outras variáveis estão atreladas à primeira e serão usadas em um arquivo para geracão de gráfico, onde preciso alterar o número do recurso, o nome e a unidade - que são dados do gráfico.

Então, sempre que escolho o numero 2, por exemplo, preciso levar junto o número e a unidade do material, entendeu?

Poderia ser até, dentro do mesmo select, um único option, onde aparecesse tudo na sequencia, numero, nome e unidade (já havia feito isso), mas eles tem que ir como variáveis separadas para serem usadas em pontos diferentes.

você me entendeu? Ou seja, não posso ter 3 selects, tem que selecionar um valor e atrelar a eles os outros dois.

 

Mas se neste <select> você só pode selecionar um item apenas, pra que você vai querer os outros? :huh:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Entendi.

 

Então neste caso, <select> não seria a opção mais adequada para isto.

 

Ou você pode tentar desta maneira que você disse de colocar na mesma opção este valores mas separados por algum separador que você identifique e dê um explode() na hora de recuperar.

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

você teria outra sugestão ao select?

A princípio teria que ser uma dropdownlist pq estes numeros de recursos são lidos de um banco de dados, onde os dados virão de um uploada feito pelo usuário inicialmente. Então eu acredito seja a melhor forma de mostrar as informações referentes ao seu projeto, para que escolha o material que queira gerar o gráfico.

Eu tentei aqui capturando através de $_POST e $_GET e fazendo explode. O problema é que quando o nome tem espaços em branco (nome composto), que é a maioria, ele corta o conteúdo. Por exemplo, eu coloquei ":"para dividir os três dados, mas em caso de "areia fina" iria apenas o número e o primeiro nome antes do espaço = 3:areia e não 3:areia fina:m3.

Por isso estou perguntando se tem alguma sugestão.

 

Entendi.

 

Então neste caso, <select> não seria a opção mais adequada para isto.

 

Ou você pode tentar desta maneira que você disse de colocar na mesma opção este valores mas separados por algum separador que você identifique e dê um explode() na hora de recuperar.

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

você teria outra sugestão ao select?

A princípio teria que ser uma dropdownlist pq estes numeros de recursos são lidos de um banco de dados, onde os dados virão de um uploada feito pelo usuário inicialmente. Então eu acredito seja a melhor forma de mostrar as informações referentes ao seu projeto, para que escolha o material que queira gerar o gráfico.

Eu tentei aqui capturando através de $_POST e $_GET e fazendo explode. O problema é que quando o nome tem espaços em branco (nome composto), que é a maioria, ele corta o conteúdo. Por exemplo, eu coloquei ":"para dividir os três dados, mas em caso de "areia fina" iria apenas o número e o primeiro nome antes do espaço = 3:areia e não 3:areia fina:m3.

Por isso estou perguntando se tem alguma sugestão.

 

Na verdade essa perda de informações por existir espaço em branco se dá quando eu envio pelo arquivo inserir.php:

<?php
  //obtem o valor enviado pelo formulário
  $material=$_POST['material'];
   echo('<a href=grafico_rec_line.php?material='.$material.'>'.$material.'</a>');  
?>
na referência <a href=grafico_rec_line.php?material=',$material.'>'.$material.'</a>'); é que os três dados (numero, nome, unidade), quando o nome tem nome composto ele se perde e aparece só até o espaço em branco.

Este é o problema a resolver, no mais tudo ok...

Please, Help me

 

Entendi.

 

Então neste caso, <select> não seria a opção mais adequada para isto.

 

Ou você pode tentar desta maneira que você disse de colocar na mesma opção este valores mas separados por algum separador que você identifique e dê um explode() na hora de recuperar.

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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