Maison > Questions et réponses > le corps du texte
P粉6383439952023-08-09 11:37:21
Vous rencontrez un problème de session basé sur le système de fichiers. Le script de téléchargement verrouille le fichier principal de session pendant l'exécution, de sorte que les informations de session ne sont pas accessibles tant que le verrou n'est pas libéré.
Le plus simple est de faire en sorte que votre script de téléchargement libère périodiquement et reverrouille la session en même temps, cela donne à votre script de progression une chance de lire la session ;
Pour libérer le verrouillage de session, appelez session_write_close n'importe où dans le script de téléchargement. Cela vous empêchera d'accéder aux variables de session jusqu'à ce que session_start soit rappelé ultérieurement. Vous pouvez répéter ce cycle.
Il existe d'autres solutions plus puissantes. Par exemple, vous pouvez déplacer les informations de progression vers un mécanisme de stockage qui ne détient pas de verrou pendant l'exécution du script ; vous pouvez identifier les informations de chaque utilisateur en fonction de l'ID de session (si une session existe, vous n'avez pas besoin de la démarrer pour obtenir son identifiant)