Précédent   Forum des professionnels en informatique > PHP > Langage > Sessions
Sessions Forum d'entraide sur les sessions avec PHP. Avant de poster -> FAQ sessions, Cours sessions et Sources sécurité
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/04/2006, 08h36   #1
Nouveau Membre du Club
 
Inscription : février 2004
Messages : 195
Détails du profil
Informations forums :
Inscription : février 2004
Messages : 195
Points : 27
Points : 27
Par défaut comment gérer les accès concurents ?

Bonjour,
J'ai écrit deux pages en php :
- la première contient un formulaire et un bouton "submit"
- la seconde, en fonction des champs d'un formulaire, crée une image et l'affiche.

Chaque fois qu'un utilisateur appuie sur le bouton "submit", un fichier est donc créé sur mon serveur, et est ensuite affiché sur le web browser du visiteur.

Comment faire pour éviter que 2 utilisateurs se connectent en même temps, et créent deux images sous le même nom de fichier ?
Si je donne un nom de fichier différent pour chaque création d'image, comment les effacer une fois qu'elles sont utilisées ? En effet si je mets une instruction d'effaçage de l'image à la fin de ma page en php, l'image est effacée et ne peut plus s'afficher...

Merci de vos idées
jejerome est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/04/2006, 08h46   #2
Membre éclairé
 
Avatar de johweb
 
Inscription : décembre 2003
Messages : 332
Détails du profil
Informations personnelles :
Localisation : France, Sarthe (Pays de la Loire)

Informations forums :
Inscription : décembre 2003
Messages : 332
Points : 316
Points : 316
Tu crée le nom de fichier avec un code aléatoire, et tu stockes ce nom en mémoire (session). Puis tu l'efface quand tu n'en a plus besoin.
johweb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/04/2006, 08h51   #3
Nouveau Membre du Club
 
Inscription : février 2004
Messages : 195
Détails du profil
Informations forums :
Inscription : février 2004
Messages : 195
Points : 27
Points : 27
OK,
Ce que je peux faire pour le nom du fichier image, c'est prendre la date de création du fichier (à la milliseconde près éventuellement) pour être sûr qu'il n'y aura pas deux fichiers identiques.

Mais comment effacer les fichiers ? Si l'utilisateur se déconnecte tout simplement en fermant internet explorer, comment effacer les fichiers qu'il aura créé sur le serveur ?
jejerome est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/04/2006, 09h09   #4
Membre éclairé
 
Avatar de johweb
 
Inscription : décembre 2003
Messages : 332
Détails du profil
Informations personnelles :
Localisation : France, Sarthe (Pays de la Loire)

Informations forums :
Inscription : décembre 2003
Messages : 332
Points : 316
Points : 316
Une fois ton image générée, après la fonction d'affichage, tu envoie la commande en précisant ton nom de fichier. Ou est le problème ?
johweb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/04/2006, 09h14   #5
Nouveau Membre du Club
 
Inscription : février 2004
Messages : 195
Détails du profil
Informations forums :
Inscription : février 2004
Messages : 195
Points : 27
Points : 27
En fait je faisais :
Code :
echo shell_exec("rm nom_du_fichier");
et du coup l'image ne s'affichait plus dans ma page php (puisqu'elle était effacée).

Je vais essayer avec unlink,
jejerome est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/04/2006, 10h38   #6
NoT
Membre confirmé
 
Inscription : février 2004
Messages : 237
Détails du profil
Informations forums :
Inscription : février 2004
Messages : 237
Points : 261
Points : 261
Utilise les fonctions Shell uniquement en cas d'extrême nécéssité..
NoT est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/04/2006, 23h19   #7
Nouveau Membre du Club
 
Inscription : février 2004
Messages : 195
Détails du profil
Informations forums :
Inscription : février 2004
Messages : 195
Points : 27
Points : 27
ca ne fonctionne pas,
Lorsque la page se charge la fonction unlink est executée, et l'image est supprimée. Du coup elle ne peut pas s'afficher correctement,

Que faire ?
jejerome est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/04/2006, 23h44   #8
Membre Expert
 
Inscription : janvier 2005
Messages : 1 249
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : janvier 2005
Messages : 1 249
Points : 1 417
Points : 1 417
Es-tu obligé de créer un fichier pour afficher l'image ? Pourquoi ne pas la générer à la volée et l'envoyer au navigateur avec les bons headers ? Dans ce cas, l'image est "virtuelle", pas besoin de l'effacer puisque ce n'est pas un fichier.
vg33 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h26.


 
 
 
 
Partenaires

Hébergement Web