Foros del Web » Programando para Internet » PHP »

Pasar variables en un vínculo

Estas en el tema de Pasar variables en un vínculo en el foro de PHP en Foros del Web. Os explico la situación: tengo una página web realizada en su mayor parte en PHP El asunto es que en ella hay un calendario algo ...
  #1 (permalink)  
Antiguo 01/06/2011, 04:58
Avatar de solhdeck  
Fecha de Ingreso: junio-2011
Mensajes: 87
Antigüedad: 12 años, 10 meses
Puntos: 32
Pregunta Pasar variables en un vínculo

Os explico la situación: tengo una página web realizada en su mayor parte en PHP

El asunto es que en ella hay un calendario algo complejo, que recibe las variables de mes y año mediante un GET.
El asunto es que si sólo fuera el calendario, eso funcionaría bien, pero como la página es más compleja, cuando cambio otra cosa el calendario vuelve a la fecha por defecto.

Por lo tanto, se me ocurrió crear variables de sesión que guardasen el mes y el año... pero no sé cómo hacer que cuando el usuario haga click en "mes siguiente" cambie la variable y recargue la página.

Se me había ocurrido crear una página intermedia, que recibiera diferentes variables por GET, "actualizase" las variables de sesión y redirigiera otra vez a la página de la que viene... pero me parece demasiada carga para el servidor.

¿Alguna solución?

Gracias por adelantado
  #2 (permalink)  
Antiguo 01/06/2011, 05:04
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: Pasar variables en un vínculo

