Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour à tous,
J'utilise le gestionnaire d'upload créé avec MooTools : FancyUpload.
J'ai donc ma vue contenant le plugin, puis j'indique à celui-ci le chemin vers l'action qui effectuera l'upload. Mais pour je ne sais quelle raison, je perds la session courante.
Si quelqu'un a une idée de où çà pourrait venir, son aide sera la bienvenue !
Merci d'avance,
Stranger
Hors ligne
Salut,
je ne connais pas du tout FancyUpload, mais juste en jetant un œil au lien, j'ai vu ça :
Flash-request forgets cookies and session ID
Flash FileReference is not an intelligent upload class, the request will not have the browser cookies, Flash saves his own cookies. When you have sessions, append them as get-data to the the URL (e.g. “upload.php?SESSID=123456789abcdef”). Of course your session-name can be different.
Est-ce que le problème ne viendrait pas de là ?
Dernière modification par NewSky (14-11-2008 16:02:42)
Hors ligne
Merci de ta rapidité
Je fais étudier çà, je te tiens au courant !
Hors ligne
Ben si le cookie n'est pas transmis dans la requête, la session ne va pas perdurer, il faut transmettre l'id dans l'URL, ce qui niveau sécurité, n'est pas conseillé ( encore que pour Ajax, c'est moins important )
Hors ligne
il te faut voir la doc de ton outil ajax
cela varie d'une lib à l'autre
mais de toute façon tous reposent sur XMLHttpRequest
je te conseille de lire msdn à son propos (c'est microsoft qui a introduit cet objet) tu peux spécifier les header que tu envois au serveur en autre le phpsessionid
beaucoup de lib le transmettent automatiquement mais d'autre choisissent l'option par défaut de n'envoyer aucun entête
A+JYT
Hors ligne
Chaud chaud tout çà =x
J'ai regardé dans le code source du plugin, mais je n'arrive pas à déterminer à quel endroit il communique avec le flash. Donc j'ai opté pour la solution de l'iD dans l'URL... Mais je ne trouve pas la fonction me permettant de récupérer la session grâce à l'iD.
if(!Zend_Session::sessionExists()) session_start((int)$this->_request->getParam('idsession'));
J'ai essayé avec ce bout de code dans mon action, mais toujours pas...
Merci encore de votre aide
Edit: Je tente aussi avec session_id((int)$this->_request->getParam('idsession')); mais sans grand résultat...
Dernière modification par Stranger (20-11-2008 13:03:06)
Hors ligne
Bon les gens j'ai fait autrement..
Vu que je me servais de la session pour récupérer des données sur l'user, j'ai passé un id dans l'URL, et zou je récupère ce qui m'intéresse.
Voilà voilà, encore merci pour votre aide
Hors ligne
C'est tout de même bizarre..
J'ai des requètes AJAX, et je n'ai pas de problème de sessions comme toi..
Hors ligne
Bonjour,
est-ce que tu régénère tes id de session ?
si oui, il faut impérativement que tu bloque tes requêtes ajax de façon qu'une nouvelle requête ne soit pas lancée avant le retour de la précédente.Ceci afin que la valeur du cookie de session soit mis a jour.
Sinon ton id de session va changer et l'une de tes requete va appeler ton serveur avec un id de session "ancien".
Dernière modification par ichevc02 (24-11-2008 15:48:33)
Hors ligne
Ce qui est bizarre dans ton code c'est le :
session_id((int)$this->_request->getParam('idsession'));
tu castes avec le (int) une chaine de caractere en la passant en entier, le probleme de session ne venait pas de la ?
Hors ligne
Pages: 1