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

  1. #1
    Membre du Club
    Inscrit en
    Février 2004
    Messages
    197
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 197
    Points : 58
    Points
    58
    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 averti Avatar de johweb
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    342
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2003
    Messages : 342
    Points : 367
    Points
    367
    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 du Club
    Inscrit en
    Février 2004
    Messages
    197
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 197
    Points : 58
    Points
    58
    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 averti Avatar de johweb
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    342
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2003
    Messages : 342
    Points : 367
    Points
    367
    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 du Club
    Inscrit en
    Février 2004
    Messages
    197
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 197
    Points : 58
    Points
    58
    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 actif
    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
    Points : 280
    Points
    280
    Par défaut
    Utilise les fonctions Shell uniquement en cas d'extrême nécéssité..

  7. #7
    Membre du Club
    Inscrit en
    Février 2004
    Messages
    197
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 197
    Points : 58
    Points
    58
    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 expérimenté

    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
    Points : 1 639
    Points
    1 639
    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