Bienvenido a datoweb.com!! En este foro podrás encontrar ayuda sobre diseño y desarrollo web en general. Si quieres formar parte de esta comunidad para pedir ayuda o colaborar ayudando a otros usuarios del foro solo tienes que registrarte desde el siguiente enlace: Registrarse en el Foro

Enviar parámetros con un select usando javascript

De esta manera podemos enviar parámetros desde un select usando un poco de javascript, a esto también se le llama menú de salto ya que al seleccionar una opción automáticamente salta a otra pagina pasando los valores a la pagina buscar.php:
<select name="miselector" id="miselector" onchange="enviar_valores(this.value);">
  <option value="">Seleccionar</option>
  <option value="coches">Coches</option>
  <option value="casas">Casas</option>
</select>

<script>

function enviar_valores(valor){
	//Pasa los parámetros a la pagina buscar
  location.href='buscar.php?valor=' + valor;
}

</script>
En la pagina buscar.php lo recogemos así:
<?php 

//Recojemos el parámetro
$valor=$_GET['valor'];

echo $valor;

?>
Saludos
0
Puntos
8915
Visitas
7
Resp
Por alber hace 102 meses
Administrador
Respuesta #1
excelente, pasar de una pagina a otra una variable sin necesidad de mucho codigo... pero como haria si quisiera pasar la variable a la misma pagina?
0
Puntos
Por kevincs7 hace 69 meses
Principiante
Respuesta #2
kevincs7 dijo: excelente, pasar de una pagina a otra una variable sin necesidad de mucho codigo... pero como haria si quisiera pasar la variable a la misma pagina?
intenta hacer así:
location.href='?valor=' + valor;
salu2
0
Puntos
Por alber hace 69 meses
Administrador
Respuesta #3
entonces en la misma pagina aumentaria este codigo?
<?php
$valor=$_GET['valor'];
echo $valor; ?>
0
Puntos
Por kevincs7 hace 69 meses
Principiante
Respuesta #4
kevincs7 dijo: entonces en la misma pagina aumentaria este codigo?
<?php
$valor=$_GET['valor'];
echo $valor; ?>
si en teoría

location.href hace referencia a la pagina en ejecución de ese momento y al no pasar un nombre de fichero los valores se envían dentro de esa misma url mediante GET (tuurl.com/?valor=mi_valor)

entonces para capturarlo es justo como dices, aunque no estaría de mas comprobar primero si ek valor GET ha sido enviado:
<?php 

if(isset($_GET['valor'])){
	$valor=$_GET['valor'];
	echo $valor;
}

 ?>
0
Puntos
Por alber hace 69 meses
Administrador
Respuesta #5
chevre, si ejecuto normalmente... una consulta mas, en mi codigo que estoy realizando estoy buscando pasar dos select a la vez, en mi codigo que realizo pasa solo uno a la vez, osea si selecciono uno se desmarca el otro, y quisiera saber si pueden actuar a la vez, muchas gracias...
<select name="estado" id="estado" onchange="enviar_valores(this.value);">
<option value="">Seleccionar</option>
<option value="Cerrado">Cerrado</option>
<option value="Asignado">Asignado</option>
<option value="En Curso">En Curso</option>
</select>

<select name="dias" id="dias" onchange="enviar_valores2(this.value);">
<option value="">Seleccionar</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>

<script>
function enviar_valores(valor){
location.href='?valor=' + valor;
}
</script>

<script>
function enviar_valores2(valor2){
location.href='?valor2=' + valor2;
}
</script>

<?php
if(isset($_GET['valor']))
{
$estado=$_GET['valor'];
echo $estado;
}
if(isset($_GET['valor2']))
{
$dia=$_GET['valor2'];
echo $dia;
? }
? >
0
Puntos
Por kevincs7 hace 69 meses
Principiante
Respuesta #6
kevincs7 dijo: chevre, si ejecuto normalmente... una consulta mas, en mi codigo que estoy realizando estoy buscando pasar dos select a la vez, en mi codigo que realizo pasa solo uno a la vez, osea si selecciono uno se desmarca el otro, y quisiera saber si pueden actuar a la vez, muchas gracias...
abre un tema nuevo con tu pregunta si no te importa

salu2
0
Puntos
Por alber hace 69 meses
Administrador
Respuesta #7
https://datoweb.com/post/3027/como-pasar-dos-variables-de-dos-select-a-un-php-en-una-misma-pagina
0
Puntos
Por kevincs7 hace 69 meses
Principiante
Compartir en facebook
Compartir en twitter
Compartir
Para comentar Inicia sesión o Registrate