Jump to content
Sign in to follow this  
RollySantos

Passar Value de um Select para variavel

Recommended Posts

Gostaria de tirar uma dúvida, tem como passar o valor de um select para uma variavel?

 

Pois planejando um código em que a pessoa vai escolher a data do evento, duas variaveis recebe mês e ano, essas variaveis para um link do iframe, a página que está no iframe abre a página de acordo com o GET do link.

 

Tudo na mesma página.

 

Gostaria de saber se isso é possível.

 

Segue o código que comecei a mexer.

<form action="testeframe.php" method="POST">
<span style="font-size:14px;"><strong>Data do Evento:</strong></span>
<select class="selecionames" id="mes" name="mes">
<option value="Selecione">Mês</option>
<option value="01">01 - Janeiro</option>
<option value="02">02 - Fevereiro</option>
<option value="03">03 - Março</option>
<option value="04">04 - Abril</option>
<option value="05">05 - Maio</option>
<option value="06">06 - Junho</option>
<option value="07">07 - Julho</option>
<option value="08">08 - Agosto</option>
<option value="09">09 - Setembro</option>
<option value="10">10 - Outubro</option>
<option value="11">11 - Novembro</option>
<option value="12">12 - Dezembro</option>
</select>

<select class="selecionaano" id="ano" name="ano">
<option value="Selecione">Ano</option>
<option value="2016">2016</option>
</select>
<input type="submit" name="botao_enviar" value="Ok">
</form>


<?php
$ano = $_POST['ano'];
$mes = $_POST['mes'];

echo "o ano e {$ano} e o mes {$mes}";
?>
<p>
    <script language="javascript" type="text/javascript">
  function resizeIframe(obj) {
    obj.style.height = obj.contentWindow.document.body.scrollHeight + 'px';
  }
</script>
</p>

<p>
    <iframe frameborder="0" id="iframe_cont" name="frame" onload="resizeIframe(this)" scrolling="no" src="http://rolly.com.br/escolhe.php?ano={$ano}&mes={$mes}" width="1020px"></iframe>
</p>


Share this post


Link to post
Share on other sites

Codigo alterado, agora só falta corrigir o bug.

<span style="font-size:14px;"><strong>Data do Evento:</strong></span>
<select onchange="data(this)" id="mes">
      <option value="">Mês</option>
      <option value="&mes=01">01 - Janeiro</option>
      <option value="&mes=02">02 - Fevereiro</option>
      <option value="&mes=03">03 - Março</option>
      <option value="&mes=04">04 - Abril</option>
      <option value="&mes=05">05 - Maio</option>
      <option value="&mes=06">06 - Junho</option>
      <option value="&mes=07">07 - Julho</option>
      <option value="&mes=08">08 - Agosto</option>
      <option value="&mes=09">09 - Setembro</option>
      <option value="&mes=10">10 - Outubro</option>
      <option value="&mes=11">11 - Novembro</option>
      <option value="&mes=12">12 - Dezembro</option>
    </select>
    
<select onchange="data(this)" id="ano">
	<option value="">Ano</option>
	<option value="&ano=2016">2016</option>
</select>

<br>
<span style="font-size:14px;"><strong> Insira o seu código de cliente: </strong></span><input type="text" onchange="data(this)" id="codcli" width="75" required />
<br>

<a href="escolhe.php?"id="lnk1-ano"id="lnk2-mes"id="lnk3-cod">Clique e Veja suas Fotos</a>

