Ir para conteúdo

POWERED BY:

Arquivado

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

gomescsi

[Resolvido] Pegando valor da combobox

Recommended Posts

Ola, boa noite.

 

Bom, eu estou como uma duvida aqui ao qual nao consegui até agora encontrar uma solução.

 

Talvez seja algo simples, mas nao estou conseguindo vizualizar.

 

Tenho uma combobox que é preenchida dinamicamente de acordo com o valor buscado no banco.

 

Por exemplo, se o valor no banco é 15, esta combo box vai conter os valores de 1 a 15.

 

O problema é que da forma como fiz, eu nao consigo pegar o value da opção selecionada (que tem que ser neste caso de 1 a 15).

 

if ($quantcompusu > 0){
        $quantusu = $quantusu - $quantcompusu;
           if ($quantusu > 0){
           $x = 1;
                while ($x <= $quantusu){
             echo "<option value='$x'>$x</option>";
             $x = $x + 1;
                }
           }
           else{
        echo "<option value=''>Esgotado</option>";
        $x = 0;
           }
 }
 else{
     $x = 1;
     while ($x <= $quantusu){
  echo "<option value='$x'>$x</option>";
  $x = $x + 1;
  }
 }

 

Bom, desta forma, se eu pegar o value, $x sera sempre 16, no caso do exemplo acima.

 

Se alguem souber uma outra forma para fazer esta operação, fico grato.

 

vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

acho que voce nao ta separando pra poder exibir tenta fazer assim

 

function combobox_CrY($tipo,$id){

if ($tipo==’1′){ 

$campos=”id_cidade,nome”;

$tabela=”cidade”;

$sql=”where id_estado=’$id’”;

}

if ($tipo==’2′){

$campos=”id_estado,nome”;

$tabela=”estado”;

}

$connect = new Conexao();

$consulta=”select $campos from $tabela $sql order by nome”; //Busca

$result = $connect -> Consulta ($consulta);

$tag=”<select id=”.$tabela.” name=”.$tabela.”>”; //Montagem do combo

while ($dados = mysql_fetch_array($result)){ //aki você tem que separar pra poder exibir 

$tag.=”<option value=’”.$dados[0].”‘>”.$dados[1].”</option>”; //aki vem o valor ja separado do banco

}

$tag.=”</select>”;

return $tag;

}

//aki vamos pegar o valor do combo e exibir
<?php

include(“banco.php”); //Inclusão do arquivo onde ficar  afunção de montagem do banco
extract($_POST); // Extração da variavel que veio da pagina do combo
$estado=combo(“1″,$id); //Função para montar o combo agora passando a id do estado
echo utf8_encode($estado); //Codificação pra vim tudo certim  
?>
espero ter ajudado

Compartilhar este post


Link para o post
Compartilhar em outros sites

seguinte cara:

 

while( $x <= $quantusu  )
{
   $selected = $x==$opcaoselecionada ? ' selected="selected"' : '';//if ternário
   echo '<option value="{$x}"{$selected}>{$x}</option>';
   $x++;
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola William

 

Testando aqui, o $selected recebe sempre a palavra selected.

 

E no echo se eu coloco da forma como você fez, ele mostra na combo {$x}

 

Ai eu tenho mudar as aspas para ele mostrar corretamente:

 

echo "<option value='{$x}'{$selected}>{$x}</option>

 

vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

ops..

 

Então assim:

echo '<option value="'.$x.'"'.$selected.'>'.$x.'</option>';

 

Mas então cara, qual variavel você colocou ali no lugar de: $opcaoselecionada ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara, mostra como você fez.

 

o $opcaoselecionada é para ser a tua variavel, vinda do banco de dados.

ou seja, a opção que o cara selecionou, e você gravou no formulario.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, ai eu ainda nao fiz a gravação.

 

A variavel que eu busco no banco é a que determina a quantidade de campos que tera a combo.

 

So ai eu preciso saber qual o campo foi selecionado para fazer a gravação.

 

vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

então, o que for selecionado, você vai receber

 

<select name="tal">

nesse meu exemplo, você vai receber um:

 

$_POST['tal']

 

 

se eu selecionar o 3, o $_POST['tal'], vai conter o valor 3

se eu selecionar o 5.. vai ter o valor 5.. e assim em diante.. só depende do 'name' do teu <select>

 

 

o ternário ali, é para você exibir o formulario para edição, deixando selecionada a opção que ja tiver sido previamente cadastrada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agora que vi que eu estava passando o POST errado, em vem de passar pelo select, estava passando a variavel.

 

Obrigado William, certim aqui agora.

 

Abraços.

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.