Foros del Web » Programando para Internet » PHP »

problema en desplegable php

Estas en el tema de problema en desplegable php en el foro de PHP en Foros del Web. Hola, tengo una pequeña duda que no consigo resolver, a ver si me podeis ayudar. La pagina en la que estoy trabajando es la siguiente: ...
  #1 (permalink)  
Antiguo 28/07/2003, 12:04
 
Fecha de Ingreso: julio-2003
Ubicación: Benilloba/Valencia
Mensajes: 69
Antigüedad: 20 años, 9 meses
Puntos: 0
problema en desplegable php

Hola, tengo una pequeña duda que no consigo resolver, a ver si me podeis ayudar.

La pagina en la que estoy trabajando es la siguiente:

http://www.e-mkf.com/proves/mision.php

Lo que quiero es que dependiendo del año que escoga en el desplegable de arriba me salga un texto u otro en los cuadros de abajo. Esta todo en una base de datos y con las llamas en mysql hechas. Lo unico que me falta es escoger el año en la llamada para que me salga lo correspondiente.

Aqui pongo el codigo en php para que veais lo que tengo. En otro archivo es donde conecto a la base, esto funciona bien y todo.

Aqui es donde pillo la lista de años de la base de datos:
<?
$result=mysql_query("Select anyo From vision",$link);

echo '<select name="anyo">';

while ($row=mysql_fetch_array($result))
{echo '<option>'.$row["anyo"];}
?>

Y aqui es donde hago la consulta:
<?
$con_histo="Select historia From mision Where anyo = $any";
$res_histo=mysql_query($con_histo,$link);
echo mysql_result($res_histo,0,"historia");
?>

Lo unico que me falta es guardar lo correspondiente en la variable $any para que esta muestre el año seleccionado arriba. Y esto es lo que no se como se hace.

Gracias de antemano!!
  #2 (permalink)  
Antiguo 28/07/2003, 13:05
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

Si el select se llama anyo, se recogera en la variable $anyo (o $_GET['anyo'] o $_POST['anyo']).

Leccion de HTML: los option son asi:

<option value="valor">texto a mostrar</option>

donde 'valor' es el valor que se pasa.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 28/07/2003, 16:21
 
Fecha de Ingreso: julio-2003
Ubicación: Benilloba/Valencia
Mensajes: 69
Antigüedad: 20 años, 9 meses
Puntos: 0
Hola de nuevo. Esto sigue sin ir. Perdonarme, pero no se demasiado de html y ahora mismo necesito acabar esta web y no tengo tiempo de aprender demasiado, pero prometo aprender.

Bueno a lo que voy, que pongo esto:
$con_histo="Select historia From mision Where anyo = $anyo";
en lugar de esto:
$con_histo="Select historia From mision Where anyo = $any";
y sigue totalmente igual.

Como lo puedo arreglar?

Muchas gracias.
  #4 (permalink)  
Antiguo 28/07/2003, 16:39
 
Fecha de Ingreso: junio-2003
Mensajes: 744
Antigüedad: 20 años, 9 meses
Puntos: 0
A ver si he entendido bien...

Quieres tener un desplegable con la edad para luego pasarlo a la base de datos?

Te pongo como harías el desplegable, vale? a ver si te sirve de algo...

<select name="variable">
<option>18-28</option>
<option>28-38</option>
<option>38-48</option>
<option>48-58</option>
<option>58-68</option>
<option>68-78</option>
</select>

Puedes poner tantos options como valores que tenga el desplegable, y puedes poner en las opciones los valores o nombres que quieras. Para despues pasarlo a la base de datos sería de la siguiente manera...

$sql="INSERT INTO $nomtabla VALUES ('$variable')";
Luego lo mandas a la base de datos.

Y para sacarlo de nuevo... pues:

Select historia From mision Where anyo = $variable

Es lo que querías? Dime algo, según lo que veas!

Hasta pronto, saludos desde Eivissa!!!
  #5 (permalink)  
Antiguo 29/07/2003, 10:16
 
