Foros del Web » Programando para Internet » PHP »

Recargar página con <select>

Estas en el tema de Recargar página con <select> en el foro de PHP en Foros del Web. Hola a todos. Lo primero agradecer tanto a esta web, como a los usuarios del foro, el enorme aporte que hacen dia a dia. Verán, ...
  #1 (permalink)  
Antiguo 22/12/2008, 16:17
 
Fecha de Ingreso: noviembre-2007
Mensajes: 32
Antigüedad: 17 años
Puntos: 0
Recargar página con <select>

Hola a todos. Lo primero agradecer tanto a esta web, como a los usuarios del foro, el enorme aporte que hacen dia a dia.

Verán, tengo una pequeña duda. Quisiera saber como hacer para que al seleccionar un valor en un campo <select>, se visualice cierto contenido dentro de la misma página. Me expando un poco más.

Tengo un módulo, el cual me muestra el top10 de música segun la semana del año (de 1 a 52). Bien, pues tengo un módulo que me muestra un desplegable (select), con estos 52 valores, y justo debajo tengo una lista con el top10.

Quisiera saber como hacer para que cuando seleccione un determinado valor del select, abajo se muestre el contenido correspondiente a ese top.

Os pongo el código de los 2 ficheros que utilizo.

Fichero index.php:

Código PHP:
<?php 
header
('Content-Type: text/html; charset=ISO-8859-1');
include(
"header.php"); 
$index 1;
//Abrimos la tabla principal
OpenTable(); 
echo 
"<table width='100%' border='0'>";
////////// Cabecera de la pagina //////////////////
echo "<tr>";
echo 
"<td align='center'>";
echo 
"<font color='#000000'><big><b>TOP 10 DANCE</b></big></font>";
echo 
"<br>";
echo 
"<form name='vertop' method='post' action='modules/top10d/vertop.php'>";
echo 
"Semana : ";
echo 
"<select name='semana' size='1'>";
$i=1;
while(
$i<=52){
echo 
"<option value='$i'>$i</option>";
 
$i++;
 }
echo 
"</select>";
echo 
"<input type='submit' value='Ver'>";
echo 
"</form>";
echo 
"</td>";
echo 
"</tr>";
echo 
"</table>";
///////////////////////////////////////////////////
////////// Cabecera de la lista //////////////////
echo "<table width='100%' border'0'>";
echo 
"<tr>";
echo 
"<td align='center' width='10%'>";
echo 
"<font color='#000000'><b>Puesto</b></font>";
echo 
"</td>";
echo 
"<td align='center' width='20%'>";
echo 
"<font color='#000000'><b>Portada</b></font>";
echo 
"</td>";
echo 
"<td align='center' width='50%'>";
echo 
"<font color='#000000'><b>Nombre</b></font>";
echo 
"</td>";
echo 
"<td align='center' width='10%'>";
echo 
"<font color='#000000'><b>Link</b></font>";
echo 
"</td>";
echo 
"<td align='center' width='10%'>";
echo 
"<font color='#000000'><b>Descargas</b></font>";
echo 
"</td>";
echo 
"</tr>";
echo 
"</table>";
///////////////////////////////////////////////////
include("vertop.php");
CloseTable(); 
include(
"footer.php"); 
?>
Fichero vertop.php:

Código PHP:
<?php 
header
('Content-Type: text/html; charset=ISO-8859-1');
//Variables
$direccion  "localhost";
$usuario    "root";
$contrasena "xxxxxx";
$basedd     "xxxxxx";
$semana     $_POST['semana'];
$conexion mysql_connect("$direccion""$usuario""$contrasena") or die ("Imposible conectar a la base de datos");
mysql_select_db ("$basedd"$conexion);
echo 
"<b><big>$semana</big></b>";
echo 
"<br><br><br>";
//Recuperamos la información de la base de datos
$consulta mysql_query("SELECT * FROM top10d WHERE semana='$semana'"$conexion) or die (mysql_error());
while (
$row  mysql_fetch_array ($consulta)) {
$puesto "$row[puesto]";
$portada "$row[imagen]";
$nombre "$row[nombre]";
$link "$row[link]";
$hits "$row[descargas]";
//Filas con los datos
echo "<table width='100%' border='0'>";
echo 
"<tr>";
echo 
"<td align='center' width='10%'>";
echo 
"<font color='#000000'><big><b>$puesto</b></big></font>";
echo 
"</td>";
echo 
"<td align='center' width='20%'>";
echo 
"<font color='#000000'><img border='0' src='$portada'></font>";
echo 
"</td>";
echo 
"<td align='center' width='50%'>";
echo 
"<font color='#000000'><big><b>$nombre</b></big></font>";
echo 
"</td>";
echo 
"<td align='center' width='10%'>";
echo 
"<font color='#000000'><b><a href='$link'><img border='0' src='modules/top10h/imagenes/download.gif'></b></font>";
echo 
"</td>";
echo 
"<td align='center' width='10%'>";
echo 
"<font color='#000000'><big><b>$hits</b></big></font>";
echo 
"</td>";
echo 
"</tr>";
echo 
"</table>";
}
?>
Pueden verlo funcionando aquí: http://www.plusfm.es/modules.php?name=top10d por si les sirve para poder ayudarme.

