FancyUpload + Sessions PHP

FancyUpload

FancyUpload

J’ai eu du mal à trouver sur le net comment utiliser les sessions avec FancyUpload. Alors je vais tenter d’expliquer, le plus simplement possible, comment garder une session PHP au moment de l’upload.

Sur le How-to Officiel on trouve cette explication :

Flash-request forgets cookies and session ID

See option appendCookieData. 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.

Tout d’abord pour envoyer l’ID de la session au script d’upload il faut utiliser La variable SESSID et lui donner la valeur de l’ID de session courant via la fonction PHP session_id() :

<form action="script.php?SESSID=<?php echo session_id(); ?>" method="post" enctype="multipart/form-data" id="u-form">

Ensuite il faut récupérer cette variable (SESSID) et la réaffecter à la session que va tenter d’ouvrir le flash du script FancyUpload. Pour ma part cela ne fonctionnait pas car je réattribuai après avoir lancer la fonction PHP session_start() et en fait il est trop tard à ce moment là et la session est déjà créée…

Donc voici comment il faut procéder : d’abord réattribuer la variable envoyée en GET et ensuite lancer la session

<?php
session_id($_GET&#91;'SESSID'&#93;);
session_start();
?>

Sinon il y a aussi...