sr.silva 1 Denunciar post Postado Janeiro 15, 2008 Pessoal, Existe uma forma mais fácil e simples de trabalhar com o campo: <select> <option></option> </select> Porque estou usando um pra trazer valores de uma tabela. Só que no momento da edição, não retorna selecionado o valor escolhido. A dúvida é: - Já que eu armazeno o valor(ID) das opções desse select, pra eu deixar a opção selecionada tenho que fazer um select na tabela correspondente e colocar na tag option. Será que existe uma maneira mais fácil de fazer isso? []´s Compartilhar este post Link para o post Compartilhar em outros sites
leanribas 0 Denunciar post Postado Janeiro 15, 2008 Boa tarde! aqui na empresa empresa eu uso uma função do ADODb que ajuda bastante na montagem dos selects. mas no caso de sua pergunta você tem que colocar o id de seu registro na propriedade tag do select, e quendo acontecer o post é esse valor que o php receberá. <select> <option value="1">Laranja</option> </select> e quando você tiver que pocisionar no option correspondente ao banco terá que fazer isso no loop de montagem do combo. Leandro Compartilhar este post Link para o post Compartilhar em outros sites
sr.silva 1 Denunciar post Postado Janeiro 15, 2008 Sim..só que procuro algo mais fácil de criar. Imagina a trabalheira que terei, assim como muitos...de cada cadastro com select, pegar o ID cadastrado , buscar o valor na tabela correspondente e mostrar novamente no cadastro principal; É fácil não hein. Compartilhar este post Link para o post Compartilhar em outros sites
leanribas 0 Denunciar post Postado Janeiro 15, 2008 Não sei com ovc faz conexão com o banco de dados, aqui faço atraves do ADOBD que já possui uma função para gerar o select o posiciona-lo. Mas se você usa as funções de conexão do Mysql, você pode fazer uma função tb...apenas passando um dataset , qual o value que você quer que ele posicione, um tercero parametro que pode será uma string ond evc pode configurar outros propriedades do select. Compartilhar este post Link para o post Compartilhar em outros sites
sr.silva 1 Denunciar post Postado Janeiro 15, 2008 teria como mostrar um exemplo? Compartilhar este post Link para o post Compartilhar em outros sites
leanribas 0 Denunciar post Postado Janeiro 15, 2008 Poderia ser assim se você usa mysql: <?php function geraSelectHTML($dataSet, $selectName, $optionEmpty, $optionValue, $attribute) { $result = '<select name="' . $selectName . '" ' . $attribute . ">\n"; if($optionEmpty === true) { $result .= ' <option value=""></option>' . "\n"; } while($row = mysql_fetch_array($dataSet)) { $result .= ' <option value="' . $row[0]; if($row[0] == $optionValue) { $result .= ' selected="selected" '; } $result .= ">\n"; $result .= $row[1]; $result .= "</option>\n"; } $result .= "</select>\n"; return $result; } $conn = mysql_connect('localhost','usuario','senha'); mysql_select_db('database',$conn); $query = 'SELECT codigo_ativ, descricao FROM tipo_atividade'; $tipos = mysql_query($query, $conn); $query = 'SELECT codigo, nome , codigo_ativ FROM pessoa where codigo = 1'; $pessoa = mysql_query($query, $conn); $row = mysql_fetch_assoc($pessoa); echo 'Pessoa : ' . $row['nome'] . '<br>' echo 'Atividade : ' . geraSelectHTML($tipos, 'sel_atividades', true, $row['codigo_ativ'], ' class="teste" onchange="alert(\'ok\');"'); ?> não testei o codigo Leandro Compartilhar este post Link para o post Compartilhar em outros sites
leanribas 0 Denunciar post Postado Janeiro 16, 2008 agora este codigo está testado: <?php function geraSelectHTML($dataSet, $selectName, $optionEmpty, $optionValue, $attribute) { $result = '<select name="' . $selectName . '" ' . $attribute . ">\n"; if($optionEmpty === true) { $result .= ' <option value=""></option>' . "\n"; } while($row = mysql_fetch_array($dataSet,MYSQL_NUM)) { $result .= ' <option value="' . $row[0]; if($row[0] == $optionValue) { $result .= ' selected="selected" '; } $result .= ">\n"; $result .= $row[1]; $result .= "</option>\n"; } $result .= "</select>\n"; return $result; } $conn = mysql_connect('localhost','usuario','senha); mysql_select_db('teste',$conn); $query = 'SELECT codigo_ativ, descricao FROM atividade'; $tipos = mysql_query($query, $conn); $query = 'SELECT codigo, nome , codigo_ativ FROM pessoa where codigo = 1'; $pessoa = mysql_query($query, $conn); $row = mysql_fetch_assoc($pessoa); echo 'Pessoa : ' . $row['nome'] . '<br>'; echo 'Atividade : ' . geraSelectHTML($tipos, 'sel_atividades', true, $row['codigo_ativ'], ' class="teste" onchange="alert(\'ok\');"'); ?>Falou Compartilhar este post Link para o post Compartilhar em outros sites
sr.silva 1 Denunciar post Postado Janeiro 16, 2008 ok! agradeço sua ajuda. irei testar e voltarei com o resultado. Compartilhar este post Link para o post Compartilhar em outros sites
sr.silva 1 Denunciar post Postado Janeiro 20, 2008 ok! amigo. realmente era isso que precisava. muito obrigado. ;) Compartilhar este post Link para o post Compartilhar em outros sites