Milks 0 Denunciar post Postado Julho 3, 2008 Galera, preciso de ajuda! Tenho uma página para cadastrar data e horário de visitas, ou seja, esses valores podem ocorrer mais de uma vez e quero exibir uma lista desses dados num select multiple antes de inseri-los no banco. Data e Hora são digitados em dois input text e preciso que, quando o usuário digitar os dois e clicar no botão 'Adicionar', esses dois valores entrem nesse select multiple. O usuário poderá digitar outra data e outra hora e adicionar na lista também. Esses dados deverão aparecer abaixo do anterior, e assim por diante. O código tá aí embaixo. Da forma que tá, tá dando erro lá no select. Acho que a variável visita tem que ser um vetor pra ir armazenando os valores. Só não sei como fazer isso. Agradeço desde já! CODE <TR><TD colSpan="6" style="font-family:Verdana;font-size:XX-Small;width:620px;"> <center>VISITAS</center> </TD></TR><TR><TD colspan="3" style="font-family:Verdana;font-size:XX-Small;width:368px;"> <center>Data (dd/mm/aa)</center><center><input id="tabcampoentrev" type="text" name="data" value="<?php &data; ?>" tabindex="3"></center> </TD><TD colspan="3" style="font-family:Verdana;font-size:XX-Small;width:368px;"> <center>Horário</center><center><input id="tabcampoentrev" type="text" name="hora" value="<?php $hora; ?>" tabindex="4"></center></TD></TR><TR><TD colspan="6"><input type="submit" name="add" value="Adicionar Visita" onclick="exibir()"/><input type="button" name="del" value="Remover Visita" /><BR> <select multiple="multiple" name="visita[]" size="10" style="height:56px; width:200px"> <option value=""> <?php $data=$_POST['data']; $hora=$_POST['hora']; $visita=$data." - ".$hora; echo $visita; ?> </option> </select></TD></TR> Compartilhar este post Link para o post Compartilhar em outros sites
Milks 0 Denunciar post Postado Julho 31, 2008 Já consegui mostrar uma lista de datas e horas dentro do select multiple, mas preciso agora inserir no banco. Como faço pra pegar os valores desses options via POST pra inserir no banco? Segue código: CODE <script> function insertSelected(){ var data=document.getElementById("data"); var hora=document.getElementById("hora"); var x=document.getElementById("visitas"); //retorna o objeto select var options=x.getElementsByTagName("option"); //pega a lista de options do select if((data.value!="")&&(hora.value!="")){ var y=document.createElement('option'); //cria um novo elemento option y.text=data.value+" "+hora.value; //seta o texto do elemento option data.value=""; hora.value=""; y.value=options.length; //seta o valor do elemento option try{ x.add(y,null); // adiciona um novo option no fim da lista para navegadores complacentes } catch(ex){ x.add(y); // adiciona um novo option no fim da lista para o IE } } } function removeLastOption(){ var x=document.getElementById("visitas") if (x.selectedIndex>=0){ x.remove(x.selectedIndex); } } </script> //FORM que envia atraves de POST... <TR> <TD colSpan="6" style="font-family:Verdana;font-size:XX-Small;width:620px;"> <center>VISITAS</center> </TD> </TR> <TR> <TD colspan="3" style="font-family:Verdana;font-size:XX-Small;width:368px;"> <center>Data (dd/mm/aaaa)</center> <center><input type="text" id="data" name="DATA_VISITA" value="" tabindex="3" style="font-family:Verdana;font-size:XX-Small;width:80px" onKeyUp="DigitaData(this)" onBlur="DigitaData(this)" autocomplete="OFF"></center> </TD> <TD colspan="3" style="font-family:Verdana;font-size:XX-Small;width:368px;"> <center>Horário (hh:mm)</center> <center><input type="text" id="hora" name="HORA_VISITA" value="" tabindex="4" style="font-family:Verdana;font-size:XX-Small;width:80px" onKeyUp="DigitaHora(this)" onBlur="DigitaHora(this)" autocomplete="OFF"></center> </TD> </TR> <TR> <TD colspan="6"> <center> <input type="button" name="add" value="Adicionar Visita" onclick="insertSelected()"/> <input type="button" name="del" value="Remover Visita" onclick="removeLastOption()"/><BR> <select multiple="multiple" id="visitas" name="VISITA[]" size="10" style="height:56px; width:200px"> </select> <BR> </TD> </center> </TR> Valeuu! Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Julho 31, 2008 na p@agina que recebe os dados faça print_r($_POST); exit; Compartilhar este post Link para o post Compartilhar em outros sites
Milks 0 Denunciar post Postado Julho 31, 2008 na p@agina que recebe os dados faça print_r($_POST); exit; Coloquei print_r($_POST['VISITA']); mas ele mostrou Array ( [0] => 0 [1] => 1 ) Gostaria de pegar os valores que eu inseri. Exemplo: [0] => 30/07/2008 09:00 [1] => 31/07/2008 11:00 Obrigadaa! Compartilhar este post Link para o post Compartilhar em outros sites
Miloxsan 0 Denunciar post Postado Julho 31, 2008 Tenta joga-los para uma variável.... e da $_GET. Compartilhar este post Link para o post Compartilhar em outros sites
Rafael Mussi 0 Denunciar post Postado Julho 31, 2008 Pro submit "entender" que existem dados dentro de um select multiple, esses dados precisam estar selecionados.. daí da função js abaxio getValoresSelect().. depois só concatenar o select multiple com o data/hora.. taí um exemplo abaixo.. testa e diga se funcionou.. <script language="javascript" type="text/javascript"> function getValoresSelect(idSelect) { el = document.getElementById(idSelect); for(i = 0; i < el.options.length; i++) { el.options[i].selected = true; } } </script> <?php $visitas = Array(); $data = $_POST['data']; $hora = $_POST['hora']; $selectVisitas = $_POST['selectVisitas']; if (sizeof($selectVisitas) > 0) { foreach ($selectVisitas as $visitasExistentes) $visitas[] = $visitasExistentes; } if (!empty($_POST['data']) && !empty($_POST['hora'])) $visitas[] = $data." - ".$hora; ?> <form name="frmVisita" id="frmVisita" action="" method="post" onsubmit="getValoresSelect('selectVisitas')"> Data: <input type="text" name="data" id="data" /> Hora: <input type="text" name="hora" id="hora" /> <br /> <select multiple="multiple" id="selectVisitas" name="selectVisitas[]" size="10" style="height:56px; width:200px"> <?php foreach ($visitas as $visita) { ?> <option value="<?=$visita?>"><?=$visita?></option> <?php } ?> </select> <br/> <input type="submit" name="submit" value="testar"> </form> [x]´s -- Rafael Mussi Compartilhar este post Link para o post Compartilhar em outros sites