Ir para conteúdo

POWERED BY:

Arquivado

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

filipeurtiga

Select Option + PHP + Ajax

Recommended Posts

Pessoal, estou com um problema.

Tenho o Select Option:

<form id="contactForm" method="post" action="" enctype="multipart/form-data">
                          Instituição: <select name="instituicao_id" title="Selecione a Instituição a ser usada" id ="instituicaoselect" ><?php 
							$listainstituicao = $modelo->listar_instituicao();
							 foreach( $listainstituicao as $consultainstituicao):  ?>
 							<option value="<?php echo $consultainstituicao['instituicao_id'] ?>"><?php echo $consultainstituicao['instituicao_nome'] ?></option>
							 <?php endforeach; ?>
							 
							</select>
							 </form>

O select option já está sendo completado pelo PHP, funcionando que uma beleza.

 

Mas eu preciso que ao selecionar uma opção, ele envie o value dessa opção para uma variável PHP e logo após isso ele atualize a página ou (melhor até) execute um função PHP.

 

abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

1 quando selecionar pegar o valor

2 envia o valor a outro arquivo

3 o outro arquivo pega essa variável, faz algo

4 retorna a pagina que contem o select

 

JS

select = document.getElementById('instituicaoselect');
select.onchange = function(){
  window.location = 'outro_arquivo.php?VARIAVEL='+this.value
}

No outro_arquivo.php

vc pega a variavel com $_GET['VARIAVEL']

faz o que tem que ser feito, chama sua função etc

retorna a pagina anterior com header('Location: anterior.php')

Compartilhar este post


Link para o post
Compartilhar em outros sites

É que vc tinha dito que ele atualize a página, nesse caso nem precisa do ajax

 

mas se nao quer o refresh, é só alterar as linhas que te passei

$( "select" ).change(function () {
  $.get( "outra_pg.php", {VARIAVEL: "VALOR" } );
})

importe jQuery na sua pagina

Compartilhar este post


Link para o post
Compartilhar em outros sites

Electronic, não está funcionando novamente, pois eu não quero redirecionar para outra pagina, pois a função está na página atual e eu chamo ela por GET + o value do select option: Meu Código:

<select name="instituicao_id" title="Selecione a Instituição a ser usada" id ="instituicao_id" class="form-poshytip">
						  <option>Selecione ...</option>
						  <?php 
							$listainstituicao = $modelo->listar_instituicao();
							 foreach( $listainstituicao as $consultainstituicao):  ?>
 							<option value="<?php echo $consultainstituicao['instituicao_id'] ?>"><?php echo $consultainstituicao['instituicao_nome'] ?></option>
							 <?php endforeach; ?>
							 
							</select>

Eu chamo a função listar_disciplina() por get exemplo: 127.0.0.1/site/listar_disciplina/32 onde o 32 é o meu $consultainstituicao['instituicao_id'] (value do select option.

 

Este é meu JQuery com Ajax

jQuery(document).ready(function($) {
	
// teste select ajax
$("select#instituicao_id").change(function () {
var dados = $(this).value;
 			type:"GET",
	   		url: "/listar_disciplina",
			data: dados,

		})
}

Era pra ele chamar a função, enviar o value do select option ao selecionar e listar as disciplinas logo abaixo em uma tabela sem recarregar a página. Obs.: a função está funcionando normalmente.

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.