Saludos y muchas gracias de antemano.
  #2 (permalink)  
Antiguo 22/12/2008, 16:19
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 22 años
Puntos: 17
Respuesta: Recargar página con <select>

Eso está en las FAQs....

Se puede hacer recargando la página, sin recargarla, con AJAX... hay bastantes opciones.
  #3 (permalink)  
Antiguo 22/12/2008, 16:21
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 16 años, 4 meses
Puntos: 416
Respuesta: Recargar página con <select>

http://www.forosdelweb.com/f18/faqs-...tml#post664999
  #4 (permalink)  
Antiguo 22/12/2008, 16:22
 
Fecha de Ingreso: noviembre-2007
Mensajes: 32
Antigüedad: 17 años
Puntos: 0
Respuesta: Recargar página con <select>

Más rápido imposible. Muchas gracias a los dos por vuestra rapidez.

Salu2.
  #5 (permalink)  
Antiguo 22/12/2008, 16:28
 
Fecha de Ingreso: noviembre-2007
Mensajes: 32
Antigüedad: 17 años
Puntos: 0
Respuesta: Recargar página con <select>

Perdonad por mi ignorancia, pero he estado mirando en las faqs, y no he encontrado nada que solucione mi duda...

Gracias.
  #6 (permalink)  
Antiguo 22/12/2008, 16:30
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 16 años, 4 meses
Puntos: 416
Respuesta: Recargar página con <select>

Cita:
Iniciado por djfrancis Ver Mensaje
Perdonad por mi ignorancia, pero he estado mirando en las faqs, y no he encontrado nada que solucione mi duda...

Gracias.
  #7 (permalink)  
Antiguo 22/12/2008, 16:31
 
Fecha de Ingreso: noviembre-2007
Mensajes: 32
Antigüedad: 17 años
Puntos: 0
Respuesta: Recargar página con <select>

Ese es el enlace que he estado mirando y alguna página más, pero ya te digo tio, o no veo la solución, o estoy ciego , jejeje.

Gracias de nuevo.
  #8 (permalink)  
Antiguo 22/12/2008, 16:39
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 16 años, 4 meses
Puntos: 416
Respuesta: Recargar página con <select>

Cita:
Quisiera saber como hacer para que cuando seleccione un determinado valor del select, abajo se muestre el contenido correspondiente a ese top.
Si quieres que esto ocurra sin recarga, tienes que usar AJAX.
  #9 (permalink)  
Antiguo 22/12/2008, 16:42
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 22 años
Puntos: 17
Respuesta: Recargar página con <select>

Si no son muchos datos y no se quiere utilizar AJAX, se puede hacer sólo con JS. Pero sólo si no son muchos datos los que hay que cargar.
  #10 (permalink)  
Antiguo 22/12/2008, 16:44
 
Fecha de Ingreso: noviembre-2007
Mensajes: 32
Antigüedad: 17 años
Puntos: 0
Respuesta: Recargar página con <select>

El único dato que tiene que cargar es el fichero vertop.php, que es el que se conecta a la base de datos y lee los valores en función de lo que seleccione en el <select>.

Salu2.
  #11 (permalink)  
Antiguo 22/12/2008, 16:45
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 16 años, 4 meses
Puntos: 416
Respuesta: Recargar página con <select>

Pasate por el foro de AJAX, o leete un pequeñito manual, es muy facil.

PD: Tu web se ve diferente en todos los navegadores y en Google Chrome, se deforma.
  #12 (permalink)  
Antiguo 22/12/2008, 16:58
 
Fecha de Ingreso: noviembre-2007
Mensajes: 32
Antigüedad: 17 años
Puntos: 0
Respuesta: Recargar página con <select>

De verdad, no tengo ni idea de AJAX. Si no es mucha molestia, aunque no den la respuesta correcta al problema, por lo menos oriéntenme un poco.

Gracias.
  #13 (permalink)  
Antiguo 22/12/2008, 17:01
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 16 años, 4 meses
Puntos: 416
Respuesta: Recargar página con <select>

Con el evento onChange de Javascript llamas a una funcion que cree el objeto HTTPRequest, llame a la pagina del top y reemplaze el contenido de una capa con lo cargado de la pagina recien llamada.

http://www.forosdelweb.com/f77/
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 21:38.