IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

comment gérer les accès concurents ?


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Février 2004
    Messages
    197
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 197
    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

  2. #2
    Membre chevronné Avatar de johweb
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2003
    Messages
    342
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2003
    Messages : 342
    Par défaut
    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.

  3. #3
    Membre confirmé
    Inscrit en
    Février 2004
    Messages
    197
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 197
    Par défaut
    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 ?

  4. #4
    Membre chevronné Avatar de johweb
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2003
    Messages
    342
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2003
    Messages : 342
    Par défaut
    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 ?

  5. #5
    Membre confirmé
    Inscrit en
    Février 2004
    Messages
    197
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 197
    Par défaut
    En fait je faisais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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,

  6. #6
    NoT
    NoT est déconnecté
    Membre expérimenté
    Profil pro
    Inscrit en
    Février 2004
    Messages
    237
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 237
    Par défaut
    Utilise les fonctions Shell uniquement en cas d'extrême nécéssité..

  7. #7
    Membre confirmé
    Inscrit en
    Février 2004
    Messages
    197
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 197
    Par défaut
    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 ?

  8. #8
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Par défaut
    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.

Discussions similaires

  1. comment gérer les accès à mes pages selon des rôles ?
    Par spring.time dans le forum Développement Web en Java
    Réponses: 6
    Dernier message: 20/03/2014, 08h56
  2. [ZF 1.10] comment gérer les acces aux tables/rows?
    Par speed034 dans le forum Zend_Db
    Réponses: 0
    Dernier message: 17/06/2012, 03h31
  3. [C#/SQL] Comment gérer les exceptions d'une Procédure stockée ?
    Par thomas_strass dans le forum Accès aux données
    Réponses: 10
    Dernier message: 06/07/2005, 10h40
  4. Comment gérer les valeur Nulles dans une requête ?
    Par sondo dans le forum Bases de données
    Réponses: 3
    Dernier message: 16/03/2005, 11h02
  5. Comment gérer les espaces blancs?
    Par Lambo dans le forum XML/XSL et SOAP
    Réponses: 10
    Dernier message: 16/05/2003, 09h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo