Foros del Web » Programando para Internet » PHP »

setear variable de session or ajax, imposible

Estas en el tema de setear variable de session or ajax, imposible en el foro de PHP en Foros del Web. hola buenas, queria saber si se puede, setear una variable de session por ajax, en php supongamos ... tengos 2 archivos index.php y segundo.php el ...
  #1 (permalink)  
Antiguo 01/03/2017, 21:29
 
Fecha de Ingreso: junio-2010
Mensajes: 752
Antigüedad: 13 años, 11 meses
Puntos: 5
setear variable de session or ajax, imposible

hola buenas, queria saber si se puede, setear una variable de session por ajax, en php supongamos ...

tengos 2 archivos index.php y segundo.php

el archivo index.php carga primero (se puede ingresar al segundo.php directamente, pero en este caso se ingresa a index.php)

index.php. llama a una api, que se demora 10 segundo aproximadamente...
en obtener datos... si cargo esto por php, retrasa la carga de la pagina, 10 segundo...


por eso pienso hacerlo por ajax, asi trae esos datos por "debajo" mientras cargo el sitio, por ajax cargo esa variable con los datos de la api,. (no importa que se demore, el usuario no se data, cuenta, los datos seran necesarios en la pagina "segunda.php")


resulta que al hacerlo por ajax, no los guarda, en session., osea si. pero despues entro a segunda.php y quiero ver los datos y nada hice session_start. y nada.....

al final lo resolvi con cookies, pero no es muy practico no se...hasta pense en guardar los valores en una tabla ... esos valores que se demoran 10 segundos... de eso hablo. y los uso en "segunda.php"

que saben ustedes...
  #2 (permalink)  
Antiguo 02/03/2017, 12:19
 
Fecha de Ingreso: julio-2014
Mensajes: 334
Antigüedad: 9 años, 9 meses
Puntos: 30
Respuesta: setear variable de session or ajax, imposible

si trabajas con php, lo tienes que hacer por php, no hay de otra, ajax solo ejecutará index.php por debajo y cuando la api devuelva los datos se mostraran esos datos. Es decir, te seguirá tardando 10 segundos.

Lo que sí podrías hacer, es apartar del index ese código que hace la petición a la api, lo pones en otro archivo solo para eso y cuando se cargue index, le dices a ajax que ejecute esa petición y hasta que lleguen los resultados a la pantalla, pues el usuario puede ir haciendo otra cosa mientras vé un gif loading en el lugar donde irán los datos.

Otra forma de hacerlo es que el index muestre una página de precarga como se ven los juegos donde vas indicando los diferentes procesos para cargar la pagina y desaparezca cuando los datos ya se hayan devuelvo listos para ser imprimidos en pantalla.
  #3 (permalink)  
Antiguo 02/03/2017, 12:59
 
Fecha de Ingreso: junio-2010
Mensajes: 752
Antigüedad: 13 años, 11 meses
Puntos: 5
Respuesta: setear variable de session or ajax, imposible

a ver , el ajax se ejecuta, rapido, la llamada a la api tarda 10 ,15 segundos,

cuando obtengo los datos de la api. quiero guardarlo en algun lado, asi ya no vuelvo a llamar a la api. asi veo el archivo segundo.php con los datos guardados en una SESSION

pero como te decia cuando accedo PHP "virtual" desde ajax, llamo a la API, obtengo los datos, guardo esos valores en una $_SESSION, pero no se guardan...

-----------------

estando en PHP virtual alcance a guardar esos valores en una COOKIE de php, pero queria guardarlo en una SESSION
  #4 (permalink)  
Antiguo 02/03/2017, 22:40
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: setear variable de session or ajax, imposible

En teoría, esos datos deberían quedar almacenados en la variable de sesión que estés usando. He trabajado con interfaces de inicio de sesión mediante peticiones asíncronas (AJAX), para evitar recargar toda la ventana y navegar a través de las interfaces protegidas de forma directa (se activan luego del inicio de sesión exitoso), y no he tenido problemas. Mejor muéstranos el código que utilizas en la parte crítica de tu problema para ver en dónde se encuentra el inconveniente.

__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #5 (permalink)  
Antiguo 03/03/2017, 22:28
 
Fecha de Ingreso: julio-2014
Mensajes: 334
Antigüedad: 9 años, 9 meses
Puntos: 30
Respuesta: setear variable de session or ajax, imposible

Cita:
Iniciado por Alexis88 Ver Mensaje
En teoría, esos datos deberían quedar almacenados en la variable de sesión que estés usando. He trabajado con interfaces de inicio de sesión mediante peticiones asíncronas (AJAX), para evitar recargar toda la ventana y navegar a través de las interfaces protegidas de forma directa (se activan luego del inicio de sesión exitoso), y no he tenido problemas. Mejor muéstranos el código que utilizas en la parte crítica de tu problema para ver en dónde se encuentra el inconveniente.

Puedes compartir el código? no es por nada pero no serías el primero que me encuentro que pretende hacer algo sin inicializarlo primero...

El sistema es sencillo, inicializas, guardas los datos que necesitas en $_SESSION y hasta que no cierres la sesión no se deben de borrar...
  #6 (permalink)  
Antiguo 04/03/2017, 10:43
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: setear variable de session or ajax, imposible

Cita:
Iniciado por Triby2 Ver Mensaje
El sistema es sencillo, inicializas, guardas los datos que necesitas en $_SESSION y hasta que no cierres la sesión no se deben de borrar...
La idea es esa, estimado. Básicamente tienes una interfaz inicial con un área de identificación o login; se realiza el envío de los datos mediante una petición asíncrona; se crea la sesión en el lado del servidor (registrando en la sesión todos los datos se desee registrar) y tan solo se devuelve una respuesta. Como la sesión se encuentra activa, si el usuario navega por un área de la aplicación web con restricción de acceso (tiene que estar identificado), al haber una sesión iniciada previamente (mediante la petición asíncrona), el acceso será normal, caso contrario, se le rechaza. No es nada del otro mundo.

__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand

Etiquetas: ajax, imposible, session, usuario, variable
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 02:07.