<script>
function data(el) {
	
var $lnk1 = document.getElementById("lnk1-ano");
$lnk1.href = $lnk1.href.replace(/ano=(.*)/, 'ano=') + el.value;

var $lnk2 = document.getElementById("lnk2-mes");
$lnk2.href = $lnk2.href.replace(/mes=(.*)/, 'mes=') + el.value;

var $lnk3 = document.getElementById("lnk3-cod");
$lnk3.href = $lnk3.href.replace(/cod=(.*)/, 'cod=') + el.value;
}
</script>

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Similar Content

    • By 11closed
      Olá estou usando a ferramenta de tradução do google em meu site, e estou com uma duvida referente as alteração HTML que o site sofre ao traduzir o site.
       
      gostaria de saber se após a tradução do google ou qualquer outro tradutor de navegadores, eles altera algum value, name, class ...etc essas tags que podem estar sendo usadas via POST, GET..etc
       
      Por exemplo> no select option se caso um determinado option do meu site ser assim "<select name="cor"> <option value="black">Preto</option>..." e após traduzir para PT BR "<select name="cor"><option value="Preto">Preto</option>..." e ao enviar via $POST, a codificação do php vai verificar  se (cor = black) e não se (cor = preto) < dessa forma ocasionaria um erro pois as verificações são feitas apenas com a strings originais do site e não com novas strings ao traduzir. 
      Na verdade antes de vir postar a pergunta aqui eu fiz um teste, e parece estar tudo certo, mas fiquei com isso na cabeça, será que há alguma chance de acontecer algum erro no site nesse requisito ao usar esses tradutores? 
      ou usando esses tradutores não irá atrapalhar em nada
    • By Flaviaac
      Boa tarde galera!
       
      Estou tendo um problema esquisito aqui.
      Sou iniciante e não faço a mínima ideia do que pode ser.
       
       
      Veja só, no campo dropdown abaixo coloquei no "value" o ID, mas ele salva no banco como tipo STRING e não INT.
      <?php $sql = "SELECT id, sigla FROM local ORDER BY sigla ASC"; $result = $conn->query($sql); ?> . . . <select name="local" class="form-control"> <option selected>Selecione...</option> <?php while($row = $result->fetch_assoc()){ echo "<option value=".$row['id'].">".$row['sigla']."</option>"; } ?> </select> . . . Dei um var_dump() pra saber o que apareceria e ele mostra como STRING.
      <pre> <?php $sql = "SELECT id, sigla FROM local ORDER BY sigla ASC"; $result = $conn->query($sql); $row = $result->fetch_assoc(); var_dump($row['id']); ?> </pre> Resultado:
      string(1) "5"  
       
      Esse é o Banco de dados:
      Coloquei a coluna ID como INT.
      -- phpMyAdmin SQL Dump -- version 4.8.3 -- https://www.phpmyadmin.net/ SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; SET AUTOCOMMIT = 0; START TRANSACTION; SET time_zone = "+00:00"; /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8mb4 */; -- -- Banco de dados: `arq` -- -- -------------------------------------------------------- -- -- Estrutura para tabela `local` -- CREATE TABLE `local` ( `id` int(11) NOT NULL, `SIGLA` mediumtext NOT NULL, `LOCAL` mediumtext NOT NULL, `TELEFONE` mediumtext NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- -- Fazendo dump de dados para tabela `local` -- INSERT INTO `local` (`id`, `SIGLA`, `LOCAL`, `TELEFONE`) VALUES (1, 'AAC', 'AAC', '2222-2222'), (2, 'DSV', 'DSV', '1111-1111'), (3, 'SCA', 'SCA', '3333-3333'); -- -- Índices de tabelas apagadas -- -- -- Índices de tabela `local` -- ALTER TABLE `local` ADD PRIMARY KEY (`id`); -- -- AUTO_INCREMENT de tabelas apagadas -- -- -- AUTO_INCREMENT de tabela `local` -- ALTER TABLE `local` MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6; COMMIT; /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; Obrigada pessoal!
       
    • By asacap1000
      Galera estou com uma consulta que ainda não consegui entender o porque. gostaria que ela trouxesse em apenas uma linha mas não vem de forma alguma.
       
      SELECT BO.LAGER, BO.ID_OS, K.ID_KLIENT, K.SUCHBEGRIFF CNPJ_CPF, K.NAME, BI.DIV_1 LOTE, BI.DIV_10 DI_DDE, (SELECT DISTINCT DIS.ID_DISPATCHER FROM FISCAL.DOCHD DC, WMS_EADI.DISPATCHER DIS WHERE DC.DOCHD_DOC_ID = BO.NR_NF AND DC.DOCHD_RPS_DESP = DIS.SUCHBEGRIFF) COD_COMISSARIA, (SELECT DISTINCT DIS.BEZ FROM FISCAL.DOCHD DC, WMS_EADI.DISPATCHER DIS WHERE DC.DOCHD_DOC_ID = BO.NR_NF AND DC.DOCHD_RPS_DESP = DIS.SUCHBEGRIFF) COMISSARIA, BO.NR_NF, BO.DATE_BILL, BO.DATE_EMISS, --------ABAIXO OS TIPOS DE SERVIÇOS ONDE ESTÃO OCORRENDO CADA RESULTADO ELE CRIA UMA LINHA---------------- (SELECT SUM(ROUND(OSI.PREIS, 2)) FROM BILL_OS_ITEM OSI WHERE OSI.LAGER = BO.LAGER AND OSI.ID_KLIENT = K.ID_KLIENT AND OSI.ID_OS = BO.ID_OS AND OSI.BILLITE = BI.BILLITE AND OSI.DIV_1 = BI.DIV_1 --AND NVL(OSI.DIV_10, 'x') = NVL(BI.DIV_10, 'x') AND OSI.BILLITE IN (SELECT BLL.BILLITE FROM BILL_ITEM BLL, WERTE WER WHERE BLL.TIPO_FAT = WER.WERT AND WER.WERTE_BER = 'ITENSF' AND WER.WERT = 'ARMAZ')) VLR_ARMAZ, (SELECT SUM(ROUND(OSI.PREIS, 2)) FROM BILL_OS_ITEM OSI WHERE OSI.LAGER = BO.LAGER AND OSI.ID_KLIENT = K.ID_KLIENT AND OSI.ID_OS = BO.ID_OS AND OSI.BILLITE = BI.BILLITE AND OSI.DIV_1 = BI.DIV_1 --AND NVL(OSI.DIV_10, 'x') = NVL(BI.DIV_10, 'x') AND OSI.BILLITE IN (SELECT BLL.BILLITE FROM BILL_ITEM BLL, WERTE WER WHERE BLL.TIPO_FAT = WER.WERT AND WER.WERTE_BER = 'ITENSF' AND WER.WERT = 'GER.RISCO')) VLR_GER_RISCO, (SELECT SUM(ROUND(OSI.PREIS, 2)) FROM BILL_OS_ITEM OSI WHERE OSI.LAGER = BO.LAGER AND OSI.ID_KLIENT = K.ID_KLIENT AND OSI.ID_OS = BO.ID_OS AND OSI.BILLITE = BI.BILLITE AND OSI.DIV_1 = BI.DIV_1 --AND NVL(OSI.DIV_10, 'x') = NVL(BI.DIV_10, 'x') AND OSI.BILLITE IN (SELECT BLL.BILLITE FROM BILL_ITEM BLL, WERTE WER WHERE BLL.TIPO_FAT = WER.WERT AND WER.WERTE_BER = 'ITENSF' AND WER.WERT = 'MOVIMENT')) VLR_MOVIMENTACAO, (SELECT SUM(ROUND(OSI.PREIS, 2)) FROM BILL_OS_ITEM OSI WHERE OSI.LAGER = BO.LAGER AND OSI.ID_KLIENT = K.ID_KLIENT AND OSI.ID_OS = BO.ID_OS AND OSI.BILLITE = BI.BILLITE AND OSI.DIV_1 = BI.DIV_1 --AND NVL(OSI.DIV_10, 'x') = NVL(BI.DIV_10, 'x') AND OSI.BILLITE IN (SELECT BLL.BILLITE FROM BILL_ITEM BLL, WERTE WER WHERE BLL.TIPO_FAT = WER.WERT AND WER.WERTE_BER = 'ITENSF' AND WER.WERT = 'DESUNIT')) VLR_DESUNIT, (SELECT SUM(ROUND(OSI.PREIS, 2)) FROM BILL_OS_ITEM OSI WHERE OSI.LAGER = BO.LAGER AND OSI.ID_KLIENT = K.ID_KLIENT AND OSI.ID_OS = BO.ID_OS AND OSI.BILLITE = BI.BILLITE AND OSI.DIV_1 = BI.DIV_1 --AND NVL(OSI.DIV_10, 'x') = NVL(BI.DIV_10, 'x') AND OSI.BILLITE IN (SELECT BLL.BILLITE FROM BILL_ITEM BLL, WERTE WER WHERE BLL.TIPO_FAT = WER.WERT AND WER.WERTE_BER = 'ITENSF' AND WER.WERT = 'PESAGEM')) VLR_PESAGEM, (SELECT SUM(ROUND(OSI.PREIS, 2)) FROM BILL_OS_ITEM OSI WHERE OSI.LAGER = BO.LAGER AND OSI.ID_KLIENT = K.ID_KLIENT AND OSI.ID_OS = BO.ID_OS AND OSI.BILLITE = BI.BILLITE AND OSI.DIV_1 = BI.DIV_1 --AND NVL(OSI.DIV_10, 'x') = NVL(BI.DIV_10, 'x') AND OSI.BILLITE IN (SELECT BLL.BILLITE FROM BILL_ITEM BLL, WERTE WER WHERE BLL.TIPO_FAT = WER.WERT AND WER.WERTE_BER = 'ITENSF' AND WER.WERT LIKE 'AVERBA%')) VLR_AVERBACAO, (SELECT SUM(ROUND(OSI.PREIS, 2)) FROM BILL_OS_ITEM OSI WHERE OSI.LAGER = BO.LAGER AND OSI.ID_KLIENT = K.ID_KLIENT AND OSI.ID_OS = BO.ID_OS AND OSI.BILLITE = BI.BILLITE AND OSI.BILLITE IN (SELECT BLL.BILLITE FROM BILL_ITEM BLL, WERTE WER WHERE BLL.TIPO_FAT = WER.WERT AND WER.WERTE_BER = 'ITENSF' AND WER.WERT = 'FAT.MINIMO.')) VLR_FAT_MINIMO, (SELECT SUM(ROUND(OSI.PREIS, 2)) FROM BILL_OS_ITEM OSI WHERE OSI.LAGER = BO.LAGER AND OSI.ID_KLIENT = K.ID_KLIENT AND OSI.ID_OS = BO.ID_OS AND OSI.BILLITE = BI.BILLITE AND OSI.DIV_1 = BI.DIV_1 --AND NVL(OSI.DIV_10, 'x') = NVL(BI.DIV_10, 'x') AND OSI.BILLITE IN (SELECT BLL.BILLITE FROM BILL_ITEM BLL, WERTE WER WHERE BLL.TIPO_FAT = WER.WERT AND WER.WERTE_BER = 'ITENSF' AND BLL.BILLITE NOT IN ('21.02', '21.03') AND WER.WERT = 'OUT.SERV.')) VLR_OUTROS_SERV, (SELECT SUM(ROUND(OSI.PREIS, 2)) FROM BILL_OS_ITEM OSI WHERE OSI.LAGER = BO.LAGER AND OSI.ID_KLIENT = K.ID_KLIENT AND OSI.ID_OS = BO.ID_OS AND OSI.BILLITE = BI.BILLITE AND OSI.DIV_1 = BI.DIV_1 --AND NVL(OSI.DIV_10, 'x') = NVL(BI.DIV_10, 'x') AND OSI.BILLITE IN (SELECT BLL.BILLITE FROM BILL_ITEM BLL, WERTE WER WHERE BLL.TIPO_FAT = WER.WERT AND WER.WERTE_BER = 'ITENSF' AND BLL.BILLITE = '21.02' AND WER.WERT = 'OUT.SERV.')) TRANSF_IN, (SELECT SUM(ROUND(OSI.PREIS, 2)) FROM BILL_OS_ITEM OSI WHERE OSI.LAGER = BO.LAGER AND OSI.ID_KLIENT = K.ID_KLIENT AND OSI.ID_OS = BO.ID_OS AND OSI.BILLITE = BI.BILLITE AND OSI.DIV_1 = BI.DIV_1 --AND NVL(OSI.DIV_10, 'x') = NVL(BI.DIV_10, 'x') AND OSI.BILLITE IN (SELECT BLL.BILLITE FROM BILL_ITEM BLL, WERTE WER WHERE BLL.TIPO_FAT = WER.WERT AND WER.WERTE_BER = 'ITENSF' AND BLL.BILLITE = '21.03' AND WER.WERT = 'OUT.SERV.')) TRANSF_OUT FROM BILL_OS BO, BILL_OS_ITEM BI, KLIENTEN K WHERE BO.LAGER = BI.LAGER AND BO.ID_KLIENT = BI.ID_KLIENT AND BO.ID_OS = BI.ID_OS AND BO.LAGER = K.LAGER AND BO.ID_KLIENT = K.ID_KLIENT and k.id_klient = '3099' and BO.NR_NF = '121304' AND BO.STATUS = '90' AND TRUNC(BO.DATE_BILL) BETWEEN '28/08/2019' AND '28/08/2019' GROUP BY BO.LAGER, BO.ID_OS, K.ID_KLIENT, K.SUCHBEGRIFF, K.NAME, BO.DATE_EMISS, BO.NR_NF, BO.DATE_BILL, BI.BILLITE, BI.DIV_1, BI.DIV_10
       
      Alguem consegue identificar neste select porque ele vem assim?
    • By helcarib
      Estou desenvolvendo um sistema que sorteia 20 questoes em um banco mysql e exibe na tela, como se fosse uma prova. Como vou usar como ferramenta de estudo, as questões que o usuários acertarem vão  para o fim da fula e as que errar continua sendo sorteadas junto com as outras até todas serem exibidas em provas.
       
      Isso que descrevi acima ja está funcionando, porque criei um campo na tabela questao, que_estudada que vale 0 pra todas as questoes e quando o usuário  acerta ele passa a valer 1, quando tem menos de 20 registros iguais a 0 ele atualiza tudo pra 0 e recomeca as questões.
       
      Nesse momento queria que o sistema tivesse varios usuarios e que cada um tenha a sua "fila de questoes" e que as que ele acertar continue sendo exibidas para os outros, então criei mais duas tabelas: prova e item com os seguintes campos:
      prova (pro_cod, usu_cod, mat_cod,pro_data)
      item (pro_cod, ite_cod, que_cod)
      cada prova tem só  1 materia, mas tem 20 questões.
      Importante que essas questoes que forem acertadas nao podem se repetir enquanto o usuario não estudar todas elas em provas. Eu estou com dificuldade para fazer isso com multiplos usuários, se alguém puder dar uma luz inicial, aí vou tentar fazer e depois mando a solução. Desde já  muito agradecido!
    • By Thomeny
      Olá pessoal, sou novo no mundo da programação e banco de dados, quer dizer passei vários anos parado em outra área e agora resolvi voltar.
       
      Enfim estou precisando fazer o seguinte:
       
      Tenho dois campos que usa um select (irei colocar logo abaixo) para ambos.
      Esse select traz o resultado iguais para os dois, porém o cliente precisa fazer o seguinte:
       
      Para combobox 1 ao selecionar paciente, esse paciente não apareça no combobox dois porque já foi selecionado.
       
      Como procedo, se puderem ser claros, abaixo segue o select usado em ambos pra trazer a lista de pacientes...
       
      Select Distinct
        PC.PES_COD,
        PC.PES_NOME,
        PF.NASCIMENTO,
        PF.PFI_MAE,
        Concat(PC.PES_COD, ' - ', LTrim(RTrim(PC.PES_NOME)), ' - ', PF.NASCIMENTO, ' - ', LTrim(RTrim(PF.PFI_MAE))) As NOME
      From
        GER_PESSOA PC
        Inner Join
        GER_PESSOA_FISICA PF On (PC.PES_COD = PF.PES_COD)
      Order By
        PC.PES_NOME
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.