usa AJAX
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(
  #3 (permalink)  
Antiguo 01/06/2011, 05:06
Avatar de solhdeck  
Fecha de Ingreso: junio-2011
Mensajes: 87
Antigüedad: 12 años, 10 meses
Puntos: 32
Respuesta: Pasar variables en un vínculo

o.o
¿AJAX? ¿No se puede sin AJAX?

...
¿Cómo se usa AJAX?... ¿Qué es?

EDIT:

Ahora que me informé de qué es AJAX, aclaro que no es realmente lo que busco. Busco no complicarme tanto.

Esperaba algo así como un método para cambiar la variable y que luego el enlace fuera a la misma página en la que está el usuario.

Última edición por solhdeck; 01/06/2011 a las 05:23 Razón: Me informé de qué era AJAX
  #4 (permalink)  
Antiguo 01/06/2011, 05:27
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: Pasar variables en un vínculo

También puedes hacerlo tipo formulario, pero queda un poco "guarrete" que cuando cambies el mes o el año del calendario se recargue toda la página.
Imagina que tu calendario está en la parte inferior, el usuario esta en X parte de la web, cambia el mes y recarga toda la página y le salta a al principio.
Ese bote es feo xD.

En vez de usar variables de session carga el script del calendario en la página con AJAX de forma asíncrona y no con un include y listo.

Pregunta aquí http://www.forosdelweb.com/f77/ como cargar dentro de una página otra con AJAX
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(
  #5 (permalink)  
Antiguo 01/06/2011, 05:59
Avatar de solhdeck  
Fecha de Ingreso: junio-2011
Mensajes: 87
Antigüedad: 12 años, 10 meses
Puntos: 32
Respuesta: Pasar variables en un vínculo

La idea de AJAX no me convence, como dije antes.

La página web es para una función concreta y se ejecutará siempre en 1280*1024, por lo que las dimensiones están estudiadas para que no haya que usar scroll ni vertical ni horizontal.

Sin embargo, no me convence lo del form, por el simple hecho de que consumiría más recursos todavía que el poner una página web intermedia encargada simplemente de tomar variables y redirigir.

Además, el calendario no es el único que tiene distintas variables. La web trabaja con
un código de curso, un código de asignatura, un nombre de página, un número de página, el mes y el año del calendario
son 6 en total y varían según el usuario haga click en según qué enlaces.

Por supuesto, todos tienen unos valores por defecto, así que lo que haré será una web que redirija a la dirección de la que se llega tras haber cambiado variables locales que correspondan a las variables que reciba por get.

¿Alguien podría indicarme cómo hacer que redirija a la web de la que viene?
  #6 (permalink)  
Antiguo 01/06/2011, 06:14
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: Pasar variables en un vínculo

Cita:
Iniciado por solhdeck Ver Mensaje
Os explico la situación: tengo una página web realizada en su mayor parte en PHP

Por lo tanto, se me ocurrió crear variables de sesión que guardasen el mes y el año... pero no sé cómo hacer que cuando el usuario haga click en "mes siguiente" cambie la variable y recargue la página.
No se puede dar a un botón y que se actualize la variable de session con php.
JS--> cliente.
PHP--> del servidor.

Salvo que enviases los datos por POST o GET (form o enlace) o uses AJAX.

Cita:
Iniciado por solhdeck Ver Mensaje
La idea de AJAX no me convence, como dije antes.
La página web es para una función concreta y se ejecutará siempre en 1280*1024, por lo que las dimensiones están estudiadas para que no haya que usar scroll ni vertical ni horizontal.
Ajax no te convence porque seguro no entiendes ni la idea que te dije.
Las dimensiones de tu web no tienen nada que ver. Sólo te dije que es horrible que al cambiar los valores de tu calendario esté recargue toda la página.
De ahí mi recomendación.
Además en pocas líneas pero haya tú.

Cita:
Iniciado por solhdeck Ver Mensaje
¿Cómo se usa AJAX?... ¿Qué es?

EDIT:
Ahora que me informé de qué es AJAX, aclaro que no es realmente lo que busco. Busco no complicarme tanto.
Que velocidad. Serguro que no entendiste ni papa y te asustaste.

Cita:
Iniciado por solhdeck Ver Mensaje
Sin embargo, no me convence lo del form, por el simple hecho de que consumiría más recursos todavía que el poner una página web intermedia encargada simplemente de tomar variables y redirigir.
Yo no te recomendé formulario. Al contrario, pero usar un form o enviar con get los datos una página y luego redireccionar es prácticamente lo mismo


Cita:
Iniciado por solhdeck Ver Mensaje
¿Alguien podría indicarme cómo hacer que redirija a la web de la que viene?
Si hombre claro que sí, yo sólo te di opciones pero cada cual programa a su manera y ya la opinión de la web será dada por los usuarios si la usan o no.

Quizás pueda servirte $_SERVER['HTTP_REFERER']
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(
  #7 (permalink)  
Antiguo 01/06/2011, 09:11
Avatar de solhdeck  
Fecha de Ingreso: junio-2011
Mensajes: 87
Antigüedad: 12 años, 10 meses
Puntos: 32
De acuerdo Respuesta: Pasar variables en un vínculo

Cita:
Iniciado por IEKK Ver Mensaje
No se puede dar a un botón y que se actualize la variable de session con php.
bien, gracias, era eso lo que quería saber.

Cita:
Iniciado por IEKK Ver Mensaje
JS--> cliente.
PHP--> del servidor.

Salvo que enviases los datos por POST o GET (form o enlace) o uses AJAX.
Eso más o menos ya lo tenía claro.

Cita:
Iniciado por IEKK Ver Mensaje
Ajax no te convence porque seguro no entiendes ni la idea que te dije.
Las dimensiones de tu web no tienen nada que ver. Sólo te dije que es horrible que al cambiar los valores de tu calendario esté recargue toda la página.
De ahí mi recomendación.
Además en pocas líneas pero haya tú.
con la frase "usa AJAX" es difícil entender la idea de lo que me dices o.o MUY difícil

Hice relación a las dimensiones de la web porque hiciste alusión a que te volviese a la parte superior de la web.
El hecho de recargar la web por completo constantemente es horrible, en eso estamos de acuerdo.

Cita:
Iniciado por IEKK Ver Mensaje
Que velocidad. Serguro que no entendiste ni papa y te asustaste.
Indudablemente, no he aprendido en 10min a utilizar AJAX, simplemente me informé un poco de qué se trataba y no me convence por el hecho de que se ejecuta, al menos en parte, en el cliente.

Cita:
Iniciado por IEKK Ver Mensaje
Yo no te recomendé formulario. Al contrario, pero usar un form o enviar con get los datos una página y luego redireccionar es prácticamente lo mismo
Ya sé que no me recomendaste el form, como tú lo mencionaste yo también lo mencioné, pero me quedó claro que no lo habías recomendado. Me expliqué mal, lo siento.

No es lo mismo desde el momento en el que complicaría muchísimo convertir cada enlace de la web en un submit del formulario y y tener que pensar cómo hacer para que si cambio de curso, o de mes, las demás variables permanezcan como estaban antes de hacer click en el enlace


Cita:
Iniciado por IEKK Ver Mensaje
Si hombre claro que sí, yo sólo te di opciones pero cada cual programa a su manera y ya la opinión de la web será dada por los usuarios si la usan o no.

Quizás pueda servirte $_SERVER['HTTP_REFERER']
Muchas gracias por contestarme
Al final añadí lo siguiente en un include al principio:
Código PHP:
    if ($_GET['pagina']){$_SESSION['misc']['pagina'] = $_GET['pagina'];}
    
    if (
$_GET['c']){$_SESSION['misc']['curso'] = $_GET['c'];}
    
    if (
$_GET['pag']){$_SESSION['misc']['n_pag'] = $_GET['pag'];}
    
    if (
$_GET['a']){$_SESSION['misc']['asig'] = $_GET['a'];}
    
    if (
$_GET['anio']){$_SESSION['misc']['anio'] = $_GET['anio'];}
    
    if (
$_GET['mes']){$_SESSION['misc']['mes'] = $_GET['mes'];}
    
    if (
$_GET['dia']){$_SESSION['misc']['dia'] = $_GET['dia'];} 
y los enlaces los dejo con modo get.

De esta forma, si se cambia de mes, queda reflejado en la variable de sesión y si luego se cambia de curso, la dirección sólo tiene el get del curso.

Etiquetas: sesiones, variables
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 18:24.