Fecha de Ingreso: julio-2003
Ubicación: Benilloba/Valencia
Mensajes: 69
Antigüedad: 20 años, 9 meses
Puntos: 0
Hola, he estado haciendo esto que me has puesto y me hace el desplegable y todo, pero no me pilla la variable.

A ver, yo lo que tengo arriba con un while es para que me cree la lista del desplegable (todo lo del select) y no hacerlo manualmente como tu me has dicho, aunque tambien es una buena opción. Ahora lo que quiero es que se guarde en una variable el valor que yo tenga escogido en un momento dado para asi hacer el SELECT del mysql.

Se supone que con lo ultimo:
Select historia From mision Where anyo = $variable
En la $variable esta guardado el valor que tengo arriba en el select seleccionado, pero no es asi.

Lo que yo tengo ahora es esto (haciendo como me has dicho):
<select name="selanyo">
<option>2003</option>
<option>2004</option>
</select>


y despues, donde lo tiene que mostrar (donde va la consulta), tengo esto:
<?
$con_histo="Select historia From mision Where anyo = $selanyo";
$res_histo=mysql_query($con_histo,$link);
echo mysql_result($res_histo,0,"historia");
?>

Pues es lo mismo que me has puesto antes y no funciona. Donde veis el error??

Puede ser por que tenga que definir variables de sesion o algo asi? De momento no tengo ninguna sesion ni nada.

Que alguien me diga algo porfavor que ya me vuelvo loco!!

Muchas gracias!!
  #6 (permalink)  
Antiguo 29/07/2003, 11:05
Avatar de DINASEN  
Fecha de Ingreso: marzo-2003
Mensajes: 997
Antigüedad: 21 años, 1 mes
Puntos: 1
es que lo que quieres es que si cambia el select de posicion y sobre lo escogido tandrias que enviar a este mismo php pero con distintos parametros segun el get o mandalo a php recuerda que php se ejecuta en servidor asiq eu los cambios que haga el cliente no podras tabjar sobre ellos

es decir que no esperes que al cambiar el select te muestre una cosa o otra pro que es lo tendrias que hacer con java scripts...


Un Saludo
  #7 (permalink)  
Antiguo 29/07/2003, 11:11
 
Fecha de Ingreso: julio-2003
Ubicación: Benilloba/Valencia
Mensajes: 69
Antigüedad: 20 años, 9 meses
Puntos: 0
Ok, ya lo entiendo. Y no se podria hacer en php de ninguna manera?? Es que no tengo ni idea de java scripts.

Lo podria hacer poniendo al lado un boton donde le mandara al servidor algun tipo de informacion para que este me devolviera las consultas referentes a ese anyo?? Como se podria hacer esto??

Gracias!!
  #8 (permalink)  
Antiguo 29/07/2003, 11:55
Avatar de DINASEN  
Fecha de Ingreso: marzo-2003
Mensajes: 997
Antigüedad: 21 años, 1 mes
Puntos: 1
puedes hacer esto

pones un form con select y un boton y este seria el codigo mas o menos del php

Código PHP:

if (!isset($_GET['tipo'])){//sin o tra valro el tipo
//mostramos el form
<form method="post" action="estamismapagina.?tipo=seleccion">
aqui va tu while de tu select
<input type="submit" name="Submit" value="Enviar" class="boton" >
</
form>
}

if (
$_GET['tipo']=="seleccion"){//si tiene seleccion
$value=$_POST['nombredetuselect'];//recogemos la variable
//aqui vemdira tu select a la base de datos con el dato de la variable value
//volvemos a mostrar el form pro si quiere cmabiar otra vez
<form method="post" action="estamismapagina.?tipo=seleccion">
aqui va tu while de tu select
<input type="submit" name="Submit" value="Enviar" class="boton" >
</
form>
//mostramos resultados de consulta


Un Saludo
  #9 (permalink)  
Antiguo 29/07/2003, 13:34
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

A ver, el problema es lo que comente de HTML:

<select name="selanyo">
<option value="2003">2003</option>
<option value="2004">2004</option>
</select>

El valor que se pasa es el value del option seleccionado. Es HTML basico.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:36.