johnhey 0 Posted May 19, 2016 Report Share Posted May 19, 2016 <select name="datatable"> <?php //execulta o loop while ($dados = mysql_fetch_array($resultado)) { $nome_tabela = $dados[]; ?> <!--cria a listagem --> <option value ="<?php echo $nome_tabela; ?>"><?php echo $nome_tabela; ?></option> <?php } ?> <?php $nome_tab = $_POST['datatable']; echo $nome_tab; ?> Não consigo devolver o valor do combobox na variável, porque? Quote Link to post Share on other sites
0 lowys 0 Posted May 20, 2016 Report Share Posted May 20, 2016 Olá! Creio que a linha: $nome_tabela = $dados[]; Está incompleta. Quote Link to post Share on other sites
0 johnhey 0 Posted May 20, 2016 Author Report Share Posted May 20, 2016 Creio eu que esta linha está correcta porque o que quero são os nomes das tabela do meu banco de dados e esta listando certo. o Código completo é: <table> <tr> <td> Selecione o Album para importação: </td> <td> <?php //Conexão com o Banco de Dados $conexao = mysql_connect('localhost', 'banco', 'senha'); if (!$conexao) { die('Não foi possível conectar: ' . mysql_error()); //Exibe o erro por não conectar } //Seleciona o BD $db_selected = mysql_select_db('bdados', $conexao); //Le o banco de Dados $executa = "SHOW TABLES"; //Executa a query que irá mostrar as tabelas $resultado = mysql_query($executa, $conexao) or die(mysql_error()); ?> <select name="datatable"> <?php //execulta o loop while ($dados = mysql_fetch_array($resultado)) { $nome_tabela = $dados[]; ?> <!--cria a listagem --> <option value ="<?php echo $nome_tabela; ?>"><?php echo $nome_tabela; ?></option> <?php } ?> </select> </td> <td> </td> </tr> <tr> <td colspan="3"> Descrição do Album: </td> </tr> </table> Esqueci apenas de colocar o final do código <?php $nome_tab = $_POST['datatable']; echo $nome_tab; ?> Quote Link to post Share on other sites
0 johnhey 0 Posted May 20, 2016 Author Report Share Posted May 20, 2016 Fiz um teste em outro outro arquivo e funciona, não sei porque este não. Há única coisa que não postei no código acima foi o form com o method POST, mais o tenho com o botão enviar. fiz o seguinte: <form method="post"> <select name = "teste"> <option value="teste1"> teste1 </option> <option value="teste2"> teste2 </option> <option value="teste3"> teste3 </option> <option value="teste4"> teste4 </option> </select> <input type="submit" name="enviar" value="importar"> </form> <?PHP $selecao = $_POST["teste"]; echo $selecao; ?> 8 horas atrás, lowys disse: Olá! Creio que a linha: $nome_tabela = $dados[]; Está incompleta. desculpa tem razão faltou somente aqui na publicação $dados[0]; Quote Link to post Share on other sites
0 wash 0 Posted May 20, 2016 Report Share Posted May 20, 2016 Olá johnhey! Afinal... já solucionou? Quote Link to post Share on other sites
0 johnhey 0 Posted May 20, 2016 Author Report Share Posted May 20, 2016 Infelizmente não wash, o arquivo de teste funciona, no arquivo em si não já coloquei os códigos abaixo para ver se me devolvia algum valor, mais não aparece me nada. <?php $nome_tab = isset($_GET["datatable"]); print_r($_GET); echo $nome_tab; var_dump($nome_tab); ?> Ao invés de GET usei POST ao copiar para a postagem copiei errado Quote Link to post Share on other sites
0 wash 0 Posted May 20, 2016 Report Share Posted May 20, 2016 O select tá aparecendo corretamente no browser? Se não estiver, tente isso: while ($dados = mysql_fetch_array($resultado)) {echo '<pre>'; print_r($dados); echo '</pre>'; $nome_tabela = $dados[]; Só não tá enviando os valores em <option value='?'> então tente isso, no início do arquivo .php: <?php if(sizeof($_POST)){ echo '<pre>'; print_r($_POST); echo '</pre>'; } Quote Link to post Share on other sites
0 johnhey 0 Posted May 20, 2016 Author Report Share Posted May 20, 2016 Esta aparecendo correcto o select Quote Link to post Share on other sites
Question
johnhey 0
Não consigo devolver o valor do combobox na variável, porque?
Link to post
Share on other sites
